『AI科技大本营』华为开发者大会HDC.Cloud技术探秘:云搜索服务技术实践( 三 )
华为云给出的方案是存算分离 。
通过四个方法解决了其中的四个关键点:依照时序数据不会修改的特征 , 数据分类为热数据与冷数据 , 热数据可写可搜 , 冷数据可搜不可写 。 这样解决了时序数据特征到数据处理模型的映射 。 热转冷时 , 将数据转移到对象存储 , 由于对象存储使用的是纠删码存储 , 冗余与有效载荷的比值远小于1 , 大幅节约了原先由于多副本带来的存储成本 。 计算节点内还是保留多副本概念 , 用于维护可靠性 , 但是都仅仅是指向同一份对象存储 , 不会重复存储 。 对于冷数据 , 不会长时间维持全部的元数据以及Cache , 而是自建内存管理机制 , 尽可能的少用内存 , 实现小马拉大车 , 少量节点带动大量数据 。
通过上述方式 , 实现了日志数据保留成本下降至20% , 同时数据容量相比优化前提升12倍 。
五、报表加速
为了统计PV/UV曲线或者请求的平均时延曲线等运营运维的数据用于企业业务或者IT管理的决策参考 , 通常IT部门会引入ES来根据原始的指标数据来制作报表 。 但是这个方式在统计跨度稍大的范围时 , 就很容易出现报表很慢或者OOM的情况 。
华为云采用了报表加速技术解决 。
本文插图
华为云搜索报表加速方式
如上图 , 这个方案分为两个部分 , 上面一部分是Rollup 。 Rollup的原理并不复杂 , 把时间按照一定的粒度比如5分钟进行分割 , 将里面的数据按照配置好的聚合语句预先进行一遍聚合计算 。 那么后续再来报表请求的时候 , 直接基于预先聚合好的粗粒度数据计算 , 可以大幅提升计算效能 。 这个方案ES的非开源包XPack中有实现 , 华为云搜索也采用了自己的实现 。
更贴近客户也是更独特的部分是图中的下半部分 。 由于ES中Rollup是一套独立的API , 用户需要自己进行预聚合的操作与任务维护 。 华为云搜索则是通过判断用户的慢日志 , 来自动化的协助用户决策 , 是否需要进行加速 , 并生成中间数据辅助计算 。 优化前后 , 用户的业务不需要进行任何修改 , 在已有的接口之上便可获得加速能力 。
最后得到的效果是 , 基本所有加速的报表提速都在100倍以上 。
欢迎扫码试用华为云搜索服务
- 中国网科技@撤出液晶面板生产,三星将关闭两座工厂
- #即科技#107国赞同票作废!,想“加入”联合国?中国使用一票否决
- 【腾讯科技】全球应用市场第一季度大爆发:花费达234亿美元创纪录 时长增20%
- 华为云启动全球抗疫行动,参与计划伙伴将获最高30000美元免费云资源
- 即科技■决定权掌握在中国手,?联合国五常将变六常?此国获美俄一致力挺
- 『极速聊科技』目前仅剩10余人,暴风集团:员工持续大量流失
- 【科技生活快报】普京:已与欧佩克和美国就石油价格下跌问题进行讨论
- 「科技小数据」消费信贷的客户呈现出年轻化的趋势,新消费崛起
- 『科技拌饭』敌人无处遁形,手机变身物理外挂?华为MateXs双倍视野刚枪
- 戮默科技■助力企业数字化升级,戮默科技深挖软件开发核心