SlideShare uma empresa Scribd logo
1 de 27
Baixar para ler offline
Most Wanted
Future PostgreSQL Features


      Peter Eisentraut
   petere@postgresql.org

       PostgreSQL Core Team
 Senior Software Engineer, F-Secure


        FOSDEM 2010
Top 5 Priorities 2008/before PostgreSQL 8.3


    1. Easy installation of PostgreSQL + accessories
    2. Simple built-in replication
    3. Getting rid of VACUUM
    4. Upgrade-in-place
    5. Driver quality and maintenance

       http://it.toolbox.com/blogs/database-soup/
       postgresql-development-priorities-31886
       http://wiki.postgresql.org/wiki/PgCon_2009_
       Developer_Meeting#Top_Adoption_Issues
       http://www.postgresql.org/community/survey.55
Top 5 Priorities 2008/before PostgreSQL 8.3


    1. Easy installation of PostgreSQL + accessories   "
    2. Simple built-in replication
    3. Getting rid of VACUUM    "
    4. Upgrade-in-place
    5. Driver quality and maintenance

       http://it.toolbox.com/blogs/database-soup/
       postgresql-development-priorities-31886
       http://wiki.postgresql.org/wiki/PgCon_2009_
       Developer_Meeting#Top_Adoption_Issues
       http://www.postgresql.org/community/survey.55
Top 5 Priorities 2009/before PostgreSQL 8.4




    1. Simple built-in replication
    2. Upgrade-in-place
    3. Administration and monitoring tools
    4. Driver quality and maintenance
    5. Modules and extension management
Top 5 Priorities 2009/before PostgreSQL 8.4




    1. Simple built-in replication
    2. Upgrade-in-place   "
    3. Administration and monitoring tools
    4. Driver quality and maintenance
    5. Modules and extension management
Top 5 Priorities 2010/before PostgreSQL 9.0




    1. Simple built-in replication
    2. (Upgrade in place)
    3. Administration and monitoring tools
    4. Driver quality and maintenance
    5. Modules and extension management
Top 5 Priorities 2010/before PostgreSQL 9.0




    1. Simple built-in replication   "
    2. (Upgrade in place)   "
    3. Administration and monitoring tools
    4. Driver quality and maintenance
    5. Modules and extension management
Top Priorities after PostgreSQL 9.0




      Administration and monitoring tools
      Driver quality and maintenance
      Modules and extension management
      Per-column locale/collation
      VLDB?
      Cloud?
UserVoice

            http://postgresql.uservoice.com/
Top Requests on UserVoice



   1. Materialized views
   2. Synchronous replication
   3. Parallel query
   4. Index-only scans
   5. MERGE/UPSERT/REPLACE
   6. Administration and monitoring tools
   7. In-place upgrades
   8. Partitioning
Status: Materialized Views




      User-space toolkit exists: http://tech.jonathangardner.
      net/wiki/PostgreSQL/Materialized_Views
      No core work planned
Status: Synchronous Replication




      9.0 will have “Hot Standby” and “Streaming Replication”
      Synchronous replication might be expected for 9.1
      More refinement work on streaming replication
Status: Parallel Query




      Conflicts with commercial interests
      Doubtful for the near future
Status: Parallel Query




      Conflicts with commercial interests
      Doubtful for the near future
      Wait! . . . Just in: Simon will fix it.
      http://database-explorer.blogspot.com/2010/02/
      parallel-query-1.html
Status: Index-Only Scans




      In progress
      Might be expected for 9.1
Status: MERGE/UPSERT/REPLACE
  Example:

  MERGE INTO table1 AS t
      USING table1 o
      ON (t.id = o.id)
      WHEN MATCHED
          THEN UPDATE SET a = 1, b = 2, c = 3
      WHEN NOT MATCHED
          THEN INSERT (id, a, b, c) VALUES (0, 1, 2, 3)
  http://en.wikipedia.org/wiki/Merge_(SQL)
Status: MERGE/UPSERT/REPLACE
  Example:

  MERGE INTO table1 AS t
      USING table1 o
      ON (t.id = o.id)
      WHEN MATCHED
          THEN UPDATE SET a = 1, b = 2, c = 3
      WHEN NOT MATCHED
          THEN INSERT (id, a, b, c) VALUES (0, 1, 2, 3)
  http://en.wikipedia.org/wiki/Merge_(SQL)
     No plans?
     Standardized since SQL:2003
     All other relevant SQL databases support some variant of
     this.
     Potential major blocker: new (predicate?) locking support
Status: Administration and Monitoring Tools




                          ?
Status: Administration and Monitoring Tools




                              ?
      Dozens of tools exist
      Problems need to be defined
Status: In-Place Upgrades




      8.3 -> 8.4 didn’t work very well
      8.4 -> 9.0 can be expected to work
      Will require new effort for each release
Status: Partitioning




      Constraint exclusion doesn’t scale
      Some work was proposed during 9.0 cycle
      Possible for 9.1
Status: Driver Quality and Maintenance




      Problem: most are underrecognized or “one-man” projects
      Need lots of help
Status: Per-column locale/collation




      Open question: glibc vs. ICU
      Could happen any day or never . . .
Status: Module and Extension Management




     Various ideas are/have been in prototype phases
     Current approach: PGAN
     Possible for 9.1
Crystal Ball




   Possible 9.1 features:
       Synchronous replication
       Index-only scans
       Partitioning
       PGAN
Crystal Ball




   Possible 9.1 features:
       Synchronous replication
       Index-only scans
       Partitioning
       PGAN
       ???
Rights and Attributions




   This presentation “Most Wanted: Future PostgreSQL Features” was authored by Peter Eisentraut and is licensed

   under the Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported license.

Mais conteúdo relacionado

Mais procurados

Hippo get together presentation solr integration
Hippo get together presentation   solr integrationHippo get together presentation   solr integration
Hippo get together presentation solr integration
Hippo
 
070517 Jena
070517 Jena070517 Jena
070517 Jena
yuhana
 

Mais procurados (20)

Hacking Oracle From Web Apps 1 9
Hacking Oracle From Web Apps 1 9Hacking Oracle From Web Apps 1 9
Hacking Oracle From Web Apps 1 9
 
Hippo get together presentation solr integration
Hippo get together presentation   solr integrationHippo get together presentation   solr integration
Hippo get together presentation solr integration
 
AEM Meetup Sydney - Content Migration with CRX2Oak
AEM Meetup Sydney - Content Migration with CRX2OakAEM Meetup Sydney - Content Migration with CRX2Oak
AEM Meetup Sydney - Content Migration with CRX2Oak
 
Java and SPARQL
Java and SPARQLJava and SPARQL
Java and SPARQL
 
Controlling execution plans 2014
Controlling execution plans   2014Controlling execution plans   2014
Controlling execution plans 2014
 
香港六合彩
香港六合彩香港六合彩
香港六合彩
 
0396 oracle-goldengate-12c-tutorial
0396 oracle-goldengate-12c-tutorial0396 oracle-goldengate-12c-tutorial
0396 oracle-goldengate-12c-tutorial
 
Just enough app server
Just enough app serverJust enough app server
Just enough app server
 
Open Ldap Integration and Configuration with Lifray 6.2
Open Ldap Integration and Configuration with Lifray 6.2Open Ldap Integration and Configuration with Lifray 6.2
Open Ldap Integration and Configuration with Lifray 6.2
 
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...
Real World Experience With Oracle Xml Database 11g An Oracle Ace’s Perspectiv...
 
070517 Jena
070517 Jena070517 Jena
070517 Jena
 
common_schema 2.0: DBA's Framework for MySQL
common_schema 2.0: DBA's Framework for MySQLcommon_schema 2.0: DBA's Framework for MySQL
common_schema 2.0: DBA's Framework for MySQL
 
Jena Programming
Jena ProgrammingJena Programming
Jena Programming
 
Mid term & final- preparation- student-review(Oracle)
Mid term & final- preparation- student-review(Oracle)Mid term & final- preparation- student-review(Oracle)
Mid term & final- preparation- student-review(Oracle)
 
Database 12c
Database 12cDatabase 12c
Database 12c
 
02 beginning code first
02   beginning code first02   beginning code first
02 beginning code first
 
Jena
JenaJena
Jena
 
Oracle Essentials Oracle Database 11g
Oracle Essentials   Oracle Database 11gOracle Essentials   Oracle Database 11g
Oracle Essentials Oracle Database 11g
 
Jdbc
JdbcJdbc
Jdbc
 
Introduction to Spring Boot
Introduction to Spring BootIntroduction to Spring Boot
Introduction to Spring Boot
 

Destaque

Destaque (6)

Porting Oracle Applications to PostgreSQL
Porting Oracle Applications to PostgreSQLPorting Oracle Applications to PostgreSQL
Porting Oracle Applications to PostgreSQL
 
Ashnik EnterpriseDB PostgreSQL - A real alternative to Oracle
Ashnik EnterpriseDB PostgreSQL - A real alternative to Oracle Ashnik EnterpriseDB PostgreSQL - A real alternative to Oracle
Ashnik EnterpriseDB PostgreSQL - A real alternative to Oracle
 
Migrating from Oracle to Postgres
Migrating from Oracle to PostgresMigrating from Oracle to Postgres
Migrating from Oracle to Postgres
 
DBaaS with EDB Postgres on AWS
DBaaS with EDB Postgres on AWSDBaaS with EDB Postgres on AWS
DBaaS with EDB Postgres on AWS
 
Key Methodologies for Migrating from Oracle to Postgres
Key Methodologies for Migrating from Oracle to PostgresKey Methodologies for Migrating from Oracle to Postgres
Key Methodologies for Migrating from Oracle to Postgres
 
Migration From Oracle to PostgreSQL
Migration From Oracle to PostgreSQLMigration From Oracle to PostgreSQL
Migration From Oracle to PostgreSQL
 

Semelhante a Most Wanted: Future PostgreSQL Features

Oracle Express Edition - Información de la Licencia (Library Manager).pdf
Oracle Express Edition - Información de la Licencia (Library Manager).pdfOracle Express Edition - Información de la Licencia (Library Manager).pdf
Oracle Express Edition - Información de la Licencia (Library Manager).pdf
Manuel Jose Mercado Martinez
 
Introduction to-release-11i-part-1-of-2-installation3771
Introduction to-release-11i-part-1-of-2-installation3771Introduction to-release-11i-part-1-of-2-installation3771
Introduction to-release-11i-part-1-of-2-installation3771
Mlx Le
 
Kelly potvin nosurprises_odtug_oow12
Kelly potvin nosurprises_odtug_oow12Kelly potvin nosurprises_odtug_oow12
Kelly potvin nosurprises_odtug_oow12
Enkitec
 
Application depolyment
Application depolymentApplication depolyment
Application depolyment
shriikantL
 

Semelhante a Most Wanted: Future PostgreSQL Features (20)

Upgrading 11i E-business Suite to R12 E-business Suite
Upgrading 11i E-business Suite to R12 E-business SuiteUpgrading 11i E-business Suite to R12 E-business Suite
Upgrading 11i E-business Suite to R12 E-business Suite
 
Oracle Express Edition - Información de la Licencia (Library Manager).pdf
Oracle Express Edition - Información de la Licencia (Library Manager).pdfOracle Express Edition - Información de la Licencia (Library Manager).pdf
Oracle Express Edition - Información de la Licencia (Library Manager).pdf
 
Oracle applications r12.2, ebr, online patching means lot of work for devel...
Oracle applications r12.2, ebr, online patching   means lot of work for devel...Oracle applications r12.2, ebr, online patching   means lot of work for devel...
Oracle applications r12.2, ebr, online patching means lot of work for devel...
 
CISOA Conference 2020 Banner 9 Development
CISOA Conference 2020 Banner 9 DevelopmentCISOA Conference 2020 Banner 9 Development
CISOA Conference 2020 Banner 9 Development
 
Introduction to-release-11i-part-1-of-2-installation3771
Introduction to-release-11i-part-1-of-2-installation3771Introduction to-release-11i-part-1-of-2-installation3771
Introduction to-release-11i-part-1-of-2-installation3771
 
ESIGate dev meeting #4 21-11-2013
ESIGate dev meeting #4 21-11-2013ESIGate dev meeting #4 21-11-2013
ESIGate dev meeting #4 21-11-2013
 
Using Delta Lake to Transform a Legacy Apache Spark to Support Complex Update...
Using Delta Lake to Transform a Legacy Apache Spark to Support Complex Update...Using Delta Lake to Transform a Legacy Apache Spark to Support Complex Update...
Using Delta Lake to Transform a Legacy Apache Spark to Support Complex Update...
 
Liquibase få kontroll på dina databasförändringar
Liquibase   få kontroll på dina databasförändringarLiquibase   få kontroll på dina databasförändringar
Liquibase få kontroll på dina databasförändringar
 
Spring data jpa are used to develop spring applications
Spring data jpa are used to develop spring applicationsSpring data jpa are used to develop spring applications
Spring data jpa are used to develop spring applications
 
Upgrading to SharePoint 2010 - Teched Middle East
Upgrading to SharePoint 2010 - Teched Middle EastUpgrading to SharePoint 2010 - Teched Middle East
Upgrading to SharePoint 2010 - Teched Middle East
 
Tackling performance in the WordPress ecosystem at scale
Tackling performance in the WordPress ecosystem at scaleTackling performance in the WordPress ecosystem at scale
Tackling performance in the WordPress ecosystem at scale
 
Oracle RAC BP for Upgrade & More by Anil Nair and Markus Michalewicz
Oracle RAC BP for Upgrade & More by Anil Nair and Markus MichalewiczOracle RAC BP for Upgrade & More by Anil Nair and Markus Michalewicz
Oracle RAC BP for Upgrade & More by Anil Nair and Markus Michalewicz
 
Kelly potvin nosurprises_odtug_oow12
Kelly potvin nosurprises_odtug_oow12Kelly potvin nosurprises_odtug_oow12
Kelly potvin nosurprises_odtug_oow12
 
Java EE8 - by Kito Mann
Java EE8 - by Kito Mann Java EE8 - by Kito Mann
Java EE8 - by Kito Mann
 
Extreme Availability using Oracle 12c Features: Your very last system shutdown?
Extreme Availability using Oracle 12c Features: Your very last system shutdown?Extreme Availability using Oracle 12c Features: Your very last system shutdown?
Extreme Availability using Oracle 12c Features: Your very last system shutdown?
 
SSDT unleashed
SSDT unleashedSSDT unleashed
SSDT unleashed
 
Django Proposal.pdf
Django Proposal.pdfDjango Proposal.pdf
Django Proposal.pdf
 
SynapseIndia drupal presentation on drupal info
SynapseIndia drupal  presentation on drupal infoSynapseIndia drupal  presentation on drupal info
SynapseIndia drupal presentation on drupal info
 
Application depolyment
Application depolymentApplication depolyment
Application depolyment
 
Javaone 2014
Javaone 2014Javaone 2014
Javaone 2014
 

Mais de Peter Eisentraut

Replication Solutions for PostgreSQL
Replication Solutions for PostgreSQLReplication Solutions for PostgreSQL
Replication Solutions for PostgreSQL
Peter Eisentraut
 
The Common Debian Build System (CDBS)
The Common Debian Build System (CDBS)The Common Debian Build System (CDBS)
The Common Debian Build System (CDBS)
Peter Eisentraut
 

Mais de Peter Eisentraut (20)

Programming with Python and PostgreSQL
Programming with Python and PostgreSQLProgramming with Python and PostgreSQL
Programming with Python and PostgreSQL
 
Getting Started with PL/Proxy
Getting Started with PL/ProxyGetting Started with PL/Proxy
Getting Started with PL/Proxy
 
Linux distribution for the cloud
Linux distribution for the cloudLinux distribution for the cloud
Linux distribution for the cloud
 
Porting Applications From Oracle To PostgreSQL
Porting Applications From Oracle To PostgreSQLPorting Applications From Oracle To PostgreSQL
Porting Applications From Oracle To PostgreSQL
 
PostgreSQL and XML
PostgreSQL and XMLPostgreSQL and XML
PostgreSQL and XML
 
XML Support: Specifications and Development
XML Support: Specifications and DevelopmentXML Support: Specifications and Development
XML Support: Specifications and Development
 
PostgreSQL: Die Freie Datenbankalternative
PostgreSQL: Die Freie DatenbankalternativePostgreSQL: Die Freie Datenbankalternative
PostgreSQL: Die Freie Datenbankalternative
 
The Road to the XML Type: Current and Future Developments
The Road to the XML Type: Current and Future DevelopmentsThe Road to the XML Type: Current and Future Developments
The Road to the XML Type: Current and Future Developments
 
Access ohne Access: Freie Datenbank-Frontends
Access ohne Access: Freie Datenbank-FrontendsAccess ohne Access: Freie Datenbank-Frontends
Access ohne Access: Freie Datenbank-Frontends
 
PostgreSQL and PL/Java
PostgreSQL and PL/JavaPostgreSQL and PL/Java
PostgreSQL and PL/Java
 
Replication Solutions for PostgreSQL
Replication Solutions for PostgreSQLReplication Solutions for PostgreSQL
Replication Solutions for PostgreSQL
 
PostgreSQL News
PostgreSQL NewsPostgreSQL News
PostgreSQL News
 
PostgreSQL News
PostgreSQL NewsPostgreSQL News
PostgreSQL News
 
Access ohne Access: Freie Datenbank-Frontends
Access ohne Access: Freie Datenbank-FrontendsAccess ohne Access: Freie Datenbank-Frontends
Access ohne Access: Freie Datenbank-Frontends
 
Docbook: Textverarbeitung mit XML
Docbook: Textverarbeitung mit XMLDocbook: Textverarbeitung mit XML
Docbook: Textverarbeitung mit XML
 
Collateral Damage: Consequences of Spam and Virus Filtering for the E-Mail Sy...
Collateral Damage: Consequences of Spam and Virus Filtering for the E-Mail Sy...Collateral Damage: Consequences of Spam and Virus Filtering for the E-Mail Sy...
Collateral Damage: Consequences of Spam and Virus Filtering for the E-Mail Sy...
 
Collateral Damage: Consequences of Spam and Virus Filtering for the E-Mail S...
Collateral Damage:
Consequences of Spam and Virus Filtering for the E-Mail S...Collateral Damage:
Consequences of Spam and Virus Filtering for the E-Mail S...
Collateral Damage: Consequences of Spam and Virus Filtering for the E-Mail S...
 
Spaß mit PostgreSQL
Spaß mit PostgreSQLSpaß mit PostgreSQL
Spaß mit PostgreSQL
 
The Common Debian Build System (CDBS)
The Common Debian Build System (CDBS)The Common Debian Build System (CDBS)
The Common Debian Build System (CDBS)
 
The Lives of Others: Open-Source Development Practices Elsewhere
The Lives of Others: Open-Source Development Practices ElsewhereThe Lives of Others: Open-Source Development Practices Elsewhere
The Lives of Others: Open-Source Development Practices Elsewhere
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Último (20)

Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 

Most Wanted: Future PostgreSQL Features

  • 1. Most Wanted Future PostgreSQL Features Peter Eisentraut petere@postgresql.org PostgreSQL Core Team Senior Software Engineer, F-Secure FOSDEM 2010
  • 2. Top 5 Priorities 2008/before PostgreSQL 8.3 1. Easy installation of PostgreSQL + accessories 2. Simple built-in replication 3. Getting rid of VACUUM 4. Upgrade-in-place 5. Driver quality and maintenance http://it.toolbox.com/blogs/database-soup/ postgresql-development-priorities-31886 http://wiki.postgresql.org/wiki/PgCon_2009_ Developer_Meeting#Top_Adoption_Issues http://www.postgresql.org/community/survey.55
  • 3. Top 5 Priorities 2008/before PostgreSQL 8.3 1. Easy installation of PostgreSQL + accessories " 2. Simple built-in replication 3. Getting rid of VACUUM " 4. Upgrade-in-place 5. Driver quality and maintenance http://it.toolbox.com/blogs/database-soup/ postgresql-development-priorities-31886 http://wiki.postgresql.org/wiki/PgCon_2009_ Developer_Meeting#Top_Adoption_Issues http://www.postgresql.org/community/survey.55
  • 4. Top 5 Priorities 2009/before PostgreSQL 8.4 1. Simple built-in replication 2. Upgrade-in-place 3. Administration and monitoring tools 4. Driver quality and maintenance 5. Modules and extension management
  • 5. Top 5 Priorities 2009/before PostgreSQL 8.4 1. Simple built-in replication 2. Upgrade-in-place " 3. Administration and monitoring tools 4. Driver quality and maintenance 5. Modules and extension management
  • 6. Top 5 Priorities 2010/before PostgreSQL 9.0 1. Simple built-in replication 2. (Upgrade in place) 3. Administration and monitoring tools 4. Driver quality and maintenance 5. Modules and extension management
  • 7. Top 5 Priorities 2010/before PostgreSQL 9.0 1. Simple built-in replication " 2. (Upgrade in place) " 3. Administration and monitoring tools 4. Driver quality and maintenance 5. Modules and extension management
  • 8. Top Priorities after PostgreSQL 9.0 Administration and monitoring tools Driver quality and maintenance Modules and extension management Per-column locale/collation VLDB? Cloud?
  • 9. UserVoice http://postgresql.uservoice.com/
  • 10. Top Requests on UserVoice 1. Materialized views 2. Synchronous replication 3. Parallel query 4. Index-only scans 5. MERGE/UPSERT/REPLACE 6. Administration and monitoring tools 7. In-place upgrades 8. Partitioning
  • 11. Status: Materialized Views User-space toolkit exists: http://tech.jonathangardner. net/wiki/PostgreSQL/Materialized_Views No core work planned
  • 12. Status: Synchronous Replication 9.0 will have “Hot Standby” and “Streaming Replication” Synchronous replication might be expected for 9.1 More refinement work on streaming replication
  • 13. Status: Parallel Query Conflicts with commercial interests Doubtful for the near future
  • 14. Status: Parallel Query Conflicts with commercial interests Doubtful for the near future Wait! . . . Just in: Simon will fix it. http://database-explorer.blogspot.com/2010/02/ parallel-query-1.html
  • 15. Status: Index-Only Scans In progress Might be expected for 9.1
  • 16. Status: MERGE/UPSERT/REPLACE Example: MERGE INTO table1 AS t USING table1 o ON (t.id = o.id) WHEN MATCHED THEN UPDATE SET a = 1, b = 2, c = 3 WHEN NOT MATCHED THEN INSERT (id, a, b, c) VALUES (0, 1, 2, 3) http://en.wikipedia.org/wiki/Merge_(SQL)
  • 17. Status: MERGE/UPSERT/REPLACE Example: MERGE INTO table1 AS t USING table1 o ON (t.id = o.id) WHEN MATCHED THEN UPDATE SET a = 1, b = 2, c = 3 WHEN NOT MATCHED THEN INSERT (id, a, b, c) VALUES (0, 1, 2, 3) http://en.wikipedia.org/wiki/Merge_(SQL) No plans? Standardized since SQL:2003 All other relevant SQL databases support some variant of this. Potential major blocker: new (predicate?) locking support
  • 18. Status: Administration and Monitoring Tools ?
  • 19. Status: Administration and Monitoring Tools ? Dozens of tools exist Problems need to be defined
  • 20. Status: In-Place Upgrades 8.3 -> 8.4 didn’t work very well 8.4 -> 9.0 can be expected to work Will require new effort for each release
  • 21. Status: Partitioning Constraint exclusion doesn’t scale Some work was proposed during 9.0 cycle Possible for 9.1
  • 22. Status: Driver Quality and Maintenance Problem: most are underrecognized or “one-man” projects Need lots of help
  • 23. Status: Per-column locale/collation Open question: glibc vs. ICU Could happen any day or never . . .
  • 24. Status: Module and Extension Management Various ideas are/have been in prototype phases Current approach: PGAN Possible for 9.1
  • 25. Crystal Ball Possible 9.1 features: Synchronous replication Index-only scans Partitioning PGAN
  • 26. Crystal Ball Possible 9.1 features: Synchronous replication Index-only scans Partitioning PGAN ???
  • 27. Rights and Attributions This presentation “Most Wanted: Future PostgreSQL Features” was authored by Peter Eisentraut and is licensed under the Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported license.