Introducción
Las Bases de Datos ,en adelante BBDD, NoSQL son bases de datos no relacionales u orientadas a documentos y que normalmente carecen de esquemas fijos de tablas.
Las BBDD NoSql se orientan a documentos, no en tablas con campos uniformes para cada fila o registro. Cada documento es almacenado de forma que tenga ciertas características, cualquier número o tipo de campos pueden ser añadidos a un documento, e incluso contener varios tipos de datos.
Su mayor ventaja es que el escalado horizontal es extremadamente sencillo, es decir, se pueden añadir nodos sin temor a que esto afecte significativamente al rendimiento puesto que el almacenamiento no esta sujeto a toda una estructuración de BBDD relacional. Normalmente el documento consta de dos campos:
- id_ que será el único identificador
- doc: documento donde se guarda toda la información.
Ejemplo práctico
Comparación BBDD NoSql – SQL
NoSql:
Clave | Documento |
---|---|
1 | Nombre: PlayStation; Compañia: Sony; Color: Negro; |
2 | Nombre: Wii; Compañia: Nintendo; Color: Blanco; HD: no; |
3 | Nombre: Xbox; Compañia: microsoft; |
Sql:
Clave | Nombre | Compañia | Color | HD |
---|---|---|---|---|
1 | PlayStation | Sony | Negra | |
2 | Wii | Nintendo | Blanco | No |
3 | Xbox |
Podemos ver que en la BBDD NoSql los campos vacíos no se añaden y que se pueden añadir campos concretos a documentos concretos, sin tener que aumentar el número de columnas. Por lo que al manejar la información en NoSql no estaremos escalando campos vacíos o NULL y podremos modificar una fila a nuestro antojo sin que esto tenga que afectar a toda la estructura de la tabla.
Aplicaciones NoSQL más populares:
- CouchDB
- MongoDB
- Cassandra
Observaciones
En el próximo post profundizaré en CouchDB y posteriormente en el apartado de Programación postearé un ejemplo de como acceder a couchDB con PHP. Cabe destacar que CouchDB se ha echo muy popular tanto por su potencia como por el hecho de haber sido apadrinado por Apache.
Fuentes:
- http://en.wikipedia.org/wiki/Document-oriented_database
- http://en.wikipedia.org/wiki/NoSQL
Ruben.
I have fun with, result in I found exactly what I was having a look for.
You’ve ended my 4 day lengthy hunt! God Bless you man. Have a nice day. Bye