权威报告解读|如何加速数据湖自助式分析

Author
Kyligence
2022年 3月 30日

当前,云上部署正逐渐成为全球众多企业 IT 部署模式的新选择。而在国内,由于国家的监管需求,一些行业数据仍然被要求驻留在物理数据中心,这促使各大厂商在不同的物理位置上提供公有云服务,从而推动了私有云、公有云、混合云和多云等不同的部署模式。

最近几年,亚马逊、微软等大型公有云厂商也相继推出了以各自的对象存储为核心的数据湖方案。在云厂商和云计算整体趋势的推动下,基于数据湖的数据分析架构就成为了云上部署的重要选择之一,和云数据仓库架构一起并列成为企业选型数据分析架构的两大主要选型方案。

数据湖是一个集中式存储库,允许企业以任意规模存储所有结构化和非结构化数据。企业可以按原样存储数据(无需先对数据进行结构化处理),并运行不同类型的分析 —— 从决策仪表盘、可视化到大数据处理、实时分析和机器学习,以指导做出更好的决策。

根据 Gartner 2022 年 3 月的报告 《分析查询加速的市场引导》(Market Guide for Analytics Query Accelerators,后称市场引导报告 ),Gartner 分析师 Merv Adrian 和 Adam Ronthal 将数据分析的模式分为四个象限,分别为已知数据和已知问题、已知数据和未知问题、未知数据和已知问题、未知数据和未知问题。

数据分析架构用于服务两类常见的分析场景:

  • 一种是用已知数据的解答分析问题,行业通常使用传统数仓;
  • 另一种是使用未知数据来解答未知问题,通常使用数据湖。

数据湖通常被用于存储语义灵活,可供快速访问的原始数据。当企业希望通过数据湖架构来满足生产级的分析需求时(即完成传统上由数据仓库来完成的,对已知数据和已知问题、未知数据和未知问题的探索时),企业就触及了图上的模糊地带 (Zone of Confusion)。

数据湖之上自助式分析的挑战

数据湖虽然适合存储数据,然而数据和分析管理者也会面临着无法从数据湖项目中获取价值等挑战,这些挑战包括数据治理难、数据口径不一致、使用效率低、开发成本高等。

由于以上的原因,数据湖本身通常难以达到生产级的分析需求(考虑并发度、查询延迟、查询负载),而过去很长时间以来,这种生产级的分析需求都是基于关系型数据库的数据仓库来支撑的。

模糊地带的解决方案

根据 Gartner 建议,对于已经搭建数据湖的企业来说,可以解决这些挑战的方案是选型「分析查询加速方案」。在市场引导报告中,Gartner 介绍到分析查询加速方案提供了一种更易于生产和探索性使用数据存储中具有灵活语义的数据的方式。分析查询加速方案用于提升“模糊地带”的查询性能从而使得数据湖可以足以支持生产级别的查询负载。

而分析查询加速方案通常是基于 Hadoop 之上的 SQL 查询接口 (SQL on Hadoop)和基于云对象存储之上的 SQL 查询接口 (SQL on Data Lake)的逻辑延伸。

实现自助式分析时企业需要考虑的要点

那么企业在选型分析查询加速方案时应该考虑哪些评估点呢?Gartner 在市场引导报告中也给出了建议,包括以下几点:

  • 最复杂负载下的查询性能:在概念验证阶段(POC) ,对于选型方案,可运行包含大量在线用户的最有挑战的工作负载,评估其是否可以达到充足的的查询性能。
  • 上下游服务和工具的对接:通过评估 API 和集成点来测试和上下游的云数据管理服务和平台以及商务智能 (BI)工具的对接。
  • 企业级安全和管控:评估安全和管控的能力,确保待选型方案达到企业安全和管控的“必要”标准和需求。
  • 开放的数据标准:确认待选型产品使用了开放的数据标准,如 Apache Parquet, ORC 或 Apache Avro。使用私有格式可能造成厂商锁定或无法通过其他 API 访问等不良后果。

企业打造数据湖上自助式分析的实践

在这份市场引导报告报告中, Gartner 还列举了市面上的分析查询加速方案的代表厂商, Kyligence 是其中在列的唯一来自中国的厂商。目前已有众多各行各业的企业选型了 Kyligence 基于数据湖的 OLAP 解决方案。

这个方案为企业提供了以下几项能力:

  • 基于对象存储的统一 SQL 接口
  • 对接主流云数据湖和 BI 工具
  • 高性能,高并发,低 TCO
  • 更高效的数据管理
1. 基于对象存储的统一 SQL 接口

SQL on Object Storage

用户可以通过标准的 SQL 或支持 SQL 查询的 BI 工具来直接查询数据湖上的数据。除此之外,使用 Kyligence 最大的优势是通过一套架构,统一湖和仓的查询入口。在数据源端,Kyligence 原生支持对接 Hive、对象存储等数据源,并支持通过二次开发灵活对接业内主流的数据仓库,结合 Kyligence 的智能查询路由能力,可将上层应用的查询按照当前查询的特征路由给聚合查询索引、明细查询索引、或下压给下游数据仓库或大数据引擎。

客户实践:统一的数据服务层

我们的一位客户就利用了 Kyligence 的统一查询入口的特性,构建了统一的数据服务层。Kyligence 提供了标准的 ANSI SQL 查询接口和微服务封装,屏蔽了企业内的多个数据源,如 Oracle、MySQL、ElasticSearch、ClickHouse 等,实现企业数据资产的统一管理,同时大大提升了应用开发和交付的效率,赋能各分支机构、各业务条线数据应用的建设,从而让数据更好更快赋能一线业务。

2. 对接主流云数据湖和 BI 工具

Kyligence 支持对接主流云数据湖如亚马逊云 S3、Azure Data Lake Storage 以及 Google Cloud Storage 等。并在客户生产环境广泛的支持了主流的 BI 工具 Tableau、Power BI、MicroStrategy、帆软、Smartbi 等,满足客户在数据湖上搭建自助式分析平台的上下游对接需求。

3. 高性能,高并发,低 TCO

前文提到,数据湖本身通常难以达到生产级的分析需求,而 Kyligence 的预计算技术可为生产级的查询需求提供稳定的查询性能,且具有比较高的性价比。预计算“一次计算,多次使用”的特点使企业在数据湖上支撑大量的查询时,可以避免每条查询都会带来云上计算成本的消耗,将查询的需求一次性预计算好后,可在后续生产查询时反复使用,从而降低成本。

在一次 Kylin 开源社区的 Meetup 中,来自欧洲的跨境电商 OLX Group 分享了他们在云上数据湖选型 Apache Kylin 时和 SQL Server Analysis Service (SSAS)以及 Amazon Redshift 的成本对比。

如下图所示,在同样是 1 亿行测试数据的情况下,Apache Kylin 成本(包含底层架构成本)是 SSAS 的成本的一半不到,是 Amazon Redshift 成本的小 1/4;而查询性能可以达到 SSAS 的 2 倍,Amazon Redshift 的 4 倍。

4. 更高效的数据管理

较长时间以来,人们一直使用传统数仓来支撑生产的数据分析需求,经典数仓理论中也多会推荐企业将数仓建设分层为贴源层、数仓层、数据集市层,在数据湖中虽也可以借用这套经典的理论对数据湖上的数据进行分层建设,但在支撑生产查询时却面临着数据治理的挑战。

在数据仓库层,将指标物化是目前来说常用的一种解法,数据仓库支持将指标定义在视图(View)中,然后让其他工具去查询视图。

我们接触的不少企业目前就是在使用视图来解决分析最后一公里的查询问题。使用视图的问题是仅能针对一些查询需求进行物化,在各类查询需求繁多的时候,数据工程团队需要准备大量的视图,开发成本极高,数据管道复杂不说,还很容易出错

当上游的数据出现问题的时候,下游系统很难知道,就无法及时同步修复,这会导致数据的消费者如数据科学家,工程师需要花费大量时间来 debug 数据不一致等问题,这使得他们的工作效率比较低下。

而使用 Kyligence 就可以很好地规避在数据集市层反复开发、重复建设的低效问题。Kyligence 的一个模型其实可以对应一个雪花模型中所有可能的业务主题表,这意味着过去需要为每个数据集市表创建的 ETL 过程、数据开发过程都可以得到节省,取而代之的是 Kyligence 基于 UI 界面的低代码开发,这将大大降低在数据集市层开发的复杂度

而当有新的需求需要添加到数据仓库层的时候,Kyligence 智能的 AI 增强引擎能力可以规避过去手工从业务那里收集需求、分析需求、开发需求的过程。数据开发团队通过后台日志中记录的业务查询历史,查看系统的自动推荐,就可以了解到哪些查询需求是高频的但查询效率低的,并可通过叠加新需求到现有模型的方式来主动响应业务的分析需求,提高业务分析体验

此外 Kyligence 还提供以下更多能力,为企业提供基于数据湖的分析场景提供基础能力:

  • 企业级的数据安全管控和治理:Kyligence 关注所有用户的数据安全,为企业级用户提供端到端的数据加密、行列级数据权限控制、数据备份/恢复等安全策略。
  • 云上开放的数据格式:支持 Apache Hudi,ORC,Apache Parquet,CSV 等行业通用的数据格式。
  • 通用的 API 接口:Kyligence 提供标准化的 API 接口,帮助企业实现数据源接入、数据加载构建、运维监控等数据开发工作的自动化。

总结

在 Gartner 的报告《分析查询加速的市场引导》中,Gartner 建议各位数据及分析的决策者在选型数据湖上的分析查询加速方案时,需要对待选型方案进行以下几点的评估:

  • 最复杂负载下的查询性能
  • 和上下游服务和工具的对接
  • 企业级安全和管控
  • 开放的数据标准

企业在选型方案提升数据湖之上的生产级查询分析能力时,除了考虑企业自身架构的现状外,还可以参考 Gartner 对数据湖之上的这个查询加速方案的定义。

Kyligence 提供了以上 Gartner 对分析查询加速的市场定义中所描述的所有关键能力,因而连续 2 年入选该报告。同时还提供了更多能力,如统一的查询入口,更高效的数据管理,更高的性价比等,帮助企业拓展数据湖上的更多应用场景。

申请试用
关注我们