Postgres-XL

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Postgres-XL
Repositorygit.postgresql.org/gitweb/?p=postgres-xl.git
Engine
    Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
    TypeDistributed relational database management system
    LicensePostgreSQL License[1]
    Websitewww.postgres-xl.org [dead link]

    Postgres-XL was a distributed relational database management system (RDBMS) software based on PostgreSQL. It aims to provide feature parity with PostgreSQL while distributing the workload over a cluster. The name "Postgres-XL" stands for "eXtensible Lattice".[2]

    The last release of Postgres-XL was made in September 2018 and development ceased in October.[3] The website has also gone offline.

    Some of the ideas and “smaller scale” features of Postgres-XL (parallel query, partitioning, distribution mindset) have been absorbed later by PostgreSQL. The major “Postgres-XL style” features (full shared-nothing horizontal write scale, built-in GTM, transparent multi-node sharding across the cluster in core) are not for PostgreSQL design, and the Big Data technological ecosystems followed other directions: see Citus and pg_duckdb (or pg_mooncake).

    Postgres-XL is based on Postgres-XC, an earlier distributed PostgreSQL system developed by NTT Data and EnterpriseDB.[4] In 2012, the cloud database startup StormDB[5] adopted Postgres-XC and developed some proprietary extensions and improvements to it.[6] In 2013, StormDB was acquired by TransLattice,[6][7] and the improved software was open-sourced under the name "Postgres-XL" in 2014.[8][9] Since 2015, Postgres-XL development has also been supported by 2ndQuadrant.[4]

    Postgres-XL provides cluster-wide consistent transaction snapshots[10][11] via a central Global Transaction Manager (GTM) node. It requires a fast interconnect between nodes, so Postgres-XL is not suited to geographically distributed clusters. Larger queries can be split and parallelized between multiple nodes.[11] Individual database tables can be chosen to be fully replicated across the cluster (usually for smaller tables) or sharded between separate nodes (for write scalability).[12]

    See also

    [edit | edit source]

    References

    [edit | edit source]
    1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    2. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    3. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    4. ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    5. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    6. ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    7. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    8. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    9. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    10. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    11. ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    12. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    [edit | edit source]