Postgres, desarrollada originalmente en el Departamento de Ciencias de la Computación de la Universidad de California en Berkeley, fue pionera en muchos de los conceptos de bases de datos relacionales orientadas a objetos que ahora empiezan a estar disponibles en algunas bases de datos comerciales.
El Sistema Gestor de Bases de Datos Relacionales Orientadas a Objetos conocido como PostgreSQL (y brevemente llamado Postgres95)
PostgreSQL es un sistema de gestión de bases de datos objeto-relacional, distribuido bajo licencia BSD(Berkeley Software Distribution)
PostgreSQL utiliza un modelo cliente/servidor y usa multiprocesos en vez de multihilos para garantizar la estabilidad del sistema. Un fallo en uno de los procesos no afectará el resto y el sistema continuará funcionando.
Postgre ofrece una potencia adicional sustancial al incorporar los siguientes cuatro conceptos adicionales básicos en una vía en la que los usuarios pueden extender fácilmente el sistema.
·
Funciones
·
Operadores
·
Funciones de agregado
·
Métodos de indexación
·
Lenguajes procedurales
Características aportan potencia y flexibilidad adicional:
· Consultas complejas (subconsultas, joins, etc.)· Integridad referencial (claves primarias y foráneas)
· Restricciones (Constraints)
· Disparadores (triggers)
· Vistas (views)
· Reglas (rules)
· Integridad transaccional
· Control de concurrencia multiversión
Estas características colocan a Postgres en la categoría de las Bases de Datos identificadas como objeto-relacionales.
Soportando casi toda la sintaxis SQL (incluyendo subconsultas, transacciones, y tipos y funciones definidas por el usuario), contando también con un amplio conjunto de enlaces con lenguajes de programación (incluyendo C, C++, Java, perl, tcl y python).
Generales
· Integridad referencial
· Copias de seguridad en caliente (Online/ hot backups)
· Unicode
· Múltiples métodos de autentificación
· Acceso encriptado vía SSL, son las siglas en
inglés de Secure Socket Layer (en españolcapa de conexión segura).
· Completa documentación
·
Licencia
BSD (Berkeley Software Distribution)
·
Disponible para Linux y UNIX en todas sus
variantes (AIX, BSD, HP-UX, SGI IRIX, Mac OS X, Solaris, Tru64) y Windows
32/64bit.
SQL
·
SQL92,SQL99,SQL2003,SQL2008
·
Llaves primarias (primary keys) y foráneas
(foreign keys)
·
Check, Unique y Not null constraints
·
Restricciones de unicidad postergables
(deferrable constraints)
·
Columnas auto-incrementales
·
Índices compuestos, únicos, parciales y
funcionales en cualquiera de los métodos de almacenamiento disponibles, B-tree,
R-tree, hash ó GiST
·
Sub-selects
·
Consultas recursivas
·
Funciones 'Windows'
·
Joins
·
Vistas (views)
· Disparadores (triggers) comunes, por columna,
condicionales.
·
Reglas (Rules)
·
Herencia de tablas (Inheritance)
Algunos de los límites de PostgreSQL son:
Límite
|
Valor
|
Máximo
tamaño base de dato
|
Ilimitado (Depende de tu sistema de almacenamiento)
|
Máximo
tamaño de tabla
|
32 TB
|
Máximo
tamaño de fila
|
1.6 TB
|
Máximo
tamaño de campo
|
1 GB
|
Máximo
número de filas por tabla
|
Ilimitado
|
Máximo
número de columnas por tabla
|
250 - 1600 (dependiendo del tipo)
|
Máximo
número de indices por tabla
|
Ilimitado
|
Tipo de Datos
Entre los tipos de datos más importantes que admite PostgreSQL tenemos:
Tipo
|
Descripción
|
bool
|
valor lógico o booleano
(true/false)
|
char(n)
|
cadena de caracteres de tamaño
fijo
|
date
|
fecha (sin hora)
|
float 4/8
|
número de punto flotante
|
float8
|
número de punto flotante de doble
precisión
|
int2
|
entero de dos bytes con signo
|
integer, int4
|
entero de cuatro bytes con signo
|
money
|
cantidad monetaria
|
time
|
hora en horas, minutos, segundos
y centésimas
|
timespan
|
intervalo de tiempo
|
timestamp
|
fecha y hora con zonificación
|
varchar(n)
|
cadena de caracteres de tamaño
variable
|
No hay comentarios:
Publicar un comentario