2. ¿Qué es una base de datos?
Una base de datos es una colección de información organizada de forma que
un programa de ordenador pueda seleccionar rápidamente los fragmentos
de datos que necesite. Una base de datos es un sistema de archivos
electrónico.
Las bases de datos tradicionales se organizan por campos, registros y
archivos. Un campo es una pieza única de información; un registro es un
sistema completo de campos; y un archivo es una colección de registros. Por
ejemplo, una guía de teléfono es análoga a un archivo. Contiene una lista de
registros, cada uno de los cuales consiste en tres campos: nombre, dirección,
y número de teléfono.
3. ¿Qué es una base de datos tipo SQL?
Las bases de datos NoSQL, también llamadas No Solo SQL, son un enfoque
hacia la gestión de datos y el diseño de base de datos que es útil para grandes
conjuntos de datos distribuidos.
NoSQL, que abarca una amplia gama de tecnologías y arquitecturas, busca
resolver los problemas de escalabilidad y rendimiento de big data que las
bases de datos relacionales no fueron diseñadas para abordar. NoSQL es
especialmente útil cuando una empresa necesita acceder y analizar grandes
cantidades de datos no estructurados o datos que se almacenan de forma
remota en varios servidores virtuales en la nube.
4. ¿Qué es una base de datos tipo SQL?
Contrariamente a las ideas falsas causadas por su nombre, NoSQL no prohíbe
el lenguaje estructurado de consultas (SQL). Si bien es cierto que algunos
sistemas NoSQL son totalmente no-relacionales, otros simplemente evitan
funcionalidades relacionales seleccionadas como esquemas de tablas fijas y
operaciones conjuntas. Por ejemplo, en lugar de utilizar tablas, una base de
datos NoSQL podría organizar los datos en objetos, pares clave/valor o tuplas.
Podría decirse que la base de datos más popular NoSQL es Apache Cassandra.
Cassandra, que una vez fue la base de datos propietaria de Facebook, fue
liberada como código abierto en 2008. Otras implementaciones NoSQL
incluyen SimpleDB, Google BigTable, Apache Hadoop, MapReduce,
MemcacheDB y Voldemort. Las empresas que utilizan NoSQL incluyen
NetFlix, LinkedIn yTwitter.
5. SQL Server
Microsoft SQL Server es un sistema de manejo de bases de datos del modelo
relacional, desarrollado por la empresa Microsoft.
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
6. SQL Server
Dentro de los competidores más destacados de SQL Server
están: Oracle, MariaDB, MySQL, PostgreSQL. SQL Server ha estado
tradicionalmente disponible solo para sistemas operativos Windows de
Microsoft, pero desde 2017 también está disponible para Linux y Docker
containers.
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).
7. Oracle
Es una potente herramienta cliente/servidor para la gestión de Bases de
Datos. Explicamos la herramienta y las ayudas que ofrece al desarrollador.
Oracle es básicamente una herramienta cliente/servidor para la gestión de
Bases de Datos. Es un producto vendido a nivel mundial, aunque la gran
potencia que tiene y su elevado precio hacen que sólo se vea en empresas muy
grandes y multinacionales, por norma general. En el desarrollo de páginas web
pasa lo mismo: como es un sistema muy caro no está tan extendido como
otras bases de datos, por ejemplo, Access, MySQL, SQL Server, etc.
8. Vamos ahora en centrarnos en que es Oracle exactamente y como funciona la
programación sobre éste. Oracle como antes he mencionado se basa en la
tecnología cliente/servidor, pues bien, para su utilización primero sería necesario
la instalación de la herramienta servidor (Oracle 8i) y posteriormente podríamos
atacar a la base de datos desde otros equipos con herramientas de desarrollo
como Oracle Designer y Oracle Developer, que son las herramientas básicas de
programación sobre Oracle.
Para desarrollar en Oracle utilizamos PL/SQL un lenguaje de 5ª generación,
bastante potente para tratar y gestionar la base de datos, también por norma
general se suele utilizar SQL al crear un formulario.
9. MongoDB
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. 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.
10. Oracle NoSQL Database
Es una base de datos de valor-clave distribuida noSQL de Oracle Corporation.
Proporciona semántica transaccional para la manipulación de datos, escalabilidad
horizontal y administración y monitoreo simples.
Oracle NoSQL Database proporciona un modelo de datos muy sencillo para el
desarrollador de aplicaciones. Cada fila es identificada por una clave única, y
también tiene un valor, de longitud arbitraria, que es interpretada por la
aplicación. La aplicación puede manipular (insertar, eliminar, actualizar, leer) una
sola fila en una transacción. La aplicación también puede realizar una exploración
iterativa no transaccional de todas las filas de la base de datos.
11. Apache Cassandra
Es una base de datos NoSQL 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. Por ejemplo, lo
usa Twitter para su plataforma. Su objetivo principal es la escalabilidad lineal y la
disponibilidad. La arquitectura distribuida 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.
Cassandra ofrece soporte robusto para múltiples centros de datos, con la
replicación asincrónica sin necesidad de un servidor maestro, que permiten
operaciones de baja latencia para todos los clientes.
Cassandra también ofrece un gran rendimiento. En 2012, investigadores de la
Universidad de Toronto que estudian los sistemas NoSQL concluyeron que "En
términos de escalabilidad, hay un claro ganador a través de nuestros