《Elastic(中国)产品应用实战》——五、10分钟内查询一个PB级的云存储(下)

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: 《Elastic(中国)产品应用实战》——五、10分钟内查询一个PB级的云存储(下)

更多精彩内容,欢迎观看:

《Elastic(中国)产品应用实战》——五、10分钟内查询一个PB级的云存储(上):https://developer.aliyun.com/article/1220936?spm=a2c6h.13148508.setting.18.653f4f0eDDVBOB


6. 简单词条查询


让我们从简单的词条查询开始。这里主要的观察结果是,冻结层在几秒钟内返回4TB 数据集上的结果(5个匹配文档)只下载数据集的很小一部分来寻找匹配的元素。 这突显了 Lucene中的索引结构功能强大,可实现快速查找。


重复运行查询后,所有层展示出相似的性能,因为现在可以在冻结层中提供来自于 本地磁盘上LFU缓存的数据。Elasticsearch的内存中结果缓存在这里不起作用,因 为这种类型的查询不会被缓存。在页面缓存中提供数据会影响在热/温层和冷层中重 复运行的性能。

image.png

当使用默认索引存储类型hybridfs而不是niofs时,热/温层的性能在首次运行时会 略低(285毫秒而不是92毫秒详细信息将在下一节中介绍。


7. Kibana 仪表板


我们对Kibana仪表板重复同样的流程。这里主要观察结果是冻结层在5分钟内 基于相同的4TB数据集返回仪表板,而在具有本地数据访问途径的其他层中计算仪 表板需要20秒。尽管仪表板使用时间范围筛选聚合了超过75%的数据集,但由于 索引结构,它仍然只需要下载存储库中的一小部分数据(在本例中约为3%,下文将详细介绍)。

image.png

Elasticsearch的结果缓存被禁用时,重复搜索的性能主要依赖于页面缓存,当查 询所需的数据部分完全纳入磁盘上的LFU缓存时,重复搜索的性能就与冻结层的性 能相当。值得注意的是,对于这个特定的工作负载,热/温层中的内存映射会导致页 面缓存"抖动,当使用默认存储类型时,这会对热/温层的性能产生不良影响(与 使用niofs时的6.2秒相比,最多可慢三倍)。


对于冻结层,我们考虑了两种不同大小的LFU缓存的,以显示对重复搜索性能的影 响。磁盘上的LFU缓存大小首先被定为200GB这只是4TB的一小部分(数据集大 小的5%),但仍然足以容纳为计算给定的仪表板而下载的所有数据(大约3%,或 120GB)在第二次运行基准测试时,它的大小仅定为20GB 原始数据集大小的 0.5%),这不足以容纳给定仪表板需要的所有数据。


当启用Elasticsearch的内存中缓存时,重复搜索会更快,因为部分查询结果现在可 以直接在Elasticsearch节点上获得,而不需要重新计算。然而目前冻结层并不使 用这些内存中的Elasticsearch缓存。


对于仅计算的仪表板略有不同并通过不同的国家/地区代码进行筛选的情况,我们也 进行了基准测试。在这种情况下,由于已经下载了与满足这个略有不同的查询相关 的数据的许多部分,冻结层可以从中受益,并且返回结果的速度几乎与其他层一样快。


为了在首次运行仪表板时显示在冻结层中下载了些什么,我们对请求的六个最大的 Lucene文件类型以及下载了多少量进行了可视化。虽然fdt 字段数据)文件消耗 了大部分空间(用于存储文档),但并未通过访问这些文件来计算聚合。正如预期的 那样,大多数访问都是在Lucenedvd 每个文档的值文件上完成的,它们是 用于计算聚合的文档值。

image.png

8. 快速访问大量对象存储


虽然在冻结层上的查询肯定会更慢,但它的主要优势体现在不经常访问上,使数据 无需解冻即可用于搜索。相比之下,即使禁用了恢复限制,在本地提供完整的数据 集也需要一个多小时,这比我们直接在冻结层上运行查询所花的时间要长得多。

image.png

 

9. 扩展到 PB 级


到目前为止,基准测试集中在层与层之间的性能比较上,不能展示冻结层的全部可 能性。该层比其他层具有更高的计算存储比。


我们采用了接近极致的做法,对相同的数据集进行了超过250次的挂载,每次都使 用不同的名称以便将其作为单独的索引处理。然后我们的单节点集群有12500 80GB的分片,这相当于挂载了 1PB的数据。在完整的1PB (相当于100GB 数据集上运行简单的词条查询只花了不到10分钟的时间,表明这一实施过程可以 很好地扩展到更大的数据集。

image.png 在实践中,这可能不是一个理想的设置,因为单个节点上分片过多,本地磁盘缓存 与对象存储大小的比率极低。在这种规模下,数据集的存储成本远超冻结层节点的 计算成本,因此添加更多节点将显著提高性能,而对成本的影响可以忽略不计。


10. 调整磁盘上 LFU 缓存的大小


如前所述,为了在重复搜索中获得优良的性能,调整磁盘上的LFU缓存大小很重要。 在这里,正确的值在很大程度上取决于所运行的查询类型,特别是产生查询结果所 需访问的数据量。因此,挂载更大量的数据并不一定总是需要更大的磁盘缓存。 例如,在基于时间的索引背景中应用时间范围筛选可以减少需要查询的分片数量。 由于在数据访问模式中经常存在某种底层空间或时间局部性,冻结层将允许对非常 大的数据集进行有效查询。根据我们目前的观察结果,我们建议调整磁盘上LFU缓 存的大小,使其介于挂载的数据集大小的1%10%之间。5%的比率也许是一个很 好的实验起点。


请注意,冻结层可以很好地支持垂直和水平扩展,因为计算具有非常相似的性质。 使用性能更好的机器类型或向集群添加更多节点就是提高冻结层查询性能的一种简单方法。


11. 结论


我们已经展示了冻结层可以以优异的性能响应两种不同类型的查询。使用 Elasticsearch的默认索引策略冻结层的搜索性能要比扫描整个数据集快几个数量 级。在冻结层中的重复搜索将进一步受益于磁盘上的缓存,并提供与其他层相似的性能。


当以经济有效的存储搭配灵活的计算存储比为主要目标时,冻结层就会提供巨大的 价值。冻结层中的数据只是作为任何常规索引而访问,因此可以轻而易举地切换现 有设置,以利用这个令人兴奋的新功能。进行设置也并非难事,因为它再次利用了 已经用于备份目的的快照存储库,并与索引生命周期管理完全集成,以便将数据从 热层/温层/)令层转换到冻结层。Kibana的异步搜索集成在此基础上提供了扩展功 能,允许在后台计算运行缓慢的仪表板,并在可用时进行可视化。


注:冻结层既可用于自托管部署,也可用于Elastic Cloud,所以请查看这份文档, 进行尝试,并提供您的反馈意见吧。

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
5月前
|
存储 监控 安全
《SelectDB 新一代日志存储分析平台解决方案》白皮书重磅发布|立即下载
作为基于 Apache Doris 打造的现代化数据仓库,SelectDB 不拘泥于传统数仓的限制,针对日志数据的特点引入了多项创新性技术,使用户可基于 SelectDB 构建开放、高性能、低成本、统一的日志存储分析平台, 截至目前已在近百家行业内知名企业中落地。
《SelectDB 新一代日志存储分析平台解决方案》白皮书重磅发布|立即下载
|
存储 缓存 固态存储
《Elastic(中国)产品应用实战》——五、10分钟内查询一个PB级的云存储(上)
《Elastic(中国)产品应用实战》——五、10分钟内查询一个PB级的云存储(上)
|
测试技术 调度 双11
直击阿里双11神秘技术:PB级大规模文件分发系统“蜻蜓”
2017天猫双11, 交易峰值32.5万/秒,支付峰值25.6万/秒,数据库处理峰值4200万次/秒,再次刷新了记录。阿里集团基础设施蜻蜓,在双11期间,对上万台服务器同时下发5GB的数据文件,让大规模文件分发靠蜻蜓系统完美实现。
6275 0
|
存储 云栖大会 NoSQL
北京云栖大会workshop:《数据接入:海量数据存储及实时访问》篇
本手册为北京云栖 Workshop《云数据·大计算:快速搭建互联网在线运营分析平台》的数据准备部分,介绍使用表格存储完成行为日志采集工作,并提供实时在线查询。
3574 0
北京云栖大会workshop:《数据接入:海量数据存储及实时访问》篇
|
NoSQL Cloud Native 大数据
3月29日云栖精选夜读 | 阿里云发布国内首个云原生图数据库GDB,多度关系信息查询仅需毫秒级
近日在2019阿里云峰会·北京,阿里云发布国内首个云原生的图数据库GDB,拥有多度关系数据的快速查询与存储能力,帮助企业提升查询效率10倍以上,查询时间降低至毫秒级,适用于社交网络、金融欺诈检测、实时推荐、知识图谱等智能应用领域。
3578 0
|
存储 NoSQL Cloud Native
阿里云发布国内首个云原生图数据库GDB,多度关系信息查询仅需毫秒级
近日在2019阿里云峰会·北京,阿里云发布国内首个云原生的图数据库GDB,拥有多度关系数据的快速查询与存储能力,帮助企业提升查询效率10倍以上,查询时间降低至毫秒级,适用于社交网络、金融欺诈检测、实时推荐、知识图谱等智能应用领域。
2442 0
|
存储 分布式计算 大数据
首次公开!单日600PB的计算力--阿里巴巴EB级大数据平台的进击
每年的双11之前,也是MaxCompute各种乾坤大挪移落定的时候,因为双11就是各种大折腾项目的自然deadline。在今年双11之前,一路向北迁移和在离线混部项目,将杭州集群除蚂蚁外整体迁移到张北,涉及了绝大部分的业务project、数据存储和计算任务,为今年双十一大数据计算服务的保障带来了挑战。
4208 0
|
新零售 分布式计算 大数据
国内云数仓排行独占一档,揭秘阿里云EB级大数据计算引擎MaxCompute
日前,全球权威咨询与服务机构Forrester发布了《The Forrester WaveTM: Cloud Data Warehouse, Q4 2018》报告。这是Forrester Wave首次发布关于云数仓解决方案(Cloud Data Warehouse,简称CDW)的测评。
4335 0
|
存储 数据挖掘 数据库
飞天技术汇 | 阿里云发布时序数据库TSDB,数据写入效率提升百倍
近日发布的TSDB可以帮忙解决以上所有的问题。它针对时序数据进行存储结构的优化,写入效率提升百倍以上,存储成本降低90%,百万级记录分析,计算秒级响应。同时,TSDB具备时序洞察能力,实现交互式可视化数据分析,帮助企业实时掌握数据变化过程,发现数据异常,降低生产风险,提高生产效能。
1538 0
|
存储 NoSQL 数据挖掘
【免费公测中】为数据赋予超能力,阿里云重磅推出Serverless数据分析引擎-Data Lake Analytics
近日,阿里云重磅推出Serverless数据分析引擎-Data Lake Analytics,Data Lake Analytics,帮助更多不具备分析能力的存储服务,赋予其分析的能力。
4521 0
下一篇
无影云桌面