半夜跑批跑不完,出错了来不及再来
月末年头更是担惊受怕…
看个报表等10分钟,业务人员拍桌子…
人多了、时间跨度大了,就查不了了
关联统计运算慢,界面拖拽迟钝;
预汇总方案占用空间太大且功能盲区多
花了很多钱上了内存数据库,
结果性能还是不理想…
【场景特征】无并发,不必实时,数据量巨大,对时间窗口要求高
【场景特征】多并发,业务可能复杂,秒级响应,大数据需集群支持
【场景特征】多并发,实时响应,计算相对规整,支持通用bi工具
什么才算是同一辆车?车架号相同、车辆vin码相同、车牌号和种类形同。是否贷款车、商业险和交强险等等
一个省的数据几亿条
30天新增保单2个小时,90天新增保单长时间跑不出结果
2015年09月到2018年09月
几十万、上百万人访问
使用6台es服务器基本达到响应要求
代码表改变时要花数小时重新生成数据
几百个用户访问,期望秒级响应
期望查询全量数据
承担过多应用负载,只能为自助分析系统开放5个连接,性能受其他应用影响很大
比肩专业列存数据仓库
实际支持几百用户访问无压力
按照条件过滤查找结果
jdbc配置改为集算器即可
【类比】计算1 2 3 … 100=?
sql理论上就是大排序后取前10个,效率很低,程序员都知道有不必大排序的办法实现这个运算,却无法用sql表达,只能用指望数据库引擎自动优化,但复杂情况时数据库并不会优化!
关系数据库的sql就像只有加法的算术体系,而集算器的spl则发明了乘法!
集算器还有更多乘法(高性能计算和存储库),人人都能成为高斯(快速实现高性能算法)。
这里许多算法都是集算器的独创发明!
* intel3014 1.7g/12核/64g内存 - 飞腾ft1500/16核/32g内存 - 龙芯/8核/64g内存 - intel2670 2.6g/16核/128g内存 - 飞腾ft2000/64核/256g内存
提供内外存两种数据容错机制,外存冗余式容错,内存备胎式容错
支持计算容错,节点故障时自动将该节点计算任务迁移掉其他节点继续完成
用户可根据数据和计算任务的特点灵活定制数据分布及冗余方案,有效减少节点间数据传输量,以获得更高性能
集群没有永久的中心主控节点,程序员用代码控制参与计算的节点
根据每个节点空闲程度(线程数量)决定是否分配任务,实现负担和资源的有效平衡
必须!数据密集型计算的存储是性能保障,传统rdb和hadoop的低效存储无法实现高性能
集算器针对内存、外存、集群都设计有专用高效数据组织方案,适应于多种运算场景
集算器基于全新的计算模型,无开源技术可以引用,从理论到代码全部自主创新
基于创新理论的集算器不能再使用sql实现高性能,sql无法描述大部分低复杂度算法
仅对于运算形式规整的多维分析可提供高性能sql接口,以适应各种前端bi工具
集算器专门用于性能优化,提供了专用的spl语法
学习spl不难,数小时即可掌握,数周就能熟练
难的是设计优化算法
所以我们设计了下面的优化流程
最初的1-2个场景,由润乾高级工程师介入配合用户实现
大多数程序员习惯了sql思维方式,不熟悉高性能算法,需要用一两个场景训练和理解
几十种性能优化套路经历过也就学会了,算法设计和实现并不是那么难
授人以鱼不如授人以渔!