关于千万级数据的OLAP场景是什么样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
前段时间接手一个比较棘手的项目.
6千万的股票行情数据聚合场景.
用户发起query, 到解析, 再到聚合, 最后展现给用户耗时不超过2秒.
因为聚合维度比较多, 可以划分为时间维度, 指标维度. 指标维度多达10几个.
使用mongo, 先扔进去了2千万左右的数据, 不加索引的情况下, 几乎出不了结果.
如果每个维度都使用索引的话成本太高, 最后果断放弃了mongo.
使用mysql, 数据分片, 很细粒度的, 准备以空间换时间.
主要是以时间维度做数据冗余, 针对几个主要的时间段, 时间点提前做数据准备.
其他维度采用硬算的方式.
想法是好的, 测试的结果对我来说相当残酷.
1.硬算时间太长.
2.非主要时间维度跨度太细, 不是所有都做数据pre.
采用elasticsearch, 准备了5台服务器. 准备采用5台es集群应对OLAP场景.
导进5千万数据后, 开始测试.
时间维度+其他单一维度在1秒以内
时间维度+其他多维度(3个以内)在3秒内
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。