Anda di halaman 1dari 8

MySQL - PostgreSQL

Administradores de TI y otras personas que toman decisiones no deben cometer el error de


pensar de la misma manera sobre todos los sistemas de gestión de base de datos relacionales; hay
diferencias radicales entre MySQL y PostgreSQL, y cuando se considere cuál de estas dos
alternativas usar, una decisión informada debe ser hecha, que considere los diferentes equilibrios
que cada sistema representa

MySQL

Es el más popular de todos los servidores de bases de datos a gran escala. Es un producto
de código abierto rico en características que impulsa una gran cantidad de sitios web y aplicaciones
en línea. Comenzar con MySQL es relativamente fácil y los desarrolladores tienen acceso a una
gran cantidad de información sobre la base de datos en Internet.

Nota: Debe indicarse que, dada la popularidad del producto, hay muchas aplicaciones de terceros,
herramientas y bibliotecas integradas que ayudan enormemente en muchos aspectos del trabajo con
este RDBMS.

A pesar de no tratar de implementar el estándar SQL completo, MySQL ofrece mucha


funcionalidad a los usuarios. Como servidor de base de datos independiente, las aplicaciones hablan
con el proceso de daemon de MySQL para acceder a la base de datos en sí, a diferencia de SQLite.

Tipos de datos admitidos de MySQL

Tinyint Doble, doble Hora Mediumblob,


precisión, real mediumtext
Smallint Año
Decimal, Longblob,
Mediumint numérico Carbonizarse longtext
Int o integer Fecha Varchar Enum
Bigint Fecha y hora Tinyblob, tinytext Conjunto
Flotador Timestamp Blob, texto
Ventajas de MySQL

Fácil de trabajar con

MySQL se puede instalar muy fácilmente. Las herramientas de terceros, incluidas las
visuales (es decir, las GUI) hacen que sea extremadamente simple comenzar con la base de datos.

Característica rica

MySQL admite una gran cantidad de la funcionalidad SQL que se espera de un RDBMS, ya
sea directa o indirectamente.

Seguro

Muchas características de seguridad, algunas bastante avanzadas, están construidas en


MySQL.

Escalable y poderoso

MySQL puede manejar una gran cantidad de datos y, además, se puede usar "a escala", si
es necesario.

Rápido

Renunciar a algunos estándares permite a MySQL trabajar de manera muy eficiente y


reducir las esquinas, lo que proporciona ganancias de velocidad.

Desventajas de MySQL

Limitaciones conocidas

Por diseño, MySQL no tiene la intención de hacer todo y viene con las limitaciones
funcionales que pueden requerir algunas aplicaciones de última generación.

Problemas de confiabilidad

La forma en que se maneja cierta funcionalidad con MySQL (por ejemplo, referencias,
transacciones, auditoría, etc.) la hace un poco menos confiable en comparación con otros RDBMS.
Desarrollo estancado

Aunque MySQL todavía es un producto técnico de código abierto, hay quejas con respecto
al proceso de desarrollo desde su adquisición. Sin embargo, cabe señalar que existen algunas
bases de datos totalmente integradas basadas en MySQL que agregan valor a las instalaciones
estándar de MySQL (por ejemplo, MariaDB).

Cuándo usar MySQL

Operaciones distribuidas

Cuando necesita más de lo que SQLite puede ofrecer, incluyendo MySQL a su pila de
implementación, al igual que cualquier servidor de base de datos independiente, brinda mucha
libertad operativa junto con algunas características avanzadas.

Alta seguridad

Las características de seguridad de MySQL proporcionan una protección confiable para el


acceso a datos (y el uso) de una manera simple.

Sitios web y aplicaciones web

La gran mayoría de los sitios web (y aplicaciones web) simplemente pueden trabajar en
MySQL a pesar de las limitaciones. Esta herramienta flexible y algo escalable es fácil de usar y fácil
de administrar, lo que resulta muy útil a largo plazo.

Soluciones personalizadas

Si está trabajando en una solución altamente específica y extremadamente personalizada,


MySQL puede alinearse fácilmente y seguir sus reglas gracias a su gran configuración y modos de
operación.

Cuándo no utilizar MySQL

Cumplimiento de SQL
Como MySQL no trata de implementar el estándar SQL completo, esta herramienta no es
completamente compatible con SQL. Si necesita integración con tales RDBMS, cambiar de MySQL
no será fácil.
Concurrencia

A pesar de que MySQL y algunos motores de almacenamiento funcionan muy bien con las
operaciones de lectura, las lecturas simultáneas de lectura pueden ser problemáticas.

La falta de características

Nuevamente, dependiendo de la elección del motor de base de datos, MySQL puede carecer de
ciertas características, como la búsqueda de texto completo.

PostgreSQL

Es el sistema de administración de bases de datos relacionales de código abierto [objeto]


avanzado que tiene el objetivo principal de ser compatible con los estándares y extensible.
PostgreSQL, o Postgres, intenta adoptar los estándares SQL ANSI / ISO junto con las revisiones.

En comparación con otros RDBMS, PostgreSQL se diferencia por su compatibilidad con la


funcionalidad de bases de datos relacionales y / o orientadas a objetos altamente requeridas e
integrales, como el soporte completo para transacciones confiables, es decir, Atomicidad,
Consistencia, Aislamiento, Durabilidad (ACID).

Debido a la poderosa tecnología subyacente, Postgre es extremadamente capaz de manejar


muchas tareas de manera muy eficiente. El soporte para la concurrencia se logra sin bloqueos de
lectura gracias a la implementación del Control de Concurrencia Multiversión (MVCC), que también
garantiza el cumplimiento de ACID.

Es altamente programable y, por lo tanto, extensible, con procedimientos personalizados que


se denominan "procedimientos almacenados". Estas funciones se pueden crear para simplificar la
ejecución de operaciones de base de datos repetida, compleja y, a menudo, necesarias.

Aunque este DBMS no tiene la popularidad de MySQL, existen muchas herramientas y


bibliotecas increíbles de terceros diseñadas para hacer que el trabajo con PostgreSQL sea simple, a
pesar de la naturaleza poderosa de esta base de datos. Hoy en día es posible obtener PostgreSQL
como un paquete de aplicaciones a través del administrador de paquetes predeterminado de
muchos sistemas operativos con facilidad.
Tipos de datos admitidos de PostgreSQL

bigint fecha numérico horaria


bigserial Precisión doble camino marca de tiempo
bit inet punto tsquery
booleano entero polígono tsvector
caja intervalo real txid_snapshot
[campos] [(p)]
bytea smallint uuid
línea
carácter variable de serie xml
lseg
carácter texto
macaddr
cidr tiempo
dinero
circulo hora

Ventajas de PostgreSQL

Un RDBMS compatible con el estándar SQL de código abierto:

PostgreSQL es de código abierto y gratuito, pero un sistema de administración de bases de


datos relacionales muy poderoso.

Comunidad fuerte

PostgreSQL cuenta con el respaldo de una comunidad dedicada y experimentada a la que


se puede acceder a través de bases de conocimiento y sitios de preguntas y respuestas 24/7 de
forma gratuita.

Fuerte soporte de terceros

Independientemente de las características extremadamente avanzadas, PostgreSQL está


adornado con muchas herramientas geniales y de código abierto de terceros para diseñar, gestionar
y utilizar el sistema de gestión.
Extensible

Es posible extender PostgreSQL programáticamente con procedimientos almacenados,


como debería ser un RDBMS avanzado.

Objetivo

PostgreSQL no es solo un sistema de administración de bases de datos relacionales sino


objetivo, con soporte para anidamiento, y más.

Desventajas de PostgreSQL

Actuación

Para las operaciones simples de lectura pesada, PostgreSQL puede ser una
sobreestimación y puede parecer menos eficiente que las contrapartes, como MySQL.

Popularidad

Dada la naturaleza de esta herramienta, carece de popularidad en términos de popularidad,


a pesar de la gran cantidad de implementaciones, que pueden afectar la facilidad con la que se
puede obtener soporte.

Alojamiento

Debido a los factores mencionados anteriormente, es más difícil que los hosts o proveedores
de servicios que ofrecen instancias administradas de PostgreSQL sean más difíciles.

Cuándo usar PostgreSQL

Integridad de los datos

Cuando la confiabilidad y la integridad de los datos son una necesidad absoluta sin excusas,
PostgreSQL es la mejor opción.

Procedimientos complejos y personalizados

Si requiere que su base de datos realice procedimientos personalizados, PostgreSQL, al ser


extensible, es la mejor opción.
Integración

En el futuro, si existe la posibilidad de que surja la necesidad de migrar todo el sistema de


bases de datos a una solución adecuada (por ejemplo, Oracle), PostgreSQL será la base más
compatible y fácil de usar para el cambio.

Diseños complejos

En comparación con otras implementaciones RDBMS de fuente abierta y gratuitas, para


diseños complejos de bases de datos, PostgreSQL ofrece la mayor cantidad en términos de
funcionalidad y posibilidades sin renunciar a otros activos valiosos.

Cuándo no utilizar PostgreSQL

Velocidad

Si todo lo que necesita son operaciones de lectura rápida , PostgreSQL no es la herramienta


adecuada.

Configuraciones simples

A menos que requiera integridad absoluta de los datos, compatibilidad con ACID o diseños
complejos, PostgreSQL puede ser una sobreestimación para configuraciones simples.

Replicación

A menos que esté dispuesto a gastar el tiempo, la energía y los recursos, lograr la
replicación con MySQL podría ser más simple para aquellos que carecen de la experiencia en
administración de sistemas y bases de datos.
¿Cuáles son las similitudes?

La única base de comparación razonable entre MySQL y PostgreSQL es que ambos son
proyectos de base de datos de código abierto. Sin embargo, aún ahí la similitud es pequeña. MySQL
está distribuido bajo una licencia “COPYLEFT” más restrictiva que obliga efectivamente a los
vendedores de software propietario a liberar su código o adquirir una licencia propietaria de una sola
entidad comercial y dueña de derechos de autor, Oracle. En contraste, PostgreSQL está distribuido
bajo los términos más permisivos que son prácticos. Los términos de licencia del proyecto son tan
liberales que es permitido crear derivados comerciales propietarios sin pagar regalías, como ya ha
sucedido, por ejemplo, en el caso de la solución de almacenamiento de datos Greenplum de EMC.

¿Cuáles son las diferencias?

Los proyectos tienen perspectivas técnicas radicalmente diferentes, y cada una está informada por
un conjunto completamente diferente de preocupaciones.

MySQL por otra parte, se ha enfocado tradicionalmente en aplicaciones web de lectura mayormente,
usualmente escritas en PHP, donde la principal preocupación es la optimización de consultas
sencillas.

Si bien ambos proyectos han mejorado considerablemente desde que se formaron inicialmente estas
impresiones, y una comparación es más difícil de hacer que antes, las bases técnicas y modos de
pensar de los desarrolladores que informaron estas percepciones iniciales continúan siendo una
influencia dominante en ambos proyectos.

PostgreSQL se ha enfocado tradicionalmente en la fiabilidad, integridad de datos y características


integradas enfocadas al desarrollador. Tiene un planificador de consultas extremadamente
sofisticado, que es capaz de unir cantidades relativamente grandes de tablas eficientemente.

Anda mungkin juga menyukai