PostgreSQL 9.2      Ernesto Quiñones Azcárate         Regional Press Contact              pe@postgresql.org               ...
PostgreSQL 9.2   Fecha de lanzamiento: 10 Sep. 2012  El proyecto PostgreSQL estaacostumbrandonos a publicar un   release m...
PostgreSQL 9.2Y los últimos cambios        son......                     PostgreSQL 9.2                               3/16
PostgreSQL 9.2¿Bases de datos muy grandes?Soporte comprobado de hasta 64 cores.●Esto es muy importante porque PostgreSQL u...
PostgreSQL 9.2¿Bases de datos muy grandes?●Index-only ScanEsto significa....al leer data de tuplas que son parte de unindi...
PostgreSQL 9.2¿Bases de datos muy grandes?Mejoras en:●● Administración de bloqueos.        ●   Se ha llegado a 350,000 lec...
PostgreSQL 9.2¿Necesidad de Redundancia y Escalabilidad?●9.0 Replicación Asíncrona●9.1 Replicación Síncrona..... y ahora R...
PostgreSQL 9.2¿Necesidad de Redundancia y Escalabilidad?OjO:●Es asíncrono●Funciona al estilo de la replicación implementad...
PostgreSQL 9.2Nuevos tipos de datos!!!!Range Types:Representan rangos de valores, se puede usar connúmeros enteros (normal...
PostgreSQL 9.2Nuevos tipos de datos!!!!Range Types:@> contains range  int4range(2,4) @> int4range(2,3)          <--true@> ...
PostgreSQL 9.2Nuevos tipos de datos!!!!JSON:Ahora PostgreSQL almacena tipos de datos JSON, estos datos sonvalidados para s...
PostgreSQL 9.2Y con el soporte de Json viene PL/V8Una nueva extensión para programar funcionesen javascript.CREATE OR REPL...
PostgreSQL 9.2     PL/CoffeeCREATE OR REPLACE FUNCTION simple_search_inventory(param_search json)  RETURNS json AS$$o = JS...
PostgreSQL 9.2Una nueva herramienta para los DBAspg_stat_statement para descubrir cuantas vecesun query ha sido ejecutado:...
PostgreSQL 9.2Todo esto y muchas más:http://www.postgresql.org/docs/9.2/static/release­9­2.html                           ...
Los invitamos a probar esta nueva     versión......GRACIAS!!!!!               Ernesto Quiñones Azcárate                  R...
Próximos SlideShares
Carregando em…5
×

PostgreSQL 9.2

1.962 visualizações

Publicada em

Presentación de lo nuevo en PostgreSQL 9.2

Publicada em: Educação
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

PostgreSQL 9.2

  1. 1. PostgreSQL 9.2 Ernesto Quiñones Azcárate Regional Press Contact pe@postgresql.org PostgreSQL 9.2 1/16
  2. 2. PostgreSQL 9.2 Fecha de lanzamiento: 10 Sep. 2012 El proyecto PostgreSQL estaacostumbrandonos a publicar un release mayor cada año :)Y las mejoras como siempre son sustanciales. PostgreSQL 9.2 2/16
  3. 3. PostgreSQL 9.2Y los últimos cambios son...... PostgreSQL 9.2 3/16
  4. 4. PostgreSQL 9.2¿Bases de datos muy grandes?Soporte comprobado de hasta 64 cores.●Esto es muy importante porque PostgreSQL usa1 core por conexión, mediciones extraoficialesindican que PostgreSQL administraeficientemente un nivel de concurrencia de 4 a 6veces la cantidad de cores que se le asignan. PostgreSQL 9.2 4/16
  5. 5. PostgreSQL 9.2¿Bases de datos muy grandes?●Index-only ScanEsto significa....al leer data de tuplas que son parte de unindice se realiza un “index scan”, el problema es que cuandose obtiene un set de datos en una lectura se puede habermodificado datos y los indices apuntan a datos modificados oinexistentes, solo se puede comprobar el resultadoaccediendo a los datos y comprobandolos.Si se considera que la tabla no será áltamente manipulada,activar esta nueva funcionalidad nos permite acceder almenos 5 veces más rápido a los datos ya que no se accede ala corroboración de los datos en si. PostgreSQL 9.2 5/16
  6. 6. PostgreSQL 9.2¿Bases de datos muy grandes?Mejoras en:●● Administración de bloqueos. ● Se ha llegado a 350,000 lecturas por segundo. ● Procesos de escritura más eficientes. ● Probado hasta 14,000 grabaciones por segundo. PostgreSQL 9.2 6/16
  7. 7. PostgreSQL 9.2¿Necesidad de Redundancia y Escalabilidad?●9.0 Replicación Asíncrona●9.1 Replicación Síncrona..... y ahora Replicación en Cascada PostgreSQL 9.2 7/16
  8. 8. PostgreSQL 9.2¿Necesidad de Redundancia y Escalabilidad?OjO:●Es asíncrono●Funciona al estilo de la replicación implementadaen la versión 9.0 copiando los archivos de WAL PostgreSQL 9.2 8/16
  9. 9. PostgreSQL 9.2Nuevos tipos de datos!!!!Range Types:Representan rangos de valores, se puede usar connúmeros enteros (normales y big), numéricos, horas yfechas, pero podemos crear los nuestros propiosusando “create type”.CREATE TABLE reservation (room int, during tsrange);INSERT INTO reservation VALUES (1108, [2010-01-01 14:30, 2010-01-01 15:30)); PostgreSQL 9.2 9/16
  10. 10. PostgreSQL 9.2Nuevos tipos de datos!!!!Range Types:@> contains range int4range(2,4) @> int4range(2,3) <--true@> contains element [2011-01-01,2011-03-01)::tsrange @> 2011-01-10::timestamp <--true<@ range is contained by int4range(2,4) <@ int4range(1,7) <--true<@ element is contained by 42 <@ int4range(1,7) <--false PostgreSQL 9.2 10/16
  11. 11. PostgreSQL 9.2Nuevos tipos de datos!!!!JSON:Ahora PostgreSQL almacena tipos de datos JSON, estos datos sonvalidados para ser aceptados y luego son almacenados como texto.Tenemos 2 funciones de apoyo:● array_to_json(anyarray [, pretty_bool])● row_to_json(record [, pretty_bool]) PostgreSQL 9.2 11/16
  12. 12. PostgreSQL 9.2Y con el soporte de Json viene PL/V8Una nueva extensión para programar funcionesen javascript.CREATE OR REPLACE FUNCTION plv8_test(keys text[], vals text[]) RETURNStext AS $$var o = {};for(var i=0; i<keys.length; i++){ o[keys[i]] = vals[i];}return JSON.stringify(o);$$ LANGUAGE plv8 IMMUTABLE STRICT;SELECT plv8_test(ARRAY[name, age], ARRAY[Tom, 29]); PostgreSQL 9.2 12/16
  13. 13. PostgreSQL 9.2 PL/CoffeeCREATE OR REPLACE FUNCTION simple_search_inventory(param_search json) RETURNS json AS$$o = JSON.parse(param_search);/** Take a json search request and output a json dataset **/rs = plv8.execute("SELECT prod_code, prod_name FROM inventory WHERE prod_name ILIKE $1 LIMIT $2OFFSET($3 - 1)*$2", [o.prod_name_search, o.num_per_page, o.page_num]);return JSON.stringify(rs);$$ LANGUAGE plv8 VOLATILE;CREATE OR REPLACE FUNCTION simple_search_inventory(param_search json) RETURNS json AS$$o = JSON.parse(param_search)## Take a json search request and output a json datasetrs = plv8.execute("SELECT prod_code, prod_name FROM inventory WHERE prod_name ILIKE $1 LIMIT $2OFFSET ($3 - 1)*$2", [o.prod_name_search, o.num_per_page, o.page_num])return JSON.stringify(rs)$$ LANGUAGE plcoffee VOLATILE; PostgreSQL 9.2 13/16
  14. 14. PostgreSQL 9.2Una nueva herramienta para los DBAspg_stat_statement para descubrir cuantas vecesun query ha sido ejecutado:=#SELECT * FROM words WHERE word= foo; word ­­­­­­    (0 ligne)=# SELECT * FROM words WHERE word= bar; word ­­­­­­ Bar=#select * from pg_stat_statements where query like %words where%;­[ RECORD 1 ]­­­­­­­+­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­userid              | 10dbid                | 16384query               | SELECT * FROM words WHERE word= ?;calls               | 2 PostgreSQL 9.2total_time          | 142.314 14/16
  15. 15. PostgreSQL 9.2Todo esto y muchas más:http://www.postgresql.org/docs/9.2/static/release­9­2.html PostgreSQL 9.2 15/16
  16. 16. Los invitamos a probar esta nueva versión......GRACIAS!!!!! Ernesto Quiñones Azcárate Regional Press Contact pe@postgresql.org PostgreSQL 9.2 16/16

×