Pin It

Security

Resumen: Las bases de datos NOSQL aparecieron como una necesidad para el manejo de información voluminosa y distribuida en los grandes sitios web pero serán soluciones para las grandes empresas y las medianas empresas? solucionan los problemas que las bases de datos Relacionales solucionan?. Que tipo de problemas solucionan? Este artículo presenta este modelo y sus actuales logros y resultados.



Las bases de datos (BD) tradicionales son las relacionales que usan un lenguaje Estándar para su manipulación y gestión , el SQL que nace en 1974 basado en Modelo de EF COD. SQL tiene más de 37 años de vida. Son ejemplos de bases de datos relacionales: ORACLE, MYSQL, SQL Server, POTGRESS, DB2, etc..Su éxito se basó en que son una solución para los problemas de gestión y estructuración de la información de las organizaciones, con un fundamento matemático muy fuerte, lenguaje estandarizado (aceptado y adoptado) para su gestión (SQL) , con metodologías estructuradas formales para el diseño de los sistemas de información de las organizaciones y con principios de diseño como la regla ACID (atómica consistente aislada y Durable) . estas plataformas tienen muchas herramientas desarrolladas.

Las bases de datos NOSQL son un conjunto de bases de datos que no se ajustan al modelo de bases de datos relacionales y sus características, estas no tienen esquemas , no usan SQL ni permiten joins, no garantizan la propiedad ACID, escalan horizontalmente, hacen uso amplio de la memoria principal del computador, resuelven el problema de los altos volúmenes de información y la inmensa cantidad de consultas y transacciones diarias, en resumen no son relacionales.

Pero ¿en qué consisten? ¿Por  qué surgieron? ¿cuál es la mejor solución para un problema determinado? ¿para qué tipo de problemas se debe considerar las alternativas NoSQL? ¿Se debería usar una Solución NoSQL para un problema que tradicionalmente se ha resuelto con bases de datos relacionales? ¿Qué se debe tener en cuenta? ¿Reemplazarán las bases de datos relacionales?

A continuación se muestra cómo instalar MongoDB, una de las bases de datos NoSQL más reconocidas sería la siguiente:

$ sudo pecl install mongo
$ sudo apt-get install pecl
$ sudo apt-get install php5-dev php5-cli php-pear
$ pecl install mongo
 
$ nano /etc/php5/apache2/php.ini
  - extension=mongo.so


Una aplicación en PHP sobre MongoDB, sería la siguiente:

//Conecta Mongo
$m = new MongoClient();

//Selecciona la DB [comedy]
$db = $m->comedy;

//Selecciona una Coleccion [cartoons]
$collection = $db->cartoons;

//Agrega un registro
$document = array( "title" => "Calvin and Hobbes", "author" => "Bill Watterson" );
$collection->insert( $document );

//Agrega otro registro con formato distinto
$document = array( "title" => "XKCD", "online" => true );
$collection->insert( $document );

//Busca todas las colecciones
$cursor = $collection->find( );

//Busca una coleccion especifica [XKCD]
$query = array( 'title' => 'XKCD' );
$cursor = $collection->find( $query );

//Escribe cada uno de los titulos encontrados
foreach ( $cursor as $document ) {
    echo $document["title"] . " - ";
}

?>


Este trabajo pretende dar algunas respuestas a estas inquietudes que genera la tecnología de bases de datos NOSQL que vienen en vertiginoso desarrollo , especialmente desde el 2009.

Contenido completo en fuente original el Blog de William Díaz Sepúlveda y en el Blog de Manuel Pereira Gonzalez

0 comentarios:

Publicar un comentario

 
Top