作者:张友东 StarRocks TSC member/镜舟科技 CTO
数据分析是现代企业和组织决策过程中不可或缺的一部分,数据分析技术经过数十年的发展,需求场景从 BI 报表到数据探寻、实时预测、用户画像等不断丰富,技术架构经历从数据仓库、数据湖、到数据湖仓的演进,并走向数据湖仓一体架构,通过一套架构服务多样化的分析场景。
数据仓库
数据多样化:除了结构化的数据,半结构化、非结构化的数据越来越多。 数据孤岛问题:数据仓库面向主题管理,导致数据分散形成孤岛,难以形成全局统一的数据分析。 成本与扩展性:大数据量增长带来数据存储成本与横向扩展的问题。 高级数据分析支持:数据仓库能很好的支持 BI 相关应用,但随着 AI 的发展,AI 应用与数据仓库的数据交互效率不高,制约了 AI 应用的发展。
数据湖
数据湖的概念在 2010 年首次提出,如果把数据仓库/集市类比为瓶装水,数据湖则是以更加原生态方式存储数据的大池子。数据湖的核心优势是统一与开放,数据基于对象存储、HDFS 等系统实现低成本、可扩展的 数据存储,并作为企业数据的 Single Source of Truth;同时数据的数据格式是开放的,便于不同的应用灵活访问。
湖仓分层架构
数据仓库与数据湖各有长处,业界持续在探索两者如何更好地融合,在过去几年湖仓分层的架构得到广泛的应用。企业数据统一写到数据湖,作为统一存储,湖上开放的数据可以服务 AI、ML 等应用场景;数据湖上部分数据经过 ETL 处理导入到数据仓库服务 BI 等 OLAP 分析场景。
数据湖仓
湖仓分层架构在过去几年被广泛应用,并且不断地加深融合。新兴的数据仓库如 Snowflake、Redshift、BigQuery 均采用云原生存算分离架构演进,并且支持直接查询开放数据湖的能力。数据湖在事务支持、查询性能等方面的能力不如数据仓库,近年来随着新兴数据湖格式如 Iceberg、Hudi、Delta Lake 等的发展,事务支持能力得到提升;另外,在查询性能上,通过不断优化数据湖上的数据分布以及增加缓存机制等技术的演进,数据湖上的数据分析性能已经大幅提升,达到接近数据仓库的水平。
StarRocks 3.0:Evolution to Lakehouse
StarRocks 2.0 版本凭借其优异的查询性能在业界得到广泛应用,很多用户采用湖仓分层架构,并将 Hive、Iceberg 等数据湖里的数据部分导入到 StarRocks 服务 OLAP 分析场景。StarRocks 3.0 通过存算分离架构升级、极速的湖仓分析性能、物化视图等关键能力,帮助用户构建数据湖仓,简化数据分析架构。
存算分离架构
存算分离架构
StarRocks 存算分离 2023 年 4 月正式发布,目前已有上百家用户上线存算分离架构。与存算一体架构相比,保持了原有简洁的架构;同时极大的降低数据存储成本,提升计算的弹性能力。
访问远端对象存储的延时相比本地存储有数量级的提升,StarRocks 通过 Data Cache 机制提升数据访问性能,确保热数据与存算一体架构接近。根据实际测试,存算分离缓存命中的情况与存算一体架构相比性能完全相同;在完全冷查询时,性能大概是存算一体的 30-50%。
在存算分离架构下,StarRocks 可以方便的支持 Multi-warehouse 的能力;多个 Warehouse 共享一份数据,不同 Warehouse 应用在不同的 Workload,计算资源可以进行物理隔离,并且可以按需独立弹性伸缩。
极速湖仓分析
极速湖仓分析
StarRocks 3.0 提供统一 Catalog 管理的能力,用户不仅能高效分析导入到 StarRocks 的数据,同时也支持直接分析开放数据湖 Apache Hive、Apache Iceberg、Apache Hudi、Apache Paimon 的数据,分析性能相比业界同类产品快 3-5 倍。
物化视图
物化视图
基于 StarRocks 构建 Lakehouse
湖仓实践案例
腾讯微信:数据写入到 Iceberg,基于 StarRocks 实现准实时分析,数据新鲜度从小时/天到分钟即,查询性能提升 3-6 倍。 携程旅行:数据统一存储在 Hive,通过 StarRocks 直接服务 BI 报表,交互式分析。重点业务场景按需创建物化视图查询加速,查询性能提升 10+ 倍
总结
Lakehouse 兼具数据仓库与数据湖的优势,是下一代数据分析架构的演进趋势;StarRocks 是构建 Lakehouse 的最佳选择,已在微信、小红书、携程、平安银行等数十个大型企业落地实践,帮助企业实现 One data、all analytics 的业务价值。
关于 StarRocks
StarRocks 全球开源社区也正飞速成长。目前,StarRocks 的 GitHub star 数已达 8000,吸引了超过 350 位贡献者和数十家国内外行业头部企业参与共建,用户社区也有过万人的规模。凭借其卓越的表现,StarRocks 荣获了全球著名科技媒体 InfoWorld 颁发的 2023 BOSSIE Award 最佳开源软件奖项。