El documento proporciona información sobre bases de datos, incluyendo una descripción de bases de datos SQL y NoSQL, y discute las ventajas y diferencias de las bases de datos más populares como SQL Server, Oracle, MongoDB, Oracle NoSQL y Cassandra.
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Base de datos
1. Actividad de aprendizaje
4. Screencast y bases de datos
CURSO NACIONAL: INFORMATICA.
FORMACION DISCIPLINAR
DOCENTES DE EDUCACION MEDIA SUPERIOR.
INSTITUCIONES DE EDUCACIÓN PÚBLICA
DE EDUCACIÓN MEDIA SUPERIOR.
Elaboro: Tomás de Jesús Méndez González
2. a. ¿Qué es una base de datos Una base de datos es el conjunto de datos informativos organizados en
un mismo contexto para su uso y vinculación.
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 que comparten entre sí algún tipo de vínculo o relación que busca
ordenarlos y clasificarlos en conjunto.
Una base de datos puede ser de diverso tipo, desde un pequeño fichero
casero para ordenar libros y revistas por clasificación alfabética hasta una
compleja base que contenga datos de índole gubernamental en un
Estado u organismo internacional. Recientemente, el término base de
datos comenzó a utilizarse casi exclusivamente en referencia a bases
construidas a partir de software informático, que permiten una más fácil
y rápida organización de los datos. Las bases de datos informáticas
pueden crearse a partir de software o incluso de forma online usando
Internet. En cualquier caso, las funcionalidades disponibles son
prácticamente ilimitadas
... via Definicion ABC http://www.definicionabc.com/tecnologia/base-
de-datos.php
3. b. ¿Qué es una base de datos de
tipo SQL?
El lenguaje SQL es el más universal en los sistemas de base de datos. Este
lenguaje nos permite realizar consultas a nuestras bases de datos para
mostrar, insertar, actualizar y borrar datos.
A continuación veremos un ejemplo de ellos:
Mostrar: para mostrar los registros se utiliza la instrucción Select. Select *
From comentarios.
Insertar: los registros pueden ser introducidos a partir de sentencias que
emplean la instrucción Insert. Insert Into comentarios (titulo, texto, fecha)
Values ('saludos', 'como esta', '22-10-2007')
Borrar: Para borrar un registro se utiliza la instrucción Delete. En este caso
debemos especificar cual o cuales son los registros que queremos borrar. Es
por ello necesario establecer una selección que se llevara a cabo mediante la
cláusula Where. Delete From comentarios Where id='1'.
Actualizar: para actualizar los registros se utiliza la instrucción Update.
Como para el caso de Delete, necesitamos especificar por medio de Where
cuáles son los registros en los que queremos hacer efectivas nuestras
modificaciones. Además, tendremos que especificar cuáles son los nuevos
valores de los campos que deseamos actualizar.Update comentarios Set
titulo='Mi Primer Comentario' Where id='1'.
4. c. ¿Qué es una base de datos No-
SQL?
Si hablamos de bases de datos NoSQL, la cosa se
complica. A día de hoy existen unos 150 sistemas de
bases de datos NoSQL. Elegir uno de ellos puede ser
muy difícil, ya que ninguno ha obtenido todavía la
fama que sí han conseguido las bases de datos
relacionales.
Pero el problema principal que encontramos, es que
aunque todas se denominan NoSQL, en realidad hay
diferentes tipos. Dependiendo de lo que necesitemos,
deberemos decantarnos por una u otra.
Aunque hay varias aproximaciones diferentes para
clasificar las bases de datos NoSQL (Teorema CAP,
basándonos en el modelo de datos etc.), en general se
considera que existen cuatro tipos diferentes:
orientadas a documentos, orientadas a columnas, de
clave-valor y en grafo. Así que veamos en qué
consisten estos sistemas, para que podamos elegir la
opción que mejor se adapte a nuestras
necesidades.
5. d. Bases de datos más populares
(incluir diferenciales de cada una y
sus ventajas sobre otras bases de
datos):
6. i. SQL Server.
El lenguaje de desarrollo utilizado (por línea de comandos o mediante la interfaz gráfica de Management Studio)
es Transact-SQL (TSQL), una implementación del estándar ANSI del lenguaje SQL, utilizado para manipular y recuperar
datos (DML), crear tablas y definir relaciones entre ellas (DDL).
Dentro de los competidores más destacados de SQL Server están: Oracle, MariaDB, MySQL,PostgreSQL. SQL Server solo
está disponible para sistemas operativos Windows de Microsoft.
Puede ser configurado para utilizar varias instancias en el mismo servidor físico, la primera instalación lleva
generalmente el nombre del servidor, y las siguientes - nombres específicos (con un guion invertido entre el nombre del
servidor y el nombre de la instalación).
VENTAJAS SOBRE OTRAS BASES DE DATOS:
Es un sistema de gestión de base de datos.
Es útil para manejar y obtener datos de la red de redes.
Nos permite olvidarnos de los ficheros que forman la
base de datos.
Si trabajamos en una red social nos permite agregar
otros servidores de SQL Server. Por ejemplo dos
personas que trabajan con SQL Server, uno de ellos se
puede conectar al servidor de su otro compañero y así
se puede ver las bases de datos del otro compañero con
SQL Server.
SQL permite administrar permisos a todo. También
permite que alguien conecte su SQLO al nuestro pero
sin embargo podemos decirle que no puede ver esta
base de datos pero otro si.
DIFERENCIAS:
1. Utiliza mucho la memoria RAM para las
instalaciones y utilización de software.
2. No se puede utilizar como practicas porque
se prohíben muchas cosas, tiene restricciones
en lo particular.
3. La relación, calidad y el precio esta muy
debajo comparado con oracle.
4. Tiene muchos bloqueos a nivel de página,
un tamaño de página fijo y demasiado pequeño,
una pésima implementación de los tipos de
datos variables.
7. ii. Oracle.
Oracle Corporation es una compañía de software que desarrolla bases de datos (Oracle
Database) y sistemas de gestión de bases de datos.
Cuenta además, con herramientas propias de desarrollo para realizar aplicaciones, como Oracle
Designer, Oracle JDeveloper y Oracle Developer Suite.
Su actual consejero delegado es Larry Ellison.
VENTAJAS SOBRE OTRAS BASES DE DATOS:
Una ventaja principal de Oracle SQL es su
estandarización y consistencia entre distintas
implementaciones. SQL fue estandarizado por
primera vez por el ANSI (Instituto Estadounidense de
Estandarización) en1986, y luego ratificado en 1987 por
la Organización Internacional de Estandarización
(ISO), el cual sigue siendo el organismo de
estandarización.
DIFERENCIAS:
Una de las mayores desventajas de Oracle SQL
es la inconsistencia e incompatibilidad de datos
en las áreas del tiempo y sintaxis de datos,
concatenación de cadenas y sensibilidad de
caracteres. El lenguaje es complejo, con un
enfoque de palabras clave similar en estructura
a COBOL (por las cifras en inglés de lenguaje
común orientado a los negocios), con menos
reglas de sintaxis y gramática.
8. iii. 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.
MongoDB forma parte de la nueva familia de sistemas de base de datos NoSQL. 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 desarrollo de MongoDB empezó en octubre de 2007 por la compañía de software 10gen.1Ahora 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
industria2 , contando con implantaciones en empresas como MTV Network,3 Craiglist4 o Foursquare5 .
El código binario está disponible para los sistemas operativos Windows, Linux, OS X y Solaris.
VENTAJAS SOBRE OTRAS BASES DE DATOS:
Cualquier aplicación que necesite almacenar datos semi
estructurados puede usar MongoDB. Es el caso de las típicas
aplicaciones CRUD o de muchos de los desarrollos web
actuales.
Eso sí, aunque las colecciones de MongoDB no necesitan definir
une esquema, es importante que diseñemos nuestra aplicación
para seguir uno. Tendremos que pensar si necesitamos
normalizar los datos, de normalizarlos o utilizar una
aproximación híbrida. Estas decisiones pueden afectar al
rendimiento de nuestra aplicación. En definitiva el esquema lo
definen las consultas que vayamos a realizar con más
frecuencia.
DIFERENCIAS:
Una de las mayores desventajas de Oracle SQL
es la inconsistencia e incompatibilidad de datos
en las áreas del tiempo y sintaxis de datos,
concatenación de cadenas y sensibilidad de
caracteres. El lenguaje es complejo, con un
enfoque de palabras clave similar en estructura
a COBOL (por las cifras en inglés de lenguaje
común orientado a los negocios), con menos
reglas de sintaxis y gramática.
9. iv. Oracle NoSQL.
Oracle NoSQL base de datos es una escalable , distribuida de bases de datos NoSQL, diseñado para
proporcionar altamente fiable , flexible, gestión de datos y disponible a través de una configurable conjunto de
nodos de datos. Los datos pueden ser modelado como tablas de estilo de base de datos relacional, documentos JSON o
pares de clave y valor. Oracle NoSQL base de datos es un sistema fragmentados (compartido-nada), que distribuye los
datos de manera uniforme a través de los múltiples fragmentos en el clúster, basado en el valor hash de la clave
primaria. Dentro de cada fragmento, nodos de datos se replican en garantizar una alta disponibilidad, la rápida
conmutación por error en el caso de un fallo de nodo y balanceo de carga óptima de las consultas. NoSQL base de datos
proporciona Java, C, Python y conductores Node.js y una API REST para simplificar el desarrollo de aplicaciones. Base
de datos NoSQL se integra con una amplia variedad de aplicaciones de código abierto Oracle relacionada y con el fin de
simplificar y agilizar el desarrollo y despliegue de aplicaciones modernas de datos grandes. NoSQL base de datos es de
doble licencia y disponible como una edición de la comunidad de código abierto, así como una licencia comercial
Enterprise Edition.
VENTAJAS SOBRE OTRAS BASES DE DATOS:
1.- Es de código abierto - Sobre todas las cosas buenas
Los productos de código abierto proporcionan a los
desarrolladores grandes beneficios.
2.- Escalamiento sencillo.
NoSQL sustituye a la antiguo "escalar" el mantra de los gestores
de las bases de datos con una nueva: "manera" en lugar de
añadir más servidores para manejar más carga de datos.
3.- Diferentes DBs NoSQL para diferentes proyectos
MongoDB y Redis son buenas opciones para el almacenamiento
de escritura con alta frecuencia, rara vez leen los datos
estadísticos, tales como web, contador de visitas.
DIFERENCIAS:
1.- El código abierto puede significar una
"mancha" en el soporte para las empresas.
Mientras que los principales proveedores de
RMBMS tales como Oracle, IBM y Sybase
ofrecen buenos soportes a pequeñas, medianas
y grandes empresas.
2.- No están lo suficientemente maduros para
algunas empresas
3.- Limitaciones de Inteligencia de Negocios
Hay una o dos cuestiones acerca de las
capacidades de BI de las bases de datos NoSQL.
10. v. Cassandra.
La base de datos Apache Cassandra es la elección correcta cuando se necesita una alta disponibilidad
y escalabilidad sin comprometer el rendimiento. Escalabilidad lineal y probada tolerancia a fallos en
el hardware de los productos básicos o infraestructura en la nube hacen que sea la plataforma perfecta
para los datos de misión crítica. El apoyo de Cassandra para replicar a través de múltiples centros de
datos es la mejor en su clase, con una latencia más baja para sus usuarios y la tranquilidad de saber
que se puede sobrevivir cortes regionales.
Modelo de datos de Cassandra ofrece la comodidad de los índices de columnas con el rendimiento de
cambios de registro estructurado, el apoyo fuerte para desnormalización y vistas materializadas , y la
potente capacidad de almacenamiento en caché.
VENTAJAS SOBRE OTRAS BASES DE
DATOS:
Esta orientado a columna familias, tolerante a fallos
, ya que replica los datos de forma automática a
múltiples nodos; cuando un nodo falla puede ser
reemplazado sin ningún periodo de inactividad.
permite replicas a múltiples data centers;
almacenamiento de los datos tipo column family.
DIFERENCIAS:
No esta orientado a transacciones este es le factor mas
débil de esta tecnología.
El hecho de tener los datos guardados columna a
columna nos permite retornar las filas mas
rápidamente, pero al insertar, actualizar o borrar un
registro, se deberá hacer en mas de una ubicación; por
esta razón este tipo de base de datos no se
recomienda para sistemas de tipo OLTP orientados a
transacciones y alta concurrencia.