内容提要
Uber重新设计了Apache Pinot的查询架构,以简化执行、支持更丰富的SQL并提高内部分析的可预测性。新架构引入了轻量级代理Cellar,取代了复杂的Neutrino系统,增强了多租户隔离和执行限制。Pinot 1.4的多阶段引擎轻模式确保可配置的记录限制,优化查询性能,并增加监控和日志功能。Cellar目前处理约20%的Neutrino查询量,未来将逐步取代Neutrino。
关键要点
-
Uber重新设计了Apache Pinot的查询架构,以简化执行、支持更丰富的SQL并提高内部分析的可预测性。
-
新架构引入了轻量级代理Cellar,取代了复杂的Neutrino系统,增强了多租户隔离和执行限制。
-
Pinot 1.4的多阶段引擎轻模式确保可配置的记录限制,优化查询性能,并增加监控和日志功能。
-
Cellar目前处理约20%的Neutrino查询量,未来将逐步取代Neutrino。
-
Cellar支持直接连接模式,允许租户绕过代理直接连接到Pinot brokers。
-
Uber集成了支持M3QL的时间序列插件,通过Cellar增强内部分析工作负载。
-
Uber提供了Java和Go的官方客户端库,以简化与Cellar的交互,并提供操作可视化。
-
重设计反映了OLAP系统的发展,以支持高QPS和亚秒延迟,同时保持隔离性和可预测性。
延伸问答
Uber为什么重新设计Apache Pinot的查询架构?
Uber重新设计查询架构是为了简化执行、支持更丰富的SQL并提高内部分析的可预测性。
Cellar在新架构中扮演什么角色?
Cellar是一个轻量级代理,取代了复杂的Neutrino系统,增强了多租户隔离和执行限制。
Pinot 1.4的多阶段引擎轻模式有什么特点?
Pinot 1.4的多阶段引擎轻模式确保可配置的记录限制,优化查询性能,并增加监控和日志功能。
Cellar如何处理查询量?
目前,Cellar处理约20%的Neutrino查询量,未来将逐步取代Neutrino。
Uber如何增强内部分析工作负载?
Uber通过Cellar集成了支持M3QL的时间序列插件,增强了内部分析工作负载。
Uber提供了哪些客户端库来简化与Cellar的交互?
Uber提供了Java和Go的官方客户端库,以简化与Cellar的交互,并提供操作可视化。