看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!
在 PayPal ,数据工程师、分析师以及数据科学家会使用各种数据源、计算引擎、 语言和执行模型(流、批处理、交互式)。这样的话,会导致工程师会花费大量的时间管理不同的数据源,进而影响他们的产品的上市时间。
PayPal 数据团队开发了名为 Gimel 的全新分析平台,它会使用一个数据 API 和 SQL 访问任意数据存储,并且提供了一个中心化的数据目录。
来自 PayPal 的 Romit Mehta 和 Deepak Chandramouli 在最近的 QCon.ai 会议上介绍了Gimel 数据分析平台以及它如何用于商业化数据访问。他们讨论了Gimel 的组件:计算平台(Compute Platform)、数据API(Data API)、PCatalog、 GSQL 和 Notebooks,还宣布了该平台的开源版本。
InfoQ 与 Mehta 和 Chandramouli 讨论了 Gimel 数据平台以及它对安全、数据版本化的支持,了解了它未来的路线图。
InfoQ:为事务性和分析用例来管理数据目录(PCatalog)会有什么差异吗?
Mehta & Chandramouli:目前的 Gimel API 和 SQL 实现专注于分析平台。不管存储类型是 Kafka、NoSQL、基于关系型的还是基于文档型的,数据 API 都是相同的,SQL 提供了语言的抽象。在 PayPal,我们看到在线 / 实时系统都有类似的抽象层的需求。我们目前正在为在线系统提供类似的层,这些系统需要亚秒(sub-second)级的响应。
InfoQ:在 Gimel 平台中,你们是如何处理数据访问的安全性和访问控制的需求的呢?
Mehta & Chandramouli:因为所有的查询都是以登录用户的身份提交到底层系统的,而且所有的查询最终都由这些底层系统来执行,所以已有的安全策略和控制都能得以保持。
除此之外,通过日志系统,Gimel 会为每一个查询执行保留日志,其中包括查询本身,不管是否有数据下载至本地均是如此,未来,如果访问机密数据的话,还会为查询添加标签。
在 PayPal,Gimel 还遵循 Ranger 策略并与 Kerberized 集群紧密协作。
InfoQ:你们是如何管理数据存储的版本化的问题呢?
Mehta & Chandramouli:我们与 PayPal 的存储管理员协作,确保我们的 API 能够充分支持基础设备团队的所有存储版本。另外,如果存储团队需要新的设施的话,我们会在 API 中同样将它们纳入进来,这样所有的客户端就能透明地得到该功能的实现。也就是说,不管何时发生版本升级,在大多数场景下客户端都不需要更改他们的代码。
InfoQ:你们能介绍一下 GSQL 查询语言吗,它与其他的框架有什么差异吗,比如 Spark SQL 或 Neo4j’s Cypher ?
Mehta & Chandramouli:现在,GSQL 是一个轻量级的实现,它会拦截用户 SQL,在背后会为 Gimel 数据集(Datasets)生成对应的数据 API 代码,然后采用与 Spark SQL 拦截器相同的方式进行传递。长期来看,我们会推动 SQL 的一些优化,它会从多种存储类型混合 / 连接(blend/join)数据,也就是连接 Kafka、Hive、HBase,并将结果写入到 Elastic 中。
在路线图方面,除了增值特性和更新之外,团队还为 Gimel 规划了下面的功能:
- 查询优化
- 开源 PCatalog(包括元数据服务、发现服务、目录 UI)
- 添加对 Python 的支持;目前支持 Scala
- 开源添加到 Jupyter & Livy 中的特性
如果你想要学习 Gimel 平台的更多知识,或者关于它的特性有什么问题的话,可以参考文档、 Slack Channel 、用户论坛和开发者论坛。你也可以按照这些指导,抢先尝试一下Gimel 的功能。
查看英文原文: PayPal’s Gimel Analytics Platform Provides Unified Data API and GSQL
活动推荐:
2023年9月3-5日,「QCon全球软件开发大会·北京站」 将在北京•富力万丽酒店举办。此次大会以「启航·AIGC软件工程变革」为主题,策划了大前端融合提效、大模型应用落地、面向 AI 的存储、AIGC 浪潮下的研发效能提升、LLMOps、异构算力、微服务架构治理、业务安全技术、构建未来软件的编程语言、FinOps 等近30个精彩专题。咨询购票可联系票务经理 18514549229(微信同手机号)。
评论