面向PostgreSQL的开源列面向存储引擎?

Rob*_*Rob 23 postgresql column-oriented

是否有任何开源项目正在为PostgreSQL创建面向列的存储引擎?我知道雅虎在内部创建了一个,并且在PostgreSQL上构建了以列为导向的商业产品.

Had*_*edi 18

Citus Data为PostgreSQL开发了一个开源的柱状商店扩展.它在Apache License v2.0下提供.它支持PostgreSQL 9.3及更高版本.

首先,创建扩展和外部服务器:

CREATE EXTENSION cstore_fdw;

CREATE SERVER cstore_server FOREIGN DATA WRAPPER cstore_fdw;
Run Code Online (Sandbox Code Playgroud)

接下来,创建一些外表:

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');
Run Code Online (Sandbox Code Playgroud)

最后,COPY数据进入表中:

COPY customer_reviews FROM '/home/user/customer_reviews_1998.csv' WITH CSV;
Run Code Online (Sandbox Code Playgroud)

可以像查看任何其他表一样查询外部表.您甚至可以使用常规表将它们连接起来.

更多示例和信息可在相关博客文章项目主页中找到.


Rob*_*Rob 5

这里缺乏回应和我自己的研究似乎表明,确实没有向PostgreSQL添加列存储的开源计划.

2008年有一些关于雅虎可能外包珠穆朗玛峰(他们的PostgreSQL专栏店后端)的讨论,所以这里希望他们会发布它.