国产数据库StarRocks在数栈轻量化数据开发的全流程实践

Hadoop作为海量数据的计算存储底座已有近20年的研发与生产应用实践,但随着企业对于计算存储要求越来越高,其缺点也逐渐无法忽视:

  • Hadoop底座包含HDFS/YARN/Hive/Spark/HBase/Trino等多个组件,部署和维护成本高;

  • 批处理、流处理、OLAP等不同场景需要选择不同的计算引擎,为了提高计算效率、避免数据倾斜等问题,每种引擎的任务需要用户了解底层原理并掌握调参技能,学习门槛高;

  • 容错设计默认3副本,存储成本高;

  • 多并发的数据同步任务、大量的小时分钟SQL任务及自动调参能力不足导致小文件逐渐堆积影响查询性能,目前也没有自动合并小文件的能力;

  • ACID支持弱,Hive表不支持多用户并发写入。

基于以上问题,近年来有很多国产MPP数据库开始脱颖而出,如Doris、StarRocks、Oceanbase等,他们既有Hadoop的海量数据存储计算能力,能适配多数据使用场景,又针对性地弥补了Hadoop很多缺点,以StarRocks为例:

  • StarRocks 存算分离架构支持PB级数据存储计算,支持对象存储(如S3、OSS),存储成本降低60%-80%。 单副本+缓存 :仅缓存热数据,实际存储需求减少40%以上。 列式存储压缩率优于HDFS;

  • StarRocks 向量化引擎+CBO优化器在复杂查询中性能比spark、trino、impala等更好,支持千级并发查询,支持秒级数据写入与查询;

  • 一个引擎同时支持OLAP、流批一体、部分OLTP等场景,无须多引擎切换使用;

  • StarRocks极简架构无依赖组件,部署时间从Hadoop的数天缩短至30分钟;支持动态扩缩容、数据自平衡,故障恢复无需人工干预;兼容MySQL协议,无须复杂调参,降低学习成本。

目前,MPP 数据库作为企业核心生产数据库,已在多行业头部企业落地成功实践。袋鼠云数栈DataStack也对接了市面上主流的MPP数据库,包括StarRocks、Doris、Oceanbase、GaussDB、AnalyticDB PG等,并且提供专家数据迁移服务,因此企业完全可以脱离Hadoop,基于这些MPP底座实现轻量级 的数据开发与应用。以下是数栈基于MPP轻量底座能够实现的数据开发与应用。

下面以StarRocks为例介绍在数栈实现轻量化数据开发全流程:

StarRocks集群对接

基于StarRocks的数据底座不需要与Hadoop一样配置存储、调度计算等多组件,只需要通过jdbc连接,配置Fe nodes地址即可,1分钟快速完成集群配置。

数据集成

将业务库中的数据同步至StarRocks集群。

数据标准、模型

企业可在数据资产模块批量导入词根、码表及数据标准,来服务于StarRocks数据模型创建时表名、字段名及字段属性规范化。

基于规范设计的可视化建表既能降低建表门槛,又能避免一些不规范或错漏的表设计问题,减少后期数据治理负担。

数据权限配置

数据案例模块支持对StarRocks进行灵活的权限配置,管理员可以为单用户或用户组选择多库表配置表级、行列级的权限。

数据开发

建表操作统一收拢在数据资产的规范建表后,数据开发模块可以禁用DDL语句,任务中只需要数据的读写操作,且全平台内受数据安全管控。

离线开发模块同时支持基于StarRocks的周期任务和即时查询,尤其在即时查询时可利用物化视图加速查询,实现数据轻量级快速分析。

数据质量规则

如何判断StarRocks表的数据质量?用户可在质量校验规则中根据建表时关联的数据标准自动填充数据质量校验规则,绑定离线任务后可实现写入数据的同步校验。

元数据管理

StarRocks表元数据展示了包括表结构、数据落标情况、数据预览、全链路血缘、操作记录、个人权限和使用热度等全方面详细信息。

API服务

基于离线数仓表向导化快速生成API,构建API市场对外提供数据服务。

指标

基于StarRocks表可快速搭建指标体系,并在全公司共享,实现基于指标的智能问答、指标目标管理、归因分析等。

以上就是对接StarRocks集群实现数据建模、权限管控、离线开发、数据质量校验、元数据管理、API输出及指标应用的全流程,未来我们还将继续基于StarRocks和其他MPP数据库,深度对接资源组、任务运维故障分析等功能,实现各类场景更具用户体验价值的轻量高效数据分析与应用。

相关推荐
系统集成-鹰翔31 分钟前
ERP接口月度统计少了零单月份:SQLite分组与最近三个月均值排查
javascript·数据库·经验分享·后端
ClouGence32 分钟前
支付机构为什么需要数据同步:从监管报送到跨云业务协作
数据库·数据分析
wuyk5551 小时前
PyQt6-第14讲-数据库与Excel双向同步
数据库·python·ui·excel·pyqt
乐观的Terry1 小时前
AI翻译助手-JWT与redis无状态认证
数据库·redis·缓存
胖头鱼的鱼缸(尹海文)1 小时前
胖头鱼的技术专栏-482 Oracle AI DB 23.26.4新特性一览(20261027)
数据库·人工智能·oracle
ss2731 小时前
PostgreSQL事务隔离级别与案例
数据库·postgresql
派小心.2 小时前
App数据统计平台怎么选?从SDK接入到日活留存看板的技术实现
数据库·人工智能·小程序
m0_639906942 小时前
MySQL 实现分布式锁:悲观锁、乐观锁、唯一索引锁
数据库·分布式·mysql
RuoyiOffice2 小时前
达梦 DM8 + openGauss:RuoYi Office 的 MySQL 数据转换与导入实践
数据库·spring boot·python·sql·信创
代码不停2 小时前
MyBatis操作数据库
数据库·mybatis