在企业的业务中,经常拥有海量的历史结构化数据,虽然不会高频度的使用,但是不排除会不定期的被检索、查询(检索频率一般在100-1000次每天)。如物联网、交易历史详单查询、监控/日志数据检索等场景。这时企业需要廉价的存储计算方案,但是又不能将数据存储于离线计算系统或归档到对象存储系统,就需要使用分析型数据库的大存储实例了。
SATA、SSD、内存分析混合存储,提供低廉的存储成本(不同规格从0.093元/GB/天到0.051元/GB/天),仅为分析型数据库高性能实例的1/10,而又通过先进的动态二级缓存和分段索引技术提供相对较好的查询检索性能以及与高性能实例等同的数据与服务可用性。
大存储实例工作原理
分析型数据库每一个大存储实例配备内存、SSD缓存和使用SATA盘的分布式存储三级存储设备。用户的数据存储在SATA盘上,具有极低的存储成本。根据用户的查询频度以及获得多个专利的智能缓存算法,分析型数据库将用户高频查询或影响查询性能的关键数据自动换入到SSD缓存甚至内存中以加速用户查询。因此使用大存储实例时用户会发现一份数据前两三次查询较慢,但是随后查询速度便会快了很多,方便用户使用针对历史数据检索后再进行详细研判分析的应用。
另外用户若使用实时写入表,当天写入(一般是前一天20:00至当天20:00,实为未经optimize table的增量数据部分)的数据全部暂存于SSD中,每日自动的optimize table运行后会刷到SATA存储上。
大存储实例适合IO数据量和并发量较低的查询,如筛选率很高的历史数据检索等场景,在一次查询IO较多的情形(如大量数据进行join、全表group by、全表排序等)性能较高性能实例有比较大的差别。另外集群的网络规格会对大存储实例的性能有较大的影响,例如s1n/s2n实例采用双万兆网集群,性能较采用千兆网集群的s1/s2实例好3-5倍。
大存储实例主要应用场景
- 企业海量历史库,如订单流水、GPS轨迹分析、电信话单检索、日志分析、监控数据检索、物联网传感器数据检索等;
- 和分析型数据库高性能实例结合使用,近期高频度查询的数据放置在高性能实例(使用最大二级分区数功能管理保存的天数),全量历史数据放置在大存储实例中,应用程序通过用户选择的时间区间确定查询的数据库连接,以同一份代码兼得高性能查询和历史数据低成本存储。
大存储实例应用实战
企业内部BI系统
企业内部BI系统通常具有热点数据集中(近期数据或一段时间内要集中研究的数据集),整体并发较低,对查询响应时间的要求通常也不是很苛刻。所以在成本敏感的情况下,可以全部是使用分析型数据库大存储实例,获得很高的性价比。
基于分析型数据库以及其他阿里云、阿里云"数加"系列产品搭配,提供了企业内部BI的完整解决方案:
可以看到阿里云提供了从数据采集、同步,到可视化大屏、BI报表、以及灵活构建用户的CRM/DMP等基于客户维度的分析场景(使用画像分析作为中间件构建)。
冷热数据分离的在线业务系统
大部分大数据业务系统,都具有依时间来区分数据冷热的特征。例如最近3个月的数据是热数据,有很高的查询并发,并且需要很快速的查询响应时间。而三个月之前的数据均是冷数据,可能有累计多年的数据,极少查询但是又不能不提供查询。
这时就可以同时使用分析型数据库的高性能、大存储两个实例,数据同步时双写这两个实例,而利用分析型数据库提供的表最大二级分区数功能,以日期作为大表的二级分区列并在两个实例的表中设置不同的二级分区数(例如高性能实例表90,大存储实例表365),分析型数据库就会自动淘汰超过日期的对应数据,保证高性能实例只有最近90天,大存储实例存储最近一年的数据。
分析型数据库的高性能实例和大存储实例的SQL支持完全相同,前端应用只需要根据用户点选的时间区间来决定使用哪一个实例即可,不需要对查询SQL做任何修改,就可以兼得热点数据的高速查询和历史冷数据的低成本存储。
根据业务适配区分存储模式的综合应用
还有一种应用场景是,根据不同的应用类型,选择不同的实例进行处理,这在专有云中非常常见。例如以查询返回列不多(20列以内)的多条件明细查询为主的应用,就比较适合大存储实例(前提是并发不高)。而进行大量的join、union(all)、group by的应用,例如综合研判、复杂的报表或其他高并发要求的应用就比较适合高性能实例。
大存储实例规格说明和定价
阿里云分析型数据库产品详情:https://www.aliyun.com/product/ads
更多精彩活动:【有“福”同享.第二季】每日一分享,虚机邮箱免费用