25
Principales bases de datos existentes

Principales bases de datos existentes

Embed Size (px)

Citation preview

Page 1: Principales bases de datos existentes

Principales bases de datos existentes

Page 2: Principales bases de datos existentes

¿Qué es una base de datos?• Se le llama base de datos a los bancos de información que contienen

datos relativos a diversas temáticas y categorizados de distinta manera, pero comparten entre sí algún tipo de vinculo o relación que busca ordenarlos y clasificarlos en conjunto.

• Una base de datos es un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso.

• Hoy en día existen programas denominados sistemas gestores de bases de datos, abreviado SGBD, que permite almacenar y posteriormente acceder a los datos a los datos de forma rápida y estructurada.

Page 3: Principales bases de datos existentes

¿Qué es una base de datos?• Este tipo de aplicaciones son mas comunes en la gestión de empresas e

instituciones públicas.• Son ampliamente utilizados en entornos científicos con el objeto de

almacenar la información experimental.

Page 4: Principales bases de datos existentes

¿Qué es una base de datos tipo SQL?• Las bases de datos de tipo SQL, es el modelo utilizado actualmente para

representar problemas reales y administrar datos dinámicamente.• Su fundamentos fueron postulados en 1970, por Edgar Frank Codd, en los

laboratorios de IBM en San José California.• Su idea fundamental es el uso de relaciones.• Estas relaciones podrían consolidarse en forma lógica como conjuntos de

datos llamados “Tuplas”.• Esto es pensando en cada relación como si fuese una tabla que está

compuesta por registros (las filas de una tabla), que representarían las tuplas, y campos (las columnas de una tabla).

Page 5: Principales bases de datos existentes

¿Qué es una base de datos tipo SQL?• La información puede ser recuperada o almacenada mediante "consultas"

que ofrecen una amplia flexibilidad y poder para administrar la información.

• El lenguaje más habitual para construir las consultas a bases de datos relacionales es SQL, Structured Query Language o Lenguaje Estructurado de Consultas, un estándar implementado por los principales motores o sistemas de gestión de bases de datos relacionales.

• Durante su diseño, una base de datos relacional pasa por un proceso al que se le conoce como normalización de una base de datos.

Page 6: Principales bases de datos existentes

¿Qué es una base de datos No-SQL?• NoSQL (a veces llamado "no sólo SQL") es una amplia clase de sistemas

de gestión de bases de datos que difieren del modelo clásico del sistema de gestión de bases de datos relacionales (RDBMS) en aspectos importantes, el más destacado esque no usan SQL como el principal lenguaje de consultas.

Page 7: Principales bases de datos existentes

Diferencia entre SQL y No-SQL

Page 8: Principales bases de datos existentes

Diferencia entre BDD-SQL y BDD-MongoDB

BDD SQL BDD MongoDBBase de datos Base de datosTabla ColecciónÍndice ÍndiceFila DocumentoColumna Campo JSON/BSONJoin Embedding /LinkingPrimary Key _idGropu By Agregations

Page 9: Principales bases de datos existentes

Bases de datos más populares

Page 10: Principales bases de datos existentes

SQL Server

• Es un sistema de manejo de base de datos del modelo relacional, desarrollado por la empresa Microsoft.

• El lenguaje de desarrollo utilizado es Transact-SQL (TSQL), una implementación del estándar ANSI del lenguaje SQL.

• Este lenguaje es utilizado para manipular y recuperar datos (DML), crear tablas y definir relaciones entre ellas (DDL).

Page 11: Principales bases de datos existentes

Características de SQL Server• Soporta transacciones• Soporta procedimientos almacenados• Incluye un entorno gráfico de administración, permitiendo el uso de

comandos DDL y DML.• Permite trabajar en modo Cliente- Servidor.• Permite administrar información de otros servidores.• Cuenta con una versión reducida, llamada MSDE con el mismo motor de

bases de datos pero orientado a proyectos más pequeños.• El tipo NUMERIC fue mejorado para ser usado como identificador de

columna a partir de la versión 2008 R2.

Page 12: Principales bases de datos existentes

Oracle Database• Es un sistema de gestión de base de datos de tipo objeto-relacional

desarrollado por Oracle Corporation.• Es considerado uno de los sistema de bases de datos más completos,

destacando: soporte de transacciones, estabilidad, escalabilidad y soporte multiplataforma.

• Las ultimas versiones han sido certificadas para poder trabajar bajo GNU/Linux.

• Oracle surge en 1977 bajo el nombre de SDL (Software Development Laboratories).

• En 1979, SDL cambia su nombre por Relational Software, Inc. (RSI).• Esta tecnología de Oracle se encuentra en todas las industrias del mundo.

Page 13: Principales bases de datos existentes

Oracle Database• Oracle es la primera compañía de software que desarrolla e implementa

software para empresas cien por ciento activado por internet a través de su línea de productos: bases de datos, aplicaciones comerciales y herramientas de desarrollo de aplicaciones y soporte de decisiones.

• Oracle es el proveedor mundial líder de software para administración de información, y la segunda empresa de software.

• Su dominio en el mercado de servidores empresariales había sido casi total hasta que recientemente tiene la competencia del Microsoft SQL Server y de la oferta de otros RDBMS con licencia libre como PostgreSQL, MySQL o Firebird.

Page 14: Principales bases de datos existentes

Mongo DB• MongoDB (de la palabra en inglés “humongous” que significa enorme) es un

sistema de base de datos NoSQL orientado a documentos, desarrollado bajo el concepto de código abierto.

• En lugar de guardar los datos en tablas como se hace en las base de datos relacionales, MongoDB guarda estructuras de datos en documentos similares a JSON con un esquema dinámico (MongoDB utiliza una especificación llamada BSON), haciendo que la integración de los datos en ciertas aplicaciones sea más fácil y rápida.

• El código binario está disponible para los sistemas operativos Windows, Linux, OS X y Solaris.

Page 15: Principales bases de datos existentes

Mongo DB• El desarrollo de MongoDB empezó en octubre de 2007 por la compañía

de software 10gen. Ahora MongoDB es una base de datos lista para su uso en producción y con muchas características (features). Esta base de datos se utiliza mucho en la industria , contando con implantaciones en empresas como MTV Network, Craiglist o Foursquare.

• En 2009 MongoDB fue lanzado como un producto independiente y publicado bajo la licencia de código abierto AGPL.

• En marzo de 2011, se lanzó la versión 1.4 y se consideró ya como una base de datos lista para su uso en producción

Page 16: Principales bases de datos existentes

Curso de MongoDB con PHP• Puedes visitar el siguiente canal para tomar cursos relacionados al área.

• Es de un gran profesor que se llama Jesús Conde..

• https://www.youtube.com/playlist?list=PLEtcGQaT56cgAsJUMz3xY9-W7a4nkCXqV

Page 17: Principales bases de datos existentes

Características de MongoDB• Consultas Ad hoc: MongoDB soporta la búsqueda por campos, consultas

de rangos y expresiones regulares. Las consultas pueden devolver un campo específico del documento pero también puede ser una función JavaScript definida por el usuario.

• Indexación: Cualquier campo en un documento de MongoDB puede ser indexado, al igual que es posible hacer índices secundarios. El concepto de índices en MongoDB es similar a los encontrados en base de datos relacionales.

• Replicación: Soporta el tipo de replicación primario-secundario.• Balanceo de carga: puede escalar de forma horizontal usando el

concepto de “shard”.

Page 18: Principales bases de datos existentes

Características de MongoDB• Almacenamiento de archivos: Puede ser utilizado como un 

sistema de archivos, tomando la ventaja de la capacidad que tiene MongoDB para el balanceo de carga y la replicación de datos utilizando múltiples servidores para el almacenamiento de archivos. Esta función se llama GridFS y es mas bien una implementación en los drivers, no en el servidor , por lo que está incluida en los drivers oficiales que la compañía de MongoDB desarrolla.

• Agregación: Proporciona un framework de agregación que permite realizar operaciones similares a las que se obtienen con el comando SQL "GROUP BY". El framework de agregación está construido como un pipeline en el que los datos van pasando a través de diferentes etapas en los cuales estos datos son modificados, agregados, filtrados y formateados hasta obtener el resultado deseado.

Page 19: Principales bases de datos existentes

Oracle NoSQL• Es una base de datos que proporciona un modelo de transacciones

poderoso, flexible que simplifica enormemente el proceso de desarrollo de una aplicación basada en No-SQL.

• Escala horizontalmente con mayor disponibilidad y balance de carga transparente aún cuando agrega nueva capacidad dinámicamente.

• Es una base de datos No-SQL tipo clave valor (del estilo de Redis o Voldemort).

• Esta construida sobre Oracle Berkeley DB Java Edition sobre la que añade una capa de servicios para usarse en entornos distribuidos.

Page 20: Principales bases de datos existentes

Características de Oracle No-SQL.

Puedes ingresar al siguiente enlace para ver un video con más información sobre tipo de base de datos No-SQL.https://www.youtube.com/watch?v=R92gzA3BnU8

Page 21: Principales bases de datos existentes

Características de Oracle No-SQL.• Arquitectura• Alta disponibilidad y No-Single Point of Failure.• Provee replicación de base de datos 1 Master-Multi-Replica.• Los datos transaccionales se duplican.• Balance de carga transparente.• Formato JSON.• Topologías configurables.• Administración sencilla y monitorización.• Integración con Hadoop.• API´s

Page 22: Principales bases de datos existentes

Cassandra• Es una base de datos No-SQL distribuida y basada en un modelo de

almacenamiento de “Clave-Valor”, de código abierto que está escrita en Java.

• Permite grandes volúmenes de datos en forma distribuida.• Lo usa Twitter para su plataforma.• El objetivo principal es la escalabilidad líneal y disponibilidad.• La arquitectura de Cassandra está basada en una serie de nodos iguales

que se comunican con un protocolo P2P con lo que la redundancia es máxima.

• Está desarrollada por Apache Software Foundation.

Page 23: Principales bases de datos existentes

Características de Cassandra.• Cassandra logra el más alto rendimiento para el número máximo de nodos

en todos los experimentos", aunque "esto tiene como precio una alta latencia de escritura y lectura".

• Las claves primarias de cada tabla tiene un primer componente que es la clave de partición

• Dentro de una partición, las filas son agrupadas por las columnas restantes de la clave. 

• Las tablas se pueden crear, eliminar y alterar en tiempo de ejecución sin bloquear actualizaciones y consultas.

• Cassandra no soporta joins o subqueries, sino que enfatiza en la desnormalización a través de características como colecciones.

Page 24: Principales bases de datos existentes

Características de Cassandra.• En los últimos tiempos están apostando por un lenguaje denominado CQL

(Cassandra Query Language, no confundir con Contextual Query Language) que posee una sintaxis similar a SQL aunque con muchas menos funcionalidades.

• Descentralización.• Soporte replicación y replicación de múltiples data center.• Escalabilidad.• Tolerancia de fallos.• Consistencia.• Soporte MapReduce.• Lenguaje de consulta.