2009-05-04 7 views

Antwort

5

Das Fehlen von Antworten hier und meine eigene Forschung scheint darauf hinzuweisen, dass es tatsächlich keine Open-Source-Initiativen gibt, um PostgreSQL Spaltenspeicher hinzuzufügen.

Es gab einige Gespräche im Jahr 2008 über Yahoo möglicherweise Everest Outsourcing (ihre Spalte speichern Backend für PostgreSQL), so hier hofft, dass sie es veröffentlichen werden.

3

Greenplum hat eine spaltenorientierte Speicher-Engine für PostgreSQL erstellt.

+2

Haben Sie einen Link zu ihrem spaltenorientierten Projekt? Obwohl Greenplum PostgreSQL-basiert ist, glaube ich nicht, dass sie ihre Technologie auf Open-Source-Basis anbieten. – jasonmp85

12

Citus Data hat eine Open-Source-Speichererweiterung für PostgreSQL entwickelt. Es ist unter der Apache-Lizenz v2.0 verfügbar. Es unterstützt PostgreSQL 9.3 und höher.

Zuerst Schaffung der Erweiterung und ein Fremdserver:

CREATE EXTENSION cstore_fdw; 

CREATE SERVER cstore_server FOREIGN DATA WRAPPER cstore_fdw; 

Als Nächstes erstellen Sie einige ausländische Tabellen:

CREATE FOREIGN TABLE customer_reviews 
(
    customer_id TEXT, 
    review_date DATE, 
    review_rating INTEGER, 
    review_votes INTEGER, 
    review_helpful_votes INTEGER, 
    product_id CHAR(10), 
    product_title TEXT, 
    product_sales_rank BIGINT, 
    product_group TEXT, 
    product_category TEXT, 
    product_subcategory TEXT, 
    similar_product_ids CHAR(10)[] 
) 
SERVER cstore_server 
OPTIONS(filename '/opt/citusdb/3.0/cstore/customer_reviews.cstore', 
     compression 'pglz'); 

, schließlich COPY Daten in die Tabelle:

COPY customer_reviews FROM '/home/user/customer_reviews_1998.csv' WITH CSV; 

Fremde Tabellen können abgefragt werden d wie jeder andere Tisch. Sie können sie sogar mit regulären Tabellen verbinden.

Weitere Beispiele und Informationen finden Sie in einer related blog post und the project's home page.

1

Ich war auf der Suche nach der gleichen Art von Erweiterung/Implementierung, während ich mit MonetDB spielte. Nach cstore_ftw von Citus Data zu finden kam ich in diesem Beitrag von MonetDB: https://www.monetdb.org/content/citusdb-postgresql-column-store-vs-monetdb-tpc-h-shootout

Seit cstore_ftw ist PostgreSQLs Vulkan-Stil Abfrage Prozessor, wir sofort den Verdacht, dass diese Komponente die Begrenzung Faktor auf seine Leistung sein .

Ich habe mich nicht getestet, aber (IMO) MonetDB sind ernst mit ihren Sachen. Ich denke, es wird perfekt sein, wenn MonetDB eine Erweiterung/Implementierung für PostgreSQL erstellt. Im Moment arbeite ich noch mit monetDB, während ich nach neuen Funktionen auf PostgreSQL suche.