PostgreSQL comenzó en 1986 como un proyecto de investigación en la Universidad de Berkeley. Se desarrolló activamente durante 8 años antes de ser comercializado como Ilustra. En 1995 fue renombrado a PostgreSQL cuando reemplazaron su lenguaje de consultas POSTQUEL por un subconjunto extendido de SQL. PostgreSQL es una base de datos de código abierto, multiplataforma y con características como soporte para tipos de datos extendidos, herencia entre tablas, y copias de seguridad en caliente.
Criterios ESG: fundamentos, aplicaciones y beneficios
PostgreSQL motor base datos
1. presentación
Nombre y apellido:
mary Isabel ciprian nivar
Materia:
base de datos
Tema:
Motor de base de datos
Matricula:
17-EIIN-1-012
Sección:
0541
fecha:
Día: 18 mes: 06 año:2018
2. Historia de PostgreSQL
• PostgreSQL (o Postgres) comenzó su vida en 1986 como POSTGRES, un proyecto de
investigación de la universidad de Berkeley en California, dirigido por el
investigador de base de datos de gran influencia Michael Stonebraker. En el diseño
de POSTGRES, el equipo de Stonebraker buscó mejorar a INGRES, un proyecto
prototipo anterior también dirigido por Stonebraker, principalmente a través del
soporte de tipos de datos definidos por el usuario (o “dominios”) con reglas
complejas de negocio arbitrarias y otros conceptos relacionados a los objetos.
• El equipo de Stonebraker desarrolló POSTGRES activamente por ocho años, y
desarrolló características que incluyen reglas, procedimientos y tipos extensivos
con índices. POSTGRES luego se comercializó como Ilustra, que luego fue adquirido
por Informe para integrarlo en su Servidor Universal. En 2001, IBM adquirió
Informe por la cifra de 1000 millones de dólares.
• POSTGRES usaba su propio lenguaje de consultas, POSTQUEL, Aunque
teóricamente superior al dominante SQL, con una mayor profundidad de
expresión debido a sus fundamentos teóricos más avanzados, en la práctica
POSTQUEL no se alineaba con las necesidades de la industria, que ya se había
estandarizado con SQL. Por esa razón, en 1995, dos estudiantes de Ph.D. en el
laboratorio de Stonebraker, Andrew Yu y Jolly Chen, reemplazaron POSTQUEL con
un subconjunto extendido de SQL. POSTGRES pasó a llamarse Postgres95.
3. Uso de PostgreSQL
El uso de caracteres en mayúscula en el nombre PostgreSQL puede confundir a
algunas personas a primera vista. Las distintas pronunciaciones de "SQL" pueden
llevar a confusión. Los desarrolladores de PostgreSQL lo pronuncian /poːst ɡɹɛs
kjuː ɛl/;. Es también común oír abreviadamente como simplemente "Postgres", el
que fue su nombre original. Debido a su soporte del estándar SQL entre la mayor
parte de bases de datos relacionales, la comunidad consideró cambiar el nombre
al anterior Postgres. Sin embargo, el PostgreSQL Core Team anunció en 2007 que
el producto seguiría llamándose PostgreSQL. El nombre hace referencia a los
orígenes del proyecto como la base de datos "post-Ingres", y los autores originales
también desarrollaron la base de datos Ingres.
4. Características de PostgreSQL
A continuación teneis algunas de las características más importantes y soportadas por PostgreSQL:
• Es una base de datos 100% ACID.
• Soporta distintos tipos de datos: además del soporte para los tipos base, también soporta datos de
tipo fecha, monetarios, elementos gráficos, datos sobre redes (MAC, IP ...), cadenas de bits, etc.
También permite la creación de tipos propios.
• Incluye herencia entre tablas, por lo que a este gestor de bases de datos se le incluye entre los
gestores objeto-relacionales.
• Copias de seguridad en caliente (Online/hot backups)
• Unicode
• Juegos de caracteres internacionales
• Regionalización por columna
• Multi-Version Concurrency Control (MVCC)
• Multiples métodos de autentificación
• Acceso encriptado via SSL
• SE-postgres
• Completa documentación
• Licencia BSD
• Disponible para Linux y UNIX en todas sus variantes (AIX, BSD, HP-UX, SGI IRIX, Mac OS X, Solaris, Tru64) y
Windows 32/64bit.
5. curiosidades de PostgreSQL
• Complementando el artículo anterior, aquí se le puede encontrar utilidad al
ejemplo tan extraño que utilicé en él (si piensas poner este artículo en práctica, no
dejes de ver el anterior para que no te lleves sorpresas desagradables).
• A veces hace falta lanzar de forma no interactiva un conjunto de
sentencias SQL (lote) asumiendo que el conjunto se ejecutará correctamente. Para
ello, se asume que en la base de datos se cumplen ciertas condiciones, que en el
momento de lanzar el lote de instrucciones o durante su ejecución podrían no
cumplirse.
Seguramente conozcas el concepto transacción en SQL. No siempre se puede
hacer uso de esta característica, especialmente cuando el tamaño del lote produce
grandes cambios en los datos (según la configuración de PostgreSQL, los
ficheros WAL necesarios para la transacción podrían desbordarse).
6. Ventajas de PostgreSQL
• A pesar de que la velocidad de respuesta pueda parecer deficiente en bases de datos
pequeñas, esa velocidad se mantiene al aumentar el tamaño de la base de datos, cosa
que no sucede con otros programas, que se enlentecen brutalmente.
• Instalación ilimitada: No se puede demandar a una empresa por instalarlo en más
ordenadores de los que la licencia permite, ya que no hay costo asociado a la licencia
de software. Esto permite un negocio más rentable con instalaciones a gran escala, no
debemos preocuparnos por ser auditados para ver si cumplimos con la licencia, y hay
flexibilidad y desarrollo sin costos adicionales de licenciamiento.
• Ahorros considerables de costos de operación: PostgreSQL ha sido diseñado para tener
un mantenimiento y ajuste menor que los productos de proveedores comerciales,
conservando todas las características, estabilidad y rendimiento.
• Estabilidad y confiabilidad: No se han presentado caídas de la base de datos.
• Extensible: El código fuente está disponible de forma gratuita, para que quien necesite
extender o personalizar el programa pueda hacerlo sin costes.
• Multiplataforma: Está disponible en casi cualquier Unix, con 34 plataformas en la última
versión estable, además de una versión nativa de Windows en estado de prueba. etc
7. Desventajas de PostgreSQL
• Es relativamente lento en inserciones y actualizaciones en bases de datos
pequeñas, PostgreSQL está diseñado para ambientes de alto volumen. Ésto hace
que la velocidad de respuesta pueda parecer lenta en comparación con bases de
datos de gran tamaño.
• Soporte oficial: No cuenta con un soporte en línea o telefónico. PostgreSQL cuenta
con foros oficiales donde los usuarios pueden exponer sus dudas que responden
otros usuarios de la comunidad. También, disponemos soporte
empresarial como EnterpriseDB o TodoPostgreSQL. Cabe resaltar que la
comunidad de usuarios PostgreSQL es una de las más activas en el mercado.
• La sintaxis de algunos de sus comando o sentencias puede llegar a no ser intuitiva
si no tienes un nivel medio de conocimientos en lenguaje SQL.
8. Ejemplos de PostgreSQL
• Otorgar privilegios en la tabla
• Si el usuario que crea la vista no es el propietario de la tabla o las tablas en las que
se basa la vista, el propietario de la tabla debe otorgarle al creador de la vista
como mínimo el privilegio de selección en la tabla.
• En este ejemplo, la tabla en la que se basa la vista (empleados) pertenece al
usuario gdb. El usuario que crea la vista es el usuario rocket.
• psql testdb gdb Enter password for user gdb: GRANT SELECT ON gdb.employees TO
rocket;