前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Apache Pinot 1.0发布,提供实时的分布式OLAP数据存储

Apache Pinot 1.0发布,提供实时的分布式OLAP数据存储

作者头像
深度学习与Python
发布2023-12-21 14:43:56
1740
发布2023-12-21 14:43:56
举报

作者 | Johan Janssen

译者 | 明知山

策划 | Tina

Apache Pinot 是一个使用 Java 编写的开源列式分布式数据存储系统。Pinot 通过在线分析处理 (OLAP) 来响应低延迟的多维分析 (MDA) 查询。

Pinot 最初在 2013 年作为 LinkedIn 的内部项目,用于支持分析解决方案,随后于 2015 年 6 月基于 Apache 2.0 许可开源。该项目于 2019 年 6 月成为 Apache 软件基金会的一部分。

在 1.0 版本发布之前的一年中,社区解决了 300 多个问题,包括引入新特性、提高性能和 bug 修复。目前该项目在 GitHub 上有 130 多万行代码,由 300 多名贡献者进行维护。

Apache Pinot 最适合用于分析不可变的实时摄入数据,尤其是在查询具有多个维度和度量的时间序列数据时。该项目使用 Apache Helix 作为集群管理嵌入式代理,使用 Apache Zookeeper 进行集群状态和健康的协调和维护。

Pinot 提供快速查询,能够在几十毫秒的 P90 延迟内过滤和聚合 PB 级的数据。数据可以使用流式解决方案(如 Apache Kafka、Apache Pulsar 和 AWS Kinesis)实时摄入,也可以使用 Apache Hadoop、Apache Spark 和 AWS S3 进行批量摄入。Pinot 具备了水平伸缩性和容错性。可使用 Pinot 查询语言 (PQL)、SQL 或 Trino 和 Presto SQL 查询引擎查询数据。PQL 支持类似于 SQL 的功能:选择、聚合、分组、排序和过滤。

该版本的关键特性之一是多阶段查询引擎的功能完整性。默认查询执行引擎从未针对复杂查询(如分布式连接和窗口操作)进行过优化。多阶段查询引擎支持多阶段运算符,如实时分布式连接和窗口操作,并配备了新的最小化了数据重洗的查询计划优化器。Apache Pinot 的文档解释了如何启用多阶段查询引擎。

入门指南描述了如何在本地、Docker、Kubernetes 或 Azure、GCP 、 AWS 公共云上运行 Pinot。下面的命令用于使用预加载的棒球数据集来运行 Pinot:

代码语言:javascript
复制
docker run \  
    -p 9000:9000 \  
    apachepinot/pinot:0.12.0 QuickStart \  
    -type batch

快速入门示例提供了不同的示例和所有可用的启动命令。

更多详细信息可在发布说明和 Apache Pinot 1.0 的公告中找到。StarTree 开发者关系副总裁 Tim Berglund 在 YouTube 上介绍了 Apache Pinot 1.0 并解释了 Apache Pinot 的一般性情况。Apache Pinot Meetup Group 定期组织会议,开发者可在 Slack 上提问。

英文原文

https://www.infoq.com/news/2023/12/apache-pinot/

声明:本文由 InfoQ 翻译,未经许可禁止转载。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2023-12-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 InfoQ 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
TDSQL-C PostgreSQL 版
TDSQL-C PostgreSQL 版(TDSQL-C for PostgreSQL)是腾讯云基于 PostgreSQL 自研的新一代云原生数据库。它采用存算分离的架构设计,支持计算节点纵向和横向秒级扩展的同时,实现了超128TB海量分布式数据存储,广泛适用于性能和弹性要求高的业务场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档