Guía Esencial Descubra los diferentes tipos de SQL
Transcript of Guía Esencial Descubra los diferentes tipos de SQL
Page 1 of 20
In this e-guide
SQL
NoSQL o base de datos No Solo
SQL
MySQL
Obtener más contenido
exclusivo de PRO+
Guía Esencial
Algunos pueden decir que el debate SQL frente a NoSQL es discutible
porque cada diseño de base de datos realiza la misma función:
almacenamiento de datos. Sin embargo, existen numerosas razones por
las que un administrador de base de datos puede gravitar hacia una base
de datos SQL o NoSQL. Cada enfoque tiene cualidades favorables y
desventajas, según el tipo de proyecto.
Las bases de datos SQL utilizan un lenguaje de consulta estructurado y se
destacaron a fines de los años 70 y 80. NoSQL, por otro lado,
comúnmente se refiere a bases de datos que aparecieron en escena a
principios de la década del 2000. Con la aparición del software NoSQL, la
retención que las bases de datos relacionales tenían sobre TI comenzó a
caer. La solución del dilema de las bases de datos SQL vs. NoSQL requiere
conocimiento sobre ambas arquitecturas de base de datos.
Page 2 of 20
In this e-guide
SQL
NoSQL o base de datos No Solo
SQL
MySQL
Obtener más contenido
exclusivo de PRO+
Guía Esencial
SQL (Structured Query Language o Lenguaje de consultas estructuradas)
Jessica Sirkin, Contributor
El lenguaje de consultas estructuradas o SQL (Structured Query Language) es un
lenguaje de programación estandarizado que se utiliza para administrar bases de datos
relacionales y realizar diversas operaciones con los datos que contienen. Creado
inicialmente en la década de 1970, SQL es utilizado habitualmente no solo por los
administradores de bases de datos, sino también por los desarrolladores que escriben
scripts de integración de datos y por los analistas de datos que desean configurar y
ejecutar consultas analíticas.
Los usos de SQL incluyen la modificación de las estructuras de tablas e índices de las
bases de datos; la adición, actualización y eliminación de filas de datos; y la
recuperación de subconjuntos de información de una base de datos para el
procesamiento de transacciones y aplicaciones analíticas. Las consultas y otras
operaciones SQL adoptan la forma de comandos escritos en forma de sentencias: las
sentencias SQL más utilizadas son select, add, insert, update, delete, create, alter y
truncate.
SQL se convirtió en el lenguaje de programación estándar de facto para las bases de
datos relacionales tras su aparición a finales de los años 70 y principios de los 80.
También conocidos como bases de datos SQL, los sistemas relacionales constan de un
Page 3 of 20
In this e-guide
SQL
NoSQL o base de datos No Solo
SQL
MySQL
Obtener más contenido
exclusivo de PRO+
Guía Esencial
conjunto de tablas que contienen datos en filas y columnas. Cada columna de una
tabla corresponde a una categoría de datos –por ejemplo, el nombre del cliente o la
dirección–, mientras que cada fila contiene un valor de datos para la columna que la
cruza.
Estándar SQL y extensiones propias
El American National Standards Institute (ANSI) adoptó un estándar SQL oficial en 1986
y, posteriormente, la Organización Internacional de Normalización, conocida como ISO,
en 1987. Desde entonces, los dos organismos de desarrollo de normas han publicado
más de media docena de actualizaciones conjuntas del estándar; en el momento de
escribir este artículo, la versión más reciente es SQL:2011, aprobada ese mismo año.
Las organizaciones pueden utilizar sistemas de gestión de bases de datos relacionales,
tanto de propiedad como de código abierto, basados en SQL. Entre ellos se
encuentran:
• Microsoft SQL Server • Base de datos Oracle • IBM DB2 • SAP HANA • SAP Adaptive Server • MySQL (ahora propiedad de Oracle) • PostgreSQL
Page 4 of 20
In this e-guide
SQL
NoSQL o base de datos No Solo
SQL
MySQL
Obtener más contenido
exclusivo de PRO+
Guía Esencial
Sin embargo, muchos de estos productos de bases de datos admiten SQL con
extensiones propias del lenguaje estándar para la programación de procedimientos y
otras funciones. Por ejemplo, Microsoft ofrece un conjunto de extensiones llamado
Transact-SQL (T-SQL), mientras que la versión extendida del estándar de Oracle es
PL/SQL. Como resultado, las distintas variantes de SQL que ofrecen los proveedores no
son totalmente compatibles entre sí.
Comandos y sintaxis de SQL
Los comandos SQL se dividen en varios tipos diferentes, entre ellos las sentencias del
lenguaje de manipulación de datos (DML) y del lenguaje de definición de datos (DDL),
los controles de las transacciones y las medidas de seguridad. El vocabulario DML se
utiliza para recuperar y manipular datos, mientras que las sentencias DDL sirven para
definir y modificar las estructuras de la base de datos. Los controles de transacción
ayudan a gestionar el procesamiento de las transacciones, garantizando que éstas se
completen o se reviertan si se producen errores o problemas. Las sentencias de
seguridad se utilizan para controlar el acceso a la base de datos, así como para crear
roles y permisos de usuario.
La sintaxis SQL es el formato de codificación utilizado para escribir las sentencias. La
Figura 1 muestra un ejemplo de una sentencia DDL escrita en T-SQL de Microsoft para
modificar una tabla de la base de datos en SQL Server 2016:
Page 5 of 20
In this e-guide
SQL
NoSQL o base de datos No Solo
SQL
MySQL
Obtener más contenido
exclusivo de PRO+
Guía Esencial
Herramientas de SQL-on-Hadoop
Los motores de consulta SQL-on-Hadoop son una rama más reciente de SQL que
permite a las organizaciones con arquitecturas de big data construidas en torno a
sistemas Hadoop aprovecharlas, en lugar de tener que utilizar lenguajes más complejos
y menos familiares; en particular, el entorno de programación MapReduce para
desarrollar aplicaciones de procesamiento por lotes.
Hay más de una docena de herramientas SQL-on-Hadoop disponibles a través de los
proveedores de distribución de Hadoop y otros vendedores; muchas de ellas son
software de código abierto o versiones comerciales de dichas tecnologías. Además, el
motor de procesamiento Apache Spark, que a menudo se utiliza junto con Hadoop,
incluye un módulo Spark SQL que también admite la programación basada en SQL.
En general, SQL-on-Hadoop es todavía una tecnología emergente, y la mayoría de las
herramientas disponibles no soportan toda la funcionalidad que ofrecen las
implementaciones relacionales de SQL. Pero se están convirtiendo en un componente
habitual de las implantaciones de Hadoop, ya que las empresas buscan que los
desarrolladores y analistas de datos con conocimientos de SQL participen en la
programación de aplicaciones de big data.
Page 6 of 20
In this e-guide
SQL
NoSQL o base de datos No Solo
SQL
MySQL
Obtener más contenido
exclusivo de PRO+
Guía Esencial
NoSQL o base de datos No Solo SQL
Colaborador de TechTarget,
NoSQL es un enfoque para la administración de bases de datos que puede adaptarse a
una amplia variedad de modelos de datos, incluidos los formatos de valor clave,
documento, columnas y gráficos. Una base de datos NoSQL generalmente significa que
no es relacional, está distribuida, es flexible y escalable. Las características comunes
adicionales de la base de datos NoSQL incluyen la falta de un esquema de base de
datos, agrupación de datos, soporte de replicación y consistencia eventual, a diferencia
de la consistencia de transacción típica ACID (atomicidad, consistencia, aislamiento y
durabilidad) de las bases de datos relacionales y SQL. Muchos sistemas de bases de
datos NoSQL también son de código abierto.
El término NoSQL originalmente podría tomarse en su palabra, es decir, SQL no se usó
como API para acceder a los datos. Sin embargo, la ubicuidad y utilidad de SQL hizo
que muchas bases de datos NoSQL agregaran soporte para SQL. Hoy en día se acepta
comúnmente que NoSQL significa "No Solo SQL".
¿Cuáles son los tipos de bases de datos NoSQL?
Hay cuatro tipos populares de sistemas de bases de datos NoSQL. Cada uno usa un tipo
diferente de modelo de datos, lo que resulta en diferencias significativas entre cada
tipo NoSQL.
Page 7 of 20
In this e-guide
SQL
NoSQL o base de datos No Solo
SQL
MySQL
Obtener más contenido
exclusivo de PRO+
Guía Esencial
Bases de datos de documentos. También llamadas almacenes de documentos, estas
bases de datos almacenan datos semiestructurados y descripciones de esos datos en
formato de documento. Permiten a los desarrolladores crear y actualizar programas sin
necesidad de hacer referencia al esquema maestro. El uso de bases de datos de
documentos ha aumentado junto con el uso de JavaScript y JavaScript Object Notation
(JSON), un formato de intercambio de datos que ha ganado una amplia aceptación
entre los desarrolladores de aplicaciones web. Las bases de datos de documentos se
utilizan para la gestión de contenido y el manejo de datos de aplicaciones móviles,
como plataformas de blogs, análisis web y aplicaciones de comercio electrónico.
Couchbase Server, CouchDB, MarkLogic y MongoDB son ejemplos de bases de datos de
documentos.
Bases de datos gráficas. Los almacenes de datos de gráficos organizan los datos como
nodos, que son similares a las filas en una base de datos relacional, y bordes, que
representan conexiones entre nodos. Dado que el sistema de gráficos almacena la
relación entre los nodos, puede admitir representaciones más ricas de las relaciones de
datos. Además, a diferencia de los modelos relacionales que se basan en esquemas
estrictos, el modelo de datos de gráficos puede evolucionar con el tiempo y el uso. Las
bases de datos gráficas se aplican en sistemas que deben mapear relaciones, como
plataformas de redes sociales, sistemas de reservas o gestión de relaciones con los
clientes. Los ejemplos de bases de datos de gráficos incluyen AllegroGraph, IBM Graph
y Neo4j.
Page 8 of 20
In this e-guide
SQL
NoSQL o base de datos No Solo
SQL
MySQL
Obtener más contenido
exclusivo de PRO+
Guía Esencial
Tiendas de valores clave. También conocidas como bases de datos de valor-clave,
estos sistemas implementan un modelo de datos simple que empareja una clave única
con un valor asociado. Debido a que este modelo es simple, se puede utilizar para
desarrollar aplicaciones altamente escalables y de alto rendimiento. Las bases de datos
de valor clave son ideales para la administración de sesiones y el almacenamiento en
caché en aplicaciones web, como las necesarias para administrar los detalles del carrito
de compras para compradores en línea o para administrar los detalles de la sesión para
juegos multijugador. Las implementaciones difieren en la forma en que están
orientadas para trabajar con RAM, unidades de estado sólido o unidades de disco.
Algunos ejemplos de bases de datos de valores clave populares incluyen Aerospike,
DynamoDB, Redis y Riak.
Almacenes de columna ancha. Estas bases de datos utilizan tablas, columnas y filas
conocidas como tablas de bases de datos relacionales, pero los nombres y el formato
de las columnas pueden diferir de una fila a otra en una sola tabla. Cada columna
también se almacena por separado en el disco. A diferencia del almacenamiento
tradicional orientado a filas, un almacenamiento de columnas anchas es óptimo
cuando se consultan datos por columnas. Las aplicaciones típicas en las que las tiendas
de columnas anchas pueden sobresalir incluyen motores de recomendación, catálogos,
detección de fraudes y registro de eventos. Accumulo, Amazon SimpleDB, Cassandra,
HBase e Hypertable son ejemplos de tiendas de columnas anchas.
Estas clasificaciones básicas de bases de datos NoSQL son solo guías. Con el tiempo, los
proveedores han mezclado y combinado elementos de diferentes familias de bases de
Page 9 of 20
In this e-guide
SQL
NoSQL o base de datos No Solo
SQL
MySQL
Obtener más contenido
exclusivo de PRO+
Guía Esencial
datos NoSQL para lograr sistemas más útiles en general. Esa evolución se ve, por
ejemplo, en MarkLogic, que agregó un almacén de gráficos y otros elementos a sus
bases de datos de documentos originales. Couchbase Server admite enfoques de
documentos y valores clave. Cassandra ha combinado elementos clave-valor con un
almacén de columnas amplias y una base de datos de gráficos. A veces, los elementos
NoSQL se mezclan con elementos SQL, creando una variedad de bases de datos que se
conocen como bases de datos multimodelo.
Ventajas de NoSQL
El uso de bases de datos NoSQL tiene varias ventajas, que incluyen:
• Las bases de datos NoSQL simplifican el desarrollo de aplicaciones, especialmente para aplicaciones web interactivas en tiempo real, como las que utilizan una API REST y servicios web.
• Estas bases de datos brindan flexibilidad para los datos que no se han normalizado, lo que requiere un modelo de datos flexible o tiene diferentes propiedades para diferentes entidades de datos.
• Ofrecen escalabilidad para conjuntos de datos más grandes, que son comunes en aplicaciones de análisis e inteligencia artificial (IA).
• Las bases de datos NoSQL son más adecuadas para la nube, dispositivos móviles, redes sociales y requisitos de big data.
• Están diseñadas para casos de uso específicos y son más fáciles de usar que las bases de datos SQL o relacionales de propósito general para ese tipo de aplicaciones.
Page 10 of 20
In this e-guide
SQL
NoSQL o base de datos No Solo
SQL
MySQL
Obtener más contenido
exclusivo de PRO+
Guía Esencial
Desventajas de NoSQL
Las desventajas de usar una base de datos NoSQL incluyen las siguientes:
• Cada base de datos NoSQL tiene su propia sintaxis para consultar y administrar datos. Esto contrasta con SQL, que es la lengua franca para los sistemas de bases de datos relacionales y SQL.
• La falta de un esquema de base de datos rígido y restricciones elimina las salvaguardas de integridad de datos que están integradas en los sistemas de bases de datos relacionales y SQL.
• Se requiere un esquema con algún tipo de estructura para poder utilizar los datos. Con NoSQL, esto debe ser realizado por el desarrollador de la aplicación en lugar del administrador de la base de datos.
• Debido a que la mayoría de las bases de datos NoSQL utilizan el modelo de coherencia eventual, no proporcionan el mismo nivel de coherencia de datos que las bases de datos SQL. En ocasiones, los datos no serán consistentes, lo que significa que no son adecuados para transacciones que requieren integridad inmediata, como transacciones bancarias y en cajeros automáticos.
• Debido a que las bases de datos NoSQL son más nuevas, no existen estándares industriales completos como con las ofertas de DBMS SQL y relacional.
NoSQL vs SQL: ¿Cuál es la diferencia?
En un nivel alto, las bases de datos SQL son de uso general, mientras que las bases de
datos NoSQL están diseñadas para casos de uso específicos. Las principales diferencias
Page 11 of 20
In this e-guide
SQL
NoSQL o base de datos No Solo
SQL
MySQL
Obtener más contenido
exclusivo de PRO+
Guía Esencial
entre NoSQL y SQL se pueden resumir en las siguientes cinco categorías: API, modelo
de datos, requisito de esquema, escalabilidad e integridad de los datos. Cada uno
despliega un enfoque diferente a estos aspectos del almacenamiento y recuperación
de datos.
API. Para NoSQL, no se requiere SQL como API para los datos en la base de datos,
aunque muchas bases de datos NoSQL ofrecen un lenguaje de consulta similar a SQL.
Para las bases de datos SQL, SQL es típicamente la única o predominante interfaz para
los datos.
Modelo de datos. Con los sistemas de base de datos NoSQL, los datos no se modelan
como tablas con filas y columnas fijas, como con un DBMS SQL. En cambio,
dependiendo de la base de datos NoSQL, los datos se pueden modelar como
documentos JSON, gráficos con nodos y bordes, o pares clave-valor. Las tiendas de
columnas anchas utilizan el concepto de tabla y fila, pero las columnas pueden ser
dinámicas de una fila a otra dentro de una tabla.
Esquema. El esquema de una base de datos NoSQL es flexible, lo que significa que no
hay una estructura fija para los datos, los tipos de datos y las longitudes de los
elementos de datos. Los datos se pueden almacenar de forma libre o sin esquema.
Este enfoque ofrece a los programadores un mayor grado de flexibilidad, lo que puede
facilitar los esfuerzos de desarrollo.
Con SQL, el esquema de las bases de datos es fijo, con tipos de datos rígidos y
longitudes para cada columna, y cada fila debe coincidir con el diseño y la estructura
Page 12 of 20
In this e-guide
SQL
NoSQL o base de datos No Solo
SQL
MySQL
Obtener más contenido
exclusivo de PRO+
Guía Esencial
de columna definidos. Por ejemplo, si una columna se define como un número entero,
solo se pueden almacenar datos enteros en la columna y el DBMS rechaza cualquier
intento de hacer lo contrario. Este enfoque ofrece una mejor calidad de datos porque
el DBMS hace cumplir las reglas a medida que se agregan los datos.
Escalabilidad. Las bases de datos NoSQL generalmente implementan escalado
horizontal, también conocido como scaling out. El escalado horizontal implica agregar
más hardware a un sistema, generalmente en forma de nuevos servidores básicos. La
partición horizontal que utiliza fragmentación para dividir grandes bases de datos en
partes más pequeñas distribuidas en varios servidores se usa con frecuencia en los
sistemas NoSQL.
El enfoque de SQL suele ser el escalado vertical, también denominado escalado
ascendente. Con el escalado vertical, se agregan recursos adicionales, como una CPU
más potente o memoria adicional, para manejar una carga de trabajo adicional o para
mejorar el rendimiento.
Integridad de los datos. Las bases de datos NoSQL y SQL utilizan diferentes enfoques
para proteger la integridad de los datos a medida que las aplicaciones y los usuarios los
crean, leen, actualizan y eliminan.
La mayoría de los sistemas de bases de datos NoSQL administran la integridad de los
datos con un enfoque conocido como BASE (Básicamente Disponible, Estado Suave con
Consistencia Eventual). Con BASE, los datos pueden ser inconsistentes durante un
período de tiempo, pero la replicación de la base de datos eventualmente actualiza
Page 13 of 20
In this e-guide
SQL
NoSQL o base de datos No Solo
SQL
MySQL
Obtener más contenido
exclusivo de PRO+
Guía Esencial
todas las copias de los datos para que sean consistentes. Algunas aplicaciones pueden
tolerar este tipo de datos inconsistentes, mientras que otras no.
El enfoque utilizado por las bases de datos SQL es el ACID antes mencionado. Cada una
de sus cuatro cualidades —atomicidad, consistencia, aislamiento y durabilidad—
contribuyen a la capacidad de una transacción para garantizar la integridad de los
datos. Con ACID, cada transacción, cuando se ejecuta sola, en un estado de base de
datos consistente, se completará y producirá resultados correctos o terminará sin
ningún efecto. En cualquier caso, la condición resultante de la base de datos siempre
será un estado coherente.
Evolución de NoSQL
Los sistemas de bases de datos relacionales y SQL son omnipresentes porque brindan
un buen mecanismo de propósito general para respaldar la mayoría de los requisitos
de administración de datos. Están diseñados para ser confiables, precisos y útiles para
aplicaciones planificadas y consultas ad hoc. Sin embargo, algunos requisitos SQL y
relacionales —por ejemplo, un esquema rígido y un ACID estricto— pueden hacerlos
menos adecuados para aplicaciones que requieren datos flexibles y alta velocidad.
Como reacción, surgieron sistemas de bases de datos NoSQL para abordar estas
necesidades, muchas de ellas desarrolladas por empresas como Amazon con su
DynamoDB, Facebook y su Apache Cassandra, y Google con su base de datos BigTable
para abordar sus necesidades específicas. Otro sistema de base de datos NoSQL de
Page 14 of 20
In this e-guide
SQL
NoSQL o base de datos No Solo
SQL
MySQL
Obtener más contenido
exclusivo de PRO+
Guía Esencial
influencia temprana es Berkeley DB, desarrollado en la Universidad de California,
Berkeley, a partir de la década de 1990, Berkeley DB se describió ampliamente como
una base de datos integrada que respaldaba de cerca las necesidades de
almacenamiento de aplicaciones específicas. Este software de código abierto
proporcionó un almacén de valores clave simple. Berkeley DB fue lanzado
comercialmente por Sleepycat Software en 1999. La compañía fue adquirida más tarde
por Oracle en 2006. Oracle ha seguido brindando soporte a Berkeley DB de código
abierto.
El término NoSQL se puede aplicar a algunas bases de datos anteriores al sistema de
gestión de bases de datos relacionales (RDBMS), pero se refiere más comúnmente a las
bases de datos creadas a principios de la década de 2000 con el propósito de agrupar
bases de datos a gran escala en aplicaciones web y en la nube.
Page 15 of 20
In this e-guide
SQL
NoSQL o base de datos No Solo
SQL
MySQL
Obtener más contenido
exclusivo de PRO+
Guía Esencial
MySQL
Colaborador de TechTarget,
MySQL es un sistema de gestión de bases de datos relacionales (RDBMS) de código
abierto respaldado por Oracle y basado en el lenguaje de consulta estructurado (SQL).
MySQL funciona prácticamente en todas las plataformas, incluyendo Linux, UNIX y
Windows. Aunque puede utilizarse en una amplia gama de aplicaciones, MySQL se
asocia más a menudo con las aplicaciones web y la publicación en línea.
MySQL es un componente importante de una pila empresarial de código abierto
llamada LAMP. LAMP es una plataforma de desarrollo web que utiliza Linux como
sistema operativo, Apache como servidor web, MySQL como sistema de gestión de
bases de datos relacionales y PHP como lenguaje de scripting orientado a objetos (a
veces se utiliza Perl o Python en lugar de PHP).
Originalmente concebido por la empresa sueca MySQL AB, MySQL fue adquirido por
Sun Microsystems en 2008 y luego por Oracle cuando compró Sun en 2010. Los
desarrolladores pueden utilizar MySQL bajo la licencia pública general GNU (GPL), pero
las empresas deben obtener una licencia comercial de Oracle.
Hoy en día, MySQL es el RDBMS que está detrás de muchos de los principales sitios
web del mundo y de innumerables aplicaciones corporativas y de consumo basadas en
la web, como Facebook, Twitter y YouTube.
Page 16 of 20
In this e-guide
SQL
NoSQL o base de datos No Solo
SQL
MySQL
Obtener más contenido
exclusivo de PRO+
Guía Esencial
Cómo funciona MySQL
MySQL se basa en un modelo cliente-servidor. El núcleo de MySQL es el servidor
MySQL, que maneja todas las instrucciones (o comandos) de la base de datos. El
servidor MySQL está disponible como un programa independiente para su uso en un
entorno de red cliente-servidor y como una biblioteca que puede ser incrustada (o
enlazada) en aplicaciones independientes.
MySQL funciona junto con varios programas de utilidad que soportan la administración
de las bases de datos MySQL. Los comandos se envían a MySQLServer a través del
cliente MySQL, que se instala en una computadora.
MySQL fue desarrollado originalmente para manejar rápidamente grandes bases de
datos. Aunque MySQL se instala normalmente en una sola máquina, es capaz de enviar
la base de datos a múltiples lugares, ya que los usuarios pueden acceder a ella a través
de diferentes interfaces de cliente MySQL. Estas interfaces envían sentencias SQL al
servidor y luego muestran los resultados.
Características principales de MySQL
MySQL permite almacenar y acceder a los datos a través de múltiples motores de
almacenamiento, incluyendo InnoDB, CSV y NDB. MySQL también es capaz de replicar
datos y particionar tablas para mejorar el rendimiento y la durabilidad. Los usuarios de
Page 17 of 20
In this e-guide
SQL
NoSQL o base de datos No Solo
SQL
MySQL
Obtener más contenido
exclusivo de PRO+
Guía Esencial
MySQL no tienen que aprender nuevos comandos; pueden acceder a sus datos
utilizando comandos SQL estándar.
MySQL está escrito en C y C++ y es accesible y está disponible en más de 20
plataformas, como Mac, Windows, Linux y Unix. El RDBMS soporta grandes bases de
datos con millones de registros y admite muchos tipos de datos, como enteros con o
sin signo de 1, 2, 3, 4 y 8 bytes de longitud; FLOAT; DOUBLE; CHAR; VARCHAR; BINARY;
VARBINARY; TEXT; BLOB; DATE; TIME; DATETIME; TIMESTAMP; YEAR; SET; ENUM; y
tipos espaciales OpenGIS. También se admiten tipos de cadena de longitud fija y
variable.
Para la seguridad, MySQL utiliza un sistema de privilegios de acceso y contraseñas
encriptadas que permite la verificación basada en el host. Los clientes de MySQL
pueden conectarse a MySQL Server utilizando varios protocolos, incluyendo sockets
TCP/IP en cualquier plataforma. MySQL también admite una serie de programas cliente
y de utilidad, programas de línea de comandos y herramientas de administración como
MySQL Workbench
Entre las ramificaciones de MySQL, también conocidas como forks, se encuentran las
siguientes:
• Drizzle, un sistema ligero de gestión de bases de datos de código abierto en desarrollo basado en MySQL 6.0;
• MariaDB, un popular sustituto de MySQL desarrollado por la comunidad que utiliza las API y los comandos de MySQL; y
Page 18 of 20
In this e-guide
SQL
NoSQL o base de datos No Solo
SQL
MySQL
Obtener más contenido
exclusivo de PRO+
Guía Esencial
• Percona Server con XtraDB, una versión mejorada de MySQL conocida por su escalabilidad horizontal.
MySQL vs SQL
Antes de 2016, la principal diferencia entre MySQL y SQL era que el primero podía
utilizarse en múltiples plataformas, mientras que el segundo solo podía usarse en
Windows. Desde entonces, Microsoft ha ampliado SQL para que sea compatible con
Linux, un cambio que entró en vigor en 2017. Cuando MySQL se instala a través de
Linux, su sistema de gestión de paquetes requiere una configuración personalizada
para ajustar los parámetros de seguridad y optimización.
MySQL también permite a los usuarios elegir el motor de almacenamiento más eficaz
para cualquier tabla dada, ya que el programa es capaz de utilizar múltiples motores de
almacenamiento para tablas individuales. Uno de los motores de MySQL es InnoDB.
InnoDB fue diseñado para una alta disponibilidad. Por ello, no es tan rápido como otros
motores. SQL utiliza su propio sistema de almacenamiento, pero mantiene múltiples
protecciones contra la pérdida de datos. Ambos sistemas pueden funcionar en
clústeres para lograr una alta disponibilidad.
SQL Server ofrece una amplia variedad de herramientas de análisis de datos y
elaboración de informes. SQL Server Reporting Services es la más popular y está
disponible como descarga gratuita. Hay herramientas de análisis similares para MySQL
Page 19 of 20
In this e-guide
SQL
NoSQL o base de datos No Solo
SQL
MySQL
Obtener más contenido
exclusivo de PRO+
Guía Esencial
disponibles en empresas de software de terceros, como Crystal Reports XI y Actuate
BIRT.
Compatibilidad con otros servicios
MySQL fue diseñado para ser compatible con otros sistemas. Es compatible con el
despliegue en entornos virtualizados, como Amazon RDS para MySQL, Amazon RDS
para MariaDB y Amazon Aurora para MySQL. Los usuarios pueden transferir sus datos
a una base de datos SQL Server utilizando herramientas de migración de bases de
datos como AWS Schema Conversion Tool y AWS Database Migration Service.
La semántica de los objetos de base de datos entre SQL Server y MySQL es similar,
pero no idéntica. Existen diferencias arquitectónicas que deben tenerse en cuenta al
migrar de SQL Server a MySQL. En MySQL, no hay diferencia entre una base de datos y
un esquema, mientras que SQL Server trata a los dos como entidades separadas.
Page 20 of 20
In this e-guide
SQL
NoSQL o base de datos No Solo
SQL
MySQL
Obtener más contenido
exclusivo de PRO+
Guía Esencial
Obtener más contenido exclusivo de PRO+
Como miembro de PRO+, tienes acceso a todo el portafolio de más de 140 sitios web
de TechTarget. El acceso a PRO+ te dirige a “contenidos exclusivos para miembros
platino” que están garantizados para ahorrarte tiempo y esfuerzo de tener que
rastrear dicho contenido premium por tu cuenta, ayudándote en última instancia a
resolver tus desafíos más difíciles de TI de manera más efectiva y rápida que nunca.
Aprovecha tu membresía al máximo visitando: https://www.computerweekly.com/es/eproducts
Images; stock.adobe.com
© 2021 TechTarget. Ninguna parte de esta publicación puede ser transmitida o reproducida de ninguna forma o por ningún medio
sin el permiso escrito del editor.