PostgreSQL

26
Ing. Luis A. Guevara Alcalde

description

Gobierno Regional de Lambayeque. PostgreSQL. Ing. Luis A. Guevara Alcalde. CONTENIDOS. ¿QUÉ ES? CARACTERÍSTICAS TÉCNICAS POSTGRES Y LOS ESTÁNDARES DE CALIDAD SOPORTE PARA POSTGRESQL QUIENES USAN POSTGRESQL EXPERIENCIAS DEL GOBIERNO REGIONAL LAMBAYEQUE - PowerPoint PPT Presentation

Transcript of PostgreSQL

Page 1: PostgreSQL

Ing. Luis A. Guevara Alcalde

Page 2: PostgreSQL

CONTENIDOS

• ¿QUÉ ES?

• CARACTERÍSTICAS TÉCNICAS

• POSTGRES Y LOS ESTÁNDARES DE CALIDAD

• SOPORTE PARA POSTGRESQL

• QUIENES USAN POSTGRESQL

• EXPERIENCIAS DEL GOBIERNO REGIONAL LAMBAYEQUE

• RECONOCIMIENTOS AL GOBIERNO REGIONAL

• REFERENCIAS

Page 3: PostgreSQL

¿QUE ES?

• Reconocido gestor de Base de datos relacional Open Source más avanzado del mundo.  

• Está liberado bajo licencia BSD.   • Historia :

• 1977 - 1985: Ingres. (Prof. M. Stonebraker)

University of California, Berkeley

• 1986 - 1994: Postgres. (POST-inGRES)University of California, Berkeley

• 1994 - 1995: Postgres95 (Portaron al lenguaje SQL)

• 1996 - hoy : PostgreSQLPostgreSQL Global Development Group.

• Reconocido gestor de Base de datos relacional Open Source más avanzado del mundo.  

• Está liberado bajo licencia BSD.   • Historia :

• 1977 - 1985: Ingres. (Prof. M. Stonebraker)

University of California, Berkeley

• 1986 - 1994: Postgres. (POST-inGRES)University of California, Berkeley

• 1994 - 1995: Postgres95 (Portaron al lenguaje SQL)

• 1996 - hoy : PostgreSQLPostgreSQL Global Development Group.

Page 4: PostgreSQL

CARACTERISTICAS TÉCNICAS

PostgreSQL tiene TODO LO QUE SE EXIGE de un gestor de bases de datos relacional:

PostgreSQL tiene TODO LO QUE SE EXIGE de un gestor de bases de datos relacional:

Características para la integridad de los datos: claves primarias, llaves foráneas con capacidad de actualizar en cascada o restringir la acción, restricción check, restricción de unicidad y restricción not null.

Características para la integridad de los datos: claves primarias, llaves foráneas con capacidad de actualizar en cascada o restringir la acción, restricción check, restricción de unicidad y restricción not null.

Page 5: PostgreSQL

CARACTERISTICAS TÉCNICAS

Es conforme al estándar SQL.  Se sujeta fuertemente a los estándares ANSI-SQL 92/99

• Transacciones anidadas. • INNER / OUTER JOIN • Sub Consultas • Agrupamiento• Últimamente se han añadido

características del SQL2003. 

Es conforme al estándar SQL.  Se sujeta fuertemente a los estándares ANSI-SQL 92/99

• Transacciones anidadas. • INNER / OUTER JOIN • Sub Consultas • Agrupamiento• Últimamente se han añadido

características del SQL2003. 

Page 6: PostgreSQL

CARACTERISTICAS TÉCNICAS

• Resistencia a fallas.  Escritura adelantada de registros (WAL) para evitar pérdidas de datos en caso de fallos por: Energía, Sistema Operativo, Hardware.

• Cumple completamente con las reglas ACID. (Atomicity, Consistency, Isolation, Durability).   

• Disparadores (triggers).

• Sistema de reglas (el sistema re-escritor de consultas), permite identificar ciertas acciones sobre una tabla y reemplazarlas por otras o ejecutar adicionales. 

• Resistencia a fallas.  Escritura adelantada de registros (WAL) para evitar pérdidas de datos en caso de fallos por: Energía, Sistema Operativo, Hardware.

• Cumple completamente con las reglas ACID. (Atomicity, Consistency, Isolation, Durability).   

• Disparadores (triggers).

• Sistema de reglas (el sistema re-escritor de consultas), permite identificar ciertas acciones sobre una tabla y reemplazarlas por otras o ejecutar adicionales. 

Page 7: PostgreSQL

CARACTERISTICAS TÉCNICAS

• Vistas. • PostgreSQL es muy Extensible:

• Funciones.

• Agregación.

• Tipos de datos.  Permite la creación de tipos de datos personalizados.

• Indices.  compuestos, únicos, parciales, funcionales (sobre funciones) que pueden ser definidos como B-tree, R-tree, hash o GiST, y toda la infraestructura necesaria para extender estos tipos de índices;

• Operadores.

• Vistas. • PostgreSQL es muy Extensible:

• Funciones.

• Agregación.

• Tipos de datos.  Permite la creación de tipos de datos personalizados.

• Indices.  compuestos, únicos, parciales, funcionales (sobre funciones) que pueden ser definidos como B-tree, R-tree, hash o GiST, y toda la infraestructura necesaria para extender estos tipos de índices;

• Operadores.

Page 8: PostgreSQL

CARACTERISTICAS TÉCNICAS

• Funciones o procedimientos almacenados: • Pueden escribirse en múltiples

lenguajes. PLSQL, C, Java, Perl, R Python, Ruby, Tcl, PHP,  así como su lenguaje nativo PL/PGSQL. 

• Se usan de tres formas: Las que retornan o no valores, las que se usan de triggers, las que retornan tablas.

• Funciones o procedimientos almacenados: • Pueden escribirse en múltiples

lenguajes. PLSQL, C, Java, Perl, R Python, Ruby, Tcl, PHP,  así como su lenguaje nativo PL/PGSQL. 

• Se usan de tres formas: Las que retornan o no valores, las que se usan de triggers, las que retornan tablas.

Page 9: PostgreSQL

CARACTERISTICAS TÉCNICAS

• Metadatos son datos.  La descripcion de las tablas, está en tablas.

• Diseñado para entornos de gran volumen de información y alta concurrencia.  Utiliza la tecnología MVCC (Multi-Version Concurrency Control ), que sirve para lograr un control de concurrencia tan eficiente que generalmente no se requiere de bloqueos.

• Metadatos son datos.  La descripcion de las tablas, está en tablas.

• Diseñado para entornos de gran volumen de información y alta concurrencia.  Utiliza la tecnología MVCC (Multi-Version Concurrency Control ), que sirve para lograr un control de concurrencia tan eficiente que generalmente no se requiere de bloqueos.

Page 10: PostgreSQL

CARACTERISTICAS TÉCNICAS

• Es muy portable: Linux, Unix, BSD's, Mac OS X, Solaris, AIX, Irix, HP-UX, Windows.

• PITR. Puntos de recuperación en el tiempo.(respaldo incremental)

• Tablespaces. (Ubicaciones alternativas para los datos)

• Replicación síncrona y asincrónica.

• Respaldos en línea e incrementales.

• Es muy portable: Linux, Unix, BSD's, Mac OS X, Solaris, AIX, Irix, HP-UX, Windows.

• PITR. Puntos de recuperación en el tiempo.(respaldo incremental)

• Tablespaces. (Ubicaciones alternativas para los datos)

• Replicación síncrona y asincrónica.

• Respaldos en línea e incrementales.

Page 11: PostgreSQL

Definición de calidad del software

“Concordancia con los requisitos funcionales y

de rendimiento explícitamente establecidos con

los estándares de desarrollo explícitamente

documentados y con las características

implícitas que se espera de todo software

desarrollado profesionalmente”  (Pressman). 

Definición de calidad del software

“Concordancia con los requisitos funcionales y

de rendimiento explícitamente establecidos con

los estándares de desarrollo explícitamente

documentados y con las características

implícitas que se espera de todo software

desarrollado profesionalmente”  (Pressman). 

POSTGRES Y LOS ESTÁNDARES DE CALIDAD

Page 12: PostgreSQL

Estándares de desarrollo explícitamente documentados:  Se sujeta fuertemente a los estándares ANSI-SQL 92/99 (y últimamente se han añadido características del SQL2003).

Ha obtenido la certificación ISO/IEC 15408.  Define los criterios utilizados para evaluar si productos de tecnología de la información y los sistemas son diseñados y aplicados correctamente desde el punto de vista de la seguridad.

Mediante ACID cumple con el standard  ISO/IEC 10026-1

Estándares de desarrollo explícitamente documentados:  Se sujeta fuertemente a los estándares ANSI-SQL 92/99 (y últimamente se han añadido características del SQL2003).

Ha obtenido la certificación ISO/IEC 15408.  Define los criterios utilizados para evaluar si productos de tecnología de la información y los sistemas son diseñados y aplicados correctamente desde el punto de vista de la seguridad.

Mediante ACID cumple con el standard  ISO/IEC 10026-1

POSTGRES Y LOS ESTÁNDARES DE CALIDAD

Page 13: PostgreSQL

Código de Postgres fue sometido al análisis por Coverity Inc.

Fabricante de la solución de análisis de código fuente más avanzada para detectar defectos en el software y en la vulnerabilidad de la seguridad. 

Se econtraron sólo 20 defectos en más de 775,000 líneas de código (un defecto por casi 39.000 líneas de código). 

Según Coverity, es la tasa más baja de error para una base de datos relacional de código abierto.

Código de Postgres fue sometido al análisis por Coverity Inc.

Fabricante de la solución de análisis de código fuente más avanzada para detectar defectos en el software y en la vulnerabilidad de la seguridad. 

Se econtraron sólo 20 defectos en más de 775,000 líneas de código (un defecto por casi 39.000 líneas de código). 

Según Coverity, es la tasa más baja de error para una base de datos relacional de código abierto.

POSTGRES Y LOS ESTÁNDARES DE CALIDAD

Page 14: PostgreSQL

Al buscar vulneravilidades en http://cve.mitre.org/

Para Postgres 26 entradas de las que 25 están resueltas

POSTGRES Y LOS ESTÁNDARES DE CALIDAD

Page 15: PostgreSQL

POSTGRES Y LOS ESTÁNDARES DE CALIDAD

Cumple con factores que determinan la calidad del software  (Modelo Mccall). ISO 9126-1.

• Características operativas: Corrección, Fiabilidad, Eficiencia, Integridad, Facilidad de uso.

• Capacidad para soportar cambios: Facilidad de mantenimiento, Flexibilidad, Facilidad de prueba.

• Adaptabilidad a nuevos entornos: Portabilidad, Reusabilidad, Interoperabilidad

Cumple con factores que determinan la calidad del software  (Modelo Mccall). ISO 9126-1.

• Características operativas: Corrección, Fiabilidad, Eficiencia, Integridad, Facilidad de uso.

• Capacidad para soportar cambios: Facilidad de mantenimiento, Flexibilidad, Facilidad de prueba.

• Adaptabilidad a nuevos entornos: Portabilidad, Reusabilidad, Interoperabilidad

Page 16: PostgreSQL

SOPORTE PARA POSTGRESQL

• Soporte de la comunidad. El principal soporte de PostgreSQL. 

• Listas en inglés y español. http ://archives.Postgresql.Org/pgsql–es–ayuda/  Gran cohesión, bastante participación, participan algunos desarrolladores de Postgres. 

• Los canales de IRC. Server:irc.freenode.net.    #postgresql-es #postgresql-pe

• Soporte de la comunidad. El principal soporte de PostgreSQL. 

• Listas en inglés y español. http ://archives.Postgresql.Org/pgsql–es–ayuda/  Gran cohesión, bastante participación, participan algunos desarrolladores de Postgres. 

• Los canales de IRC. Server:irc.freenode.net.    #postgresql-es #postgresql-pe

Page 17: PostgreSQL

SOPORTE PARA POSTGRESQL

• Proyectos relacionados• PGFoundry.  http://pgfoundry.org/  repositorio de

proyectos.• Directorio "Contrib".  utilidades interesantes.

• Proyectos relacionados• PGFoundry.  http://pgfoundry.org/  repositorio de

proyectos.• Directorio "Contrib".  utilidades interesantes.

Page 18: PostgreSQL

Libros y documentación en línea con comentarios de los usuarios, artículos. 

Soporte comercial: EqSoft (Perú), Fujitsu (Australia); Hub.org (Canadá); PostgreSQL, Inc. (Canadá); credativ GmbH (Alemania); Afilias Limited (Irlanda); Software Research Associates (Japón, con subsidiarias en USA); Delta-Soft LLC (Rusia); 2ndQuadrant (Reino Unido); 800 Pound Gorilla (USA); Command Prompt, Inc. (USA); EnterpriseDB (USA); Greenplum (USA); Pervasive Software, Inc. (USA); RedHat, Inc. (USA), Sun Microsystems, Otros.

SOPORTE PARA POSTGRESQL

Page 19: PostgreSQL

QUIENES USAN POSTGRESQL

Agencias gubernamentales de Estados Unidos (City of Garden Grove, CA; National Gallery; Media Library project of the Library of Congress; US Army; Dept of Forestry; State of California; NCSA; National Weather Hidrology Laboratory). The Oxford University Computing Services, Skype, Yahoo, Fujitsu, Red Hat, Sun Microsystems.

Agencias gubernamentales de Estados Unidos (City of Garden Grove, CA; National Gallery; Media Library project of the Library of Congress; US Army; Dept of Forestry; State of California; NCSA; National Weather Hidrology Laboratory). The Oxford University Computing Services, Skype, Yahoo, Fujitsu, Red Hat, Sun Microsystems.

Page 20: PostgreSQL

QUIENES USAN POSTGRESQL

Ecuador:  

• Universidad Politécnica Salesiana. • Palo Santo Solutions

(http://www.palosanto.com/) Sistemas de información gerencial

• La SENACYT, Secretaría Nacional de Ciencia y Tecnología.

• La subsecretaria de informatica del Ecuador (www.compraspublicas.gov.ec).

• Aerogal (http://www.aerogal.com.ec/), Línea Aerea sistema de reservas de pasajes.

Ecuador:  

• Universidad Politécnica Salesiana. • Palo Santo Solutions

(http://www.palosanto.com/) Sistemas de información gerencial

• La SENACYT, Secretaría Nacional de Ciencia y Tecnología.

• La subsecretaria de informatica del Ecuador (www.compraspublicas.gov.ec).

• Aerogal (http://www.aerogal.com.ec/), Línea Aerea sistema de reservas de pasajes.

Page 21: PostgreSQL

QUIENES USAN POSTGRESQL

Perú:

• Asociación de empleados del BCP.

• Americatel

• Camara de Comercio de Lima

• Prompyme atiende el portal de compras

del estado.

• Grupo Carolina.  Sistema de ordenes de

trabajo.

• Gobierno Regional Lambayeque

Perú:

• Asociación de empleados del BCP.

• Americatel

• Camara de Comercio de Lima

• Prompyme atiende el portal de compras

del estado.

• Grupo Carolina.  Sistema de ordenes de

trabajo.

• Gobierno Regional Lambayeque

Page 22: PostgreSQL

EXPERIENCIAS DEL GOBIERNO REGIONAL LAMBAYEQUE

•Tenemos 5 años usando Postgres. •Sistemas / Módulos desarrollados en PHP y Postgresql.

• SisGeDo.  Sistema de Gestión Documentaria.

•Tenemos 5 años usando Postgres. •Sistemas / Módulos desarrollados en PHP y Postgresql.

• SisGeDo.  Sistema de Gestión Documentaria.

Descripción

Gestiona toda la documentación interna y externa en todo el Gobierno Regional, comprendiendo la sede y sus 15 entidades externas. Diariamente se registran un promedio de 1600 expedientes y 14000 movimientos.

Módulos • Gestión Documentaria.• Mensajero Institucional.- Chat institucional tipo messenger

para facilitar la comunicación en línea entre todos los empleados y con la población general.

Base de datos

Tamaño: 5.4 GB Tablas: 19 Functions: 16 Triggers: 5 Índices: 48 Número de registros que contiene la tabla de movimientos: 3‘282,798 registros

Promedio de usuarios que accede al sistema diariamente

250

Page 23: PostgreSQL

oSIGA.  Sistema Integrado de Gestión AdministrativaoSIGA.  Sistema Integrado de Gestión Administrativa

Descripción Comprende los módulos integrados de la Gestión Administrativa del Gobierno Regional.

Módulos

• Escalafón de personal. Gestión de plazas laborales. Control Presupuestal. Planilla de remuneraciones.- Al momento se general el pago para 25,500

empleados(administrativos y docentes) a nivel regional. Convenios de planillas.- Vía internet ingresan proveedores (Bancos,

cooperativas, asociaciones, etc.). Logística y Almacén. Tesorería. Contabilidad. Transparencia pública. Gestión educativa. Control de Arquitectura informática. Administración de portales web.

Base de datos

Tamaño: 13 GB Tablas: 179 Views: 9 Functions: 108 Indices: 256 Número de registros que contiene la tabla con más movimientos: 8‘520,074 registros

Promedio de usuarios que accede al sistema diariamente

150

EXPERIENCIAS DEL GOBIERNO REGIONAL LAMBAYEQUE

Page 24: PostgreSQL

RECONOCIMIENTOS AL GOBIERNO REGIONAL:

• Premio a las Buenas Prácticas gubernamentales.

• Reconocimieto por parte de Proética e IPYS como primer Gobierno Regional con mayor facilidad al acceso a la información.

• Convenios establecidos con diferentes gobiernos regionales y municipalidades a nivel nacional. (Replicar experiencia).

• Invitación para participar en eventos relacionados al software libre organizados por entidades privadas y públicas a nivel nacional.

• Premio a las Buenas Prácticas gubernamentales.

• Reconocimieto por parte de Proética e IPYS como primer Gobierno Regional con mayor facilidad al acceso a la información.

• Convenios establecidos con diferentes gobiernos regionales y municipalidades a nivel nacional. (Replicar experiencia).

• Invitación para participar en eventos relacionados al software libre organizados por entidades privadas y públicas a nivel nacional.

Page 25: PostgreSQL

REFERENCIAS• http://www.regionlambayeque.gob.pe/

• http://www.postgresql.org (Sitio principal de PostgreSQL)

•  http://pgfoundry.org (Sitio de proyectos PostgreSQL)

• http://www.postgresql.org/about/awards (Reconocimientos)

• http://www.nttdata.co.jp/en/media/2007/041100.html

• http://es.wikipedia.org/wiki/ACID

• “PostgreSQL: Introduction and Concepts” www.postgresql.org/docs/awbook.html

• http://troels.arvin.dk/db/rdbms/

• http://en.wikipedia.org/wiki/Comparison_of_SQL_database_management_systems

• http://www.regionlambayeque.gob.pe/

• http://www.postgresql.org (Sitio principal de PostgreSQL)

•  http://pgfoundry.org (Sitio de proyectos PostgreSQL)

• http://www.postgresql.org/about/awards (Reconocimientos)

• http://www.nttdata.co.jp/en/media/2007/041100.html

• http://es.wikipedia.org/wiki/ACID

• “PostgreSQL: Introduction and Concepts” www.postgresql.org/docs/awbook.html

• http://troels.arvin.dk/db/rdbms/

• http://en.wikipedia.org/wiki/Comparison_of_SQL_database_management_systems