SlideShare une entreprise Scribd logo
1  sur  27
Télécharger pour lire hors ligne
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.

Contenu connexe

Tendances

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 9sumsid1234
 
Hippo get together presentation solr integration
Hippo get together presentation   solr integrationHippo get together presentation   solr integration
Hippo get together presentation solr integrationHippo
 
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 CRX2OakMichael Henderson
 
Java and SPARQL
Java and SPARQLJava and SPARQL
Java and SPARQLRaji Ghawi
 
Controlling execution plans 2014
Controlling execution plans   2014Controlling execution plans   2014
Controlling execution plans 2014Enkitec
 
香港六合彩
香港六合彩香港六合彩
香港六合彩iewsxc
 
0396 oracle-goldengate-12c-tutorial
0396 oracle-goldengate-12c-tutorial0396 oracle-goldengate-12c-tutorial
0396 oracle-goldengate-12c-tutorialKlausePaulino
 
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.2Vinaykumar Hebballi
 
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...Marco Gralike
 
070517 Jena
070517 Jena070517 Jena
070517 Jenayuhana
 
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 MySQLShlomi Noach
 
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)than sare
 
02 beginning code first
02   beginning code first02   beginning code first
02 beginning code firstMaxim Shaptala
 
Introduction to Spring Boot
Introduction to Spring BootIntroduction to Spring Boot
Introduction to Spring BootTrey Howard
 

Tendances (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
 

En vedette

Porting Oracle Applications to PostgreSQL
Porting Oracle Applications to PostgreSQLPorting Oracle Applications to PostgreSQL
Porting Oracle Applications to PostgreSQLPeter Eisentraut
 
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 Ashnikbiz
 
Migrating from Oracle to Postgres
Migrating from Oracle to PostgresMigrating from Oracle to Postgres
Migrating from Oracle to PostgresEDB
 
DBaaS with EDB Postgres on AWS
DBaaS with EDB Postgres on AWSDBaaS with EDB Postgres on AWS
DBaaS with EDB Postgres on AWSEDB
 
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 PostgresEDB
 
Migration From Oracle to PostgreSQL
Migration From Oracle to PostgreSQLMigration From Oracle to PostgreSQL
Migration From Oracle to PostgreSQLPGConf APAC
 

En vedette (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
 

Similaire à 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).pdfManuel Jose Mercado Martinez
 
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...Ajith Narayanan
 
CISOA Conference 2020 Banner 9 Development
CISOA Conference 2020 Banner 9 DevelopmentCISOA Conference 2020 Banner 9 Development
CISOA Conference 2020 Banner 9 DevelopmentBrad Rippe
 
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-installation3771Mlx Le
 
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...Databricks
 
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ändringarSqueed
 
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 applicationsmichaelaaron25322
 
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 EastJoel Oleson
 
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 scaleFelix Arntz
 
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 MichalewiczMarkus Michalewicz
 
Kelly potvin nosurprises_odtug_oow12
Kelly potvin nosurprises_odtug_oow12Kelly potvin nosurprises_odtug_oow12
Kelly potvin nosurprises_odtug_oow12Enkitec
 
Java EE8 - by Kito Mann
Java EE8 - by Kito Mann Java EE8 - by Kito Mann
Java EE8 - by Kito Mann Kile Niklawski
 
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?Toronto-Oracle-Users-Group
 
Django Proposal.pdf
Django Proposal.pdfDjango Proposal.pdf
Django Proposal.pdfdeepak474135
 
SynapseIndia drupal presentation on drupal info
SynapseIndia drupal  presentation on drupal infoSynapseIndia drupal  presentation on drupal info
SynapseIndia drupal presentation on drupal infoSynapseindiappsdevelopment
 
Application depolyment
Application depolymentApplication depolyment
Application depolymentshriikantL
 

Similaire à 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
 

Plus de Peter Eisentraut

Programming with Python and PostgreSQL
Programming with Python and PostgreSQLProgramming with Python and PostgreSQL
Programming with Python and PostgreSQLPeter Eisentraut
 
Getting Started with PL/Proxy
Getting Started with PL/ProxyGetting Started with PL/Proxy
Getting Started with PL/ProxyPeter Eisentraut
 
Linux distribution for the cloud
Linux distribution for the cloudLinux distribution for the cloud
Linux distribution for the cloudPeter Eisentraut
 
Porting Applications From Oracle To PostgreSQL
Porting Applications From Oracle To PostgreSQLPorting Applications From Oracle To PostgreSQL
Porting Applications From Oracle To PostgreSQLPeter Eisentraut
 
XML Support: Specifications and Development
XML Support: Specifications and DevelopmentXML Support: Specifications and Development
XML Support: Specifications and DevelopmentPeter Eisentraut
 
PostgreSQL: Die Freie Datenbankalternative
PostgreSQL: Die Freie DatenbankalternativePostgreSQL: Die Freie Datenbankalternative
PostgreSQL: Die Freie DatenbankalternativePeter Eisentraut
 
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 DevelopmentsPeter Eisentraut
 
Access ohne Access: Freie Datenbank-Frontends
Access ohne Access: Freie Datenbank-FrontendsAccess ohne Access: Freie Datenbank-Frontends
Access ohne Access: Freie Datenbank-FrontendsPeter Eisentraut
 
Replication Solutions for PostgreSQL
Replication Solutions for PostgreSQLReplication Solutions for PostgreSQL
Replication Solutions for PostgreSQLPeter Eisentraut
 
Access ohne Access: Freie Datenbank-Frontends
Access ohne Access: Freie Datenbank-FrontendsAccess ohne Access: Freie Datenbank-Frontends
Access ohne Access: Freie Datenbank-FrontendsPeter Eisentraut
 
Docbook: Textverarbeitung mit XML
Docbook: Textverarbeitung mit XMLDocbook: Textverarbeitung mit XML
Docbook: Textverarbeitung mit XMLPeter Eisentraut
 
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...Peter Eisentraut
 
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...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
 
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 ElsewherePeter Eisentraut
 

Plus 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
 

Dernier

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 

Dernier (20)

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 

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.