国产数据库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数据库,深度对接资源组、任务运维故障分析等功能,实现各类场景更具用户体验价值的轻量高效数据分析与应用。

相关推荐
美林数据Tempodata1 小时前
大模型驱动数据分析革新:美林数据智能问数解决方案破局传统 BI 痛点
数据库·人工智能·数据分析·大模型·智能问数
野槐1 小时前
node.js连接mysql写接口(一)
数据库·mysql
Zzzone6832 小时前
PostgreSQL日常维护
数据库·postgresql
chxii2 小时前
1.13使用 Node.js 操作 SQLite
数据库·sqlite·node.js
冰刀画的圈2 小时前
修改Oracle编码
数据库·oracle
这个胖子不太裤2 小时前
Django(自用)
数据库·django·sqlite
麻辣清汤2 小时前
MySQL 索引类型及其必要性与优点
数据库·mysql
2501_915374353 小时前
Neo4j 图数据库安装教程(2024最新版)—— Windows / Linux / macOS 全平台指南
数据库·windows·neo4j
it-搬运工3 小时前
3.图数据Neo4j - CQL的使用
数据库·neo4j
-借我杀死庸碌的情怀-4 小时前
navicat可视化页面直接修改数据库密码——mysql、postgresql、mangodb等
数据库·mysql·postgresql