【技术预研】starRocks高性价比替换hbase

hbase作为类列数据库,更准确说是列族数据库。本质上是一个文件查询系统,追求极限的写入和读取。
而starRocks作为olap数据库,在保持优秀的关联计算能力的前提下,还有不错的查询效率,当然和hbase本身比还有一定差距。
但对于一般场景还是可以接受的,毕竟要省掉很多的资源。与hdfs等组件解耦,降低运维压力。

starRock通过以下三个优化来提升性能:

排序键

相当于在存储的时候,选择某一列或者某几列作为排序键,这样在数据存储的时候就按照这个顺序存放。
在数据查询的时候,可以按照顺序去查询。

前缀索引

有了排序键,但如果数据量大,且查询的内容比较少的话,对内存的压力就很大。
其实可以考虑跳过很多不需要查询的内容。这就有了前缀索引(clickhouse中有类似的稀疏索引)。
就相当于排序键的索引,每隔一定条数记录(1024条),抽出第一条作为前缀索引,这样需要加载到内存的数据就是原来的1/1024。大大降低了内存压力。

bitMap

bitMap相当于额外增加了对单个字段的索引。主要是针对枚举值比较少的场景。
例如:性别这个字段,基本上只有男、女、保密、不确定等有限个字段,将这四种枚举值转换为bit数组。再过滤的时候直接进行位运算,那么那么读取数据的时候,只会拉取满足条件的数据。

参考文档

面对百亿数据,Hbase为什么查询速度依然非常快? - 墨天轮
排序键和前缀索引 | StarRocks
Bitmap 索引 | StarRocks

  • 10
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Superset是一个开源的数据分析和可视化平台,由Apache软件基金会维护。它提供了一个可视化界面,让用户可以在没有编写代码的情况下对数据进行查询、可视化和交互式分析。以下是Superset的详细技术分享: 1. 技术架构 Superset的架构基于Python和Flask框架,后端数据库使用SQLAlchemy进行连接。它还使用了一些其他的Python库,例如Pandas、NumPy、PyDruid等。前端使用了React.js框架和Bootstrap样式库。 2. 数据连接 Superset可以连接多种类型的数据源,包括SQLAlchemy支持的所有数据库、Druid数据存储、Elasticsearch、CSV文件等。它还支持自定义SQL查询,可以使用Jinja2模板语言来动态生成SQL查询。 3. 可视化 Superset支持多种可视化类型,包括表格、条形图、线图、散点图、热力图、地图等。它还支持自定义可视化,可以使用D3.js或其他JavaScript库来实现。 4. 安全 Superset提供了一系列安全措施,包括用户认证和授权、数据源访问控制、访问日志记录等。它还支持与LDAP、OAuth等外部认证系统集成。 5. 可用 Superset可以部署在多台服务器上,通过负载均衡来实现可用。它使用Redis作为缓存系统,使用Celery作为任务队列,支持异步任务执行。 综上所述,Superset是一个功能强大、易于使用、度可定制和可扩展的数据分析和可视化平台。它可以满足各种不同规模和类型的数据处理需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值