"陆战之王"大润发如何在零售业数字化转型中抢占先机?
OLAP组件选型
选型要求
- 社区活跃的 开源框架 ,运维成本不会太高;
- 能够支持多类型 Join,大表 Join 性能要优秀;
- 要支持高 并发 处理查询,且查询延迟低,这也是我们最核心的诉求;
- 要能够支持大规模数据的导入导出,且能与现有数据平台相互兼容;
- 数据模型灵活,使用场景全面;
- 支持预计算技术。
选型对比
组件测试
- 在 SSB 测试集的 13 个查询中,StarRocks 的整体查询性能是 ClickHouse的 2倍多;
- 在 SSB 测试集的 12 个低基数查询中,StarRocks 的整体查询性能为 ClickHouse 的 1.1倍。
组件部署
实践案例
离线应用
- 可以根据建表语句properties配置中的参数开启动态分区功能,让StarRocks调用底层常驻线程预创建分区;
- 可以关闭StarRocks的动态分区,通过数据平台执行预定义SQL语句进行分区创建操作。
实时探索
- 1.11 版本的依赖没有 Source 读取方法,仍需使用 JDBC 读取。
- 1.13 以后版本的依赖有 Source 和 Sink 方法,
实践总结
优点
- 性能卓越:StarRocks 的单表性能不输 ClickHouse,多表 Join 的延时对比我们现有的的组件又有着较大优势,即便不做特定的优化,也能有较好表现,这是十分难得的。
- 运维简单:StarRocks 舍弃了传统多组件的架构形式, FE +BE 的结构十分精简,部署较为便捷。而运行上的稳定可靠,使得对运维的资源消耗非常低。
- 插件丰富:开发者维护了一些较为实用的插件和工具,可以进行一键部署、日志结构化等。如果这些功能后期能够稳定嵌入 StarRocks 后续 版本 中,应该可以更好优化使用体验。
- 社区活跃:开源社区有长期稳定版和快速迭代版可以自由选择,版本升级操作也较为容易。同时有中文社区论坛和官方群可以随时进行问题反馈获得答疑,这一点是要胜过很多竞品的。
不足
- 权限管理不足:StarRocks 的用户角色功能有待改善,例如该版本只能在创建用户时授予角色,不能授予用户多角色,删除角色后用户权限依然保留。庆幸的是,在不久后的 3.0 版本中,StarRocks 将实现完整的 RBAC ,并丰富更多权限项目,从而解决这一问题。
- 预计算功能泛用性不强:物化视图作为预计算的特色功能,运用场景较为基础,条条框框局限过多,比如不能实现多列聚合运算,不能实现多表 Join 等,使用起来难以做到如臂使指的效果。StarRocks 2.4 版本的异步物化视图功能已经在逐步解决这一困扰。

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
扬州万方:基于申威平台的 Curve 块存储在高性能和超融合场景下的实践
背景 扬州万方科技股份有限公司主要从事通信、计算机和服务器、智能车辆、基础软件等产品的科研生产,是国家高新技术企业、专精特新小巨人企业、国家火炬计划承担单位。 业务介绍 申威处理器是在国家“核高基”重大专项支持下、由国家高性能集成电路(上海)设计中心自主研发,采用自主指令集,具有完全自主知识产权的处理器系列。当前主流的申威3231处理器是基于第三代“申威 64” 二次优化版核心的国产高性能多核处理器,主要面向高性能计算和高端服务器应用。申威3231采用 CC-NUMA 多核结构和 SoC 技术,单芯片集成了32个64位 RISC 结构的申威处理器核心、8路DDR4存储控制器接口、40lane的PCI-E 4.0标准I/O接口以及3路直连接口,最高工作频率可达2.5GHz。 2018年至今,万方科技基于申威系列处理器研制了面向海量存储、高密度存储、全闪存储等多种需求的多类型存储系统,大量采用了基于 Ceph 的分布式统一存储技术。在随后的生产环境使用维护中,Ceph 在性能一致性、运行稳定性、故障修复能力等方面的表现不尽如人意,并且复杂的 IO 处理流程、数据放置及迁移机制、庞大的代码规...
- 下一篇
百度工程师教你玩转设计模式(装饰器模式)
作者 | 北极星小组 想要写好代码,设计模式(Design Pattern)是必不可少的基本功,设计模式是对面向对象设计(Object Oriented Design)中反复出现的一类问题的一种解决方案,本篇介绍装饰器模式(Decorator Pattern)。 在我们日常的开发过程中,一个最常见的场景就是在已有的基础上新增功能,常规的做法有以下几种: 修改已有的类:违背开闭原则。 增加新的子类:每次都得新增大量对应的类,随着功能的增加,子类越来越膨胀。 在此场景下,装饰器模式就可以体现出它的优势了,它允许在不修改原有对象的前提下,灵活的扩展已有类的功能。下面是装饰器模式的一个通用的类图: △UML 其中的各个类的作用如下: 抽象组件(Component): 可以是接口或者抽象类,它定义了具体类以及装饰器所拥有的方法。 具体组件(ComponentA, ComponentB):具体的组件,实现或者继承自抽象组件。可以理解成上述场景中已存在的类。 抽象装饰器(Decorator): 通常为抽象类,持有一个被装饰的对象,定义了具体装饰器的方法。此类非必须也可以没有,具体装饰器也可直接继承或...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8安装Docker,最新的服务器搭配容器使用
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- Windows10,CentOS7,CentOS8安装Nodejs环境
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8编译安装MySQL8.0.19