公司
解决方案
工作机会
CN
CN
EnglishChinese
Ampere Computing Logo
Ampere Computing Logo
解决方案
解决方案主页
SolutionsCloud Native SolutionsTuning Guides OverviewTutorials OverviewWorkload Briefs Overview如何购买
开发者
开发者中心设计云应用构建云应用部署云应用把数据用起来使能开源社区Ampere Ready SoftwareCommunity Forum
Hero Image

Elastic Search 工作负载简介

在 OCI 基于 Ampere 处理器的云虚拟机上运行 Elasticsearch

Print
Download
Ampere—赋能未来
在OCI的 Ampere Altra 实例上部署Elasticsearch
在 Ampere Altra 处理器上运行Elasticsearch的收益
Ampere Altra 处理器
基准测试配置信息
基准测试结果
基准测试结论
脚注
Ampere—赋能未来

Ampere® Altra® 处理器是为云原生应用构建的完整片上系统 (SOC) 解决方案。 Ampere Altra 最多可支持 80 个 aarch64 内核。除了提供大量高性能内核外,其创新架构还提供可预测的高性能、线性扩展和电源效率。

Oracle 云基础设施 (OCI) 以每核 0.01 美元的极具吸引力的价格提供 Ampere Altra 处理器的云服务,规格涵盖1-80 个 OCPU 和 1-64 GB 内存的灵活配置。OCI Ampere Altra A1 计算平台提供确定性的性能、线性可扩展性和市场上最佳性价比的安全架构。

Elasticsearch 是一个分布式、开放的搜索和分析引擎,适用于所有类型的数据,包括文本、数字、地理空间、结构化和非结构化数据。 Elasticsearch 由 Elastic 基于 Apache Lucene 构建。Elastic 添加了对 aarch64 上预构建二进制文件的支持,可以从 此处 下载该二进制文件。

Elasticsearch 是如何工作的?原始数据(例如地理空间数据、日志或 Web 数据)被插入到 Elasticsearch 中,然后对数据进行格式化、丰富并最终编制索引,以便对其进行最佳检索。一旦它在 Elasticsearch 中被索引,用户就可以对他们的数据运行复杂的查询,获得检索特定的数据摘要。面对现今海量数据,使用 Elasticsearch 优化索引和搜索对于访问有意义的数据至关重要。

在本工作负载简介中,我们将基于 Ampere Altra 的 OCI 实例与最新一代 Intel 和 AMD 实例上的 Elasticsearch 进行比较。

在OCI的 Ampere Altra 实例上部署Elasticsearch

Ampere Altra Max 通过使用创新的架构设计、以一致的运行频率以及更能抵抗“相邻干扰”问题的单线程内核,为 Elasticsearch 等云原生应用提供卓越的性能,可以让工作负载在负载不断增加的情况下,以可预测的方式或最小的差异下运行。

Ampere处理器旨在提供卓越的电力效率,提供行业领先的性能/瓦特能力和更低的碳足迹。

在 Ampere Altra 处理器上运行Elasticsearch的收益
  • 云原生:Ampere Altra 处理器专为云客户而设计,非常适合 Elasticsearch 等云原生应用。

  • 可扩展性:凭借创新的横向扩展架构,Ampere Altra 处理器具有高核心数和引人注目的单线程性能,以及所有核心的一致频率,可在插槽级别提供更高的性能。

  • 高能效:行业领先的能效使 Ampere Altra 处理器能够达到具有竞争力的原始性能水平,同时消耗比竞争对手低得多的功率。

Ampere Altra 处理器
  • 80个 64-bit内核,最大主频3.3 GHZ
  • 单核 64 KB i-Cache, 64 KiB d-Cache
  • 单核 1MB L2 Cache
  • 32MB SLC (System Level Cache)
  • 一致性网格互联架构

内存

  • 8x72 bit DDR4-3200 channels
  • 支持ECC & RAS
  • 最大可配 16x DIMMS (2 DPC) 和 4TB 内存容量

外部连接

  • 单颗CPU提供128路 PCIe Gen4
  • 支持双路一致性互联
  • 4x16路 CCIX协议通道

系统y

  • Armv8.2 指令集,SBSA Level 4认证
  • 高级电源管理模块

性能

  • SPECrate®2017 Integer Estimated: 300
基准测试配置信息

我们使用 Rally(在此处下载)作为 Elasticsearch 基准测试的负载生成器。Rally 提供了几个场景,这些场景由不同数据集类型组成的不同基准测试场景,例如:http_logs - 由 HTTP 服务器日志数据组成,NYC 出租车 - 由 2015 年纽约的出租车乘车组成等。每个场景迎合不同的应用程序数据类型 ,选择正确的数据类型后,我们可以选择的挑战模式可以是仅追加,或者索引和追加。

我们建议使用 Elastic 为 aarch64 预构建的最新 Elasticsearch 版本。我们在 OCI(内核 5.4)上使用 Oracle Linux 7.9 和 Elasticsearch 7.17 进行测试。对于每个测试,我们使用类似的客户端机器作为 Elasticsearch 的负载生成器。

我们建议使用GCC(GNU 编译器)10.2 或其更新版本编译的最新 JDK,因为较新的编译器对aarch64 处理器上的代码优化帮助很大,性能将显著提升。对于此测试,我们使用 JDK 17,使用 GCC 10.2 编译。

我们在两种系统设置下进行了测试。 首先,我们比较了 Ampere Altra 上的单节点 Elasticsearch 服务、AMD Milan 和 Intel Icelake 在 OCI 上的 虚拟机。 其次,我们在 OCI 上比较了 Ampere Altra、AMD Milan 和 Intel Icelake 虚拟机上的 3 节点 Elasticsearch 集群。 对于单节点测试,我们对两种 VM 大小进行了测试,一种具有 2 个逻辑线程,一种具有 4 个逻辑线程。

在 2 个逻辑线程的测试中,虚拟机有 8GB RAM,其中 4GB 分配给 jvm。 在 4 个逻辑线程的测试中,虚拟机有 16GB RAM,其中 8GB 分配给 jvm。我们使用 G1GC 作为所有测试的垃圾收集器。IOPS 为 75,000 的块卷用于存储所有测试的数据。

这是我们的esrally测试命令行示例,这里我们测试的是 track pmc –

esrally race --track=pmc --target-hosts=:9200 --pipeline=benchmark-only --challenge=append-no-conflicts-index-only

我们使用了几个场景来对 Elasticsearch 加压,每个场景都有它支持的不同数据集/数据类型。 以下是每个数据集的摘要 -

  • http_logs – contains HTTP server log data

  • PMC – is a full text benchmark comprising of academia papers from PubMed Central® (PMC)

  • Nested – contains nested documents from StackOverflow Q&A

  • Geonames – consists of points of interests from the Geonames geographical database

  • nyc_taxis – consists of Taxi rides in New York in the year 2015

每个测试运行 3 次,下面的报告中使用结果的中位数。

基准测试结果
Fig 1. Single Node - Throughput @ 2 Logical Threads
Fig 2. Single Node - Throughput @ 4 Logical Threads
Fig 3. Elasticsearch 3 Node Cluster - Throughput
基准测试结论

如图 1 所示,在具有 2 个逻辑线程的单节点 Elasticsearch 上,我们观察到 Ampere Altra 虚拟机的吞吐量比 AMD Milan 虚拟机高 43%,与 Intel Icelake 相比高 30%。

如图 2 所示,在具有 4 个逻辑线程的单节点 Elasticsearch 上,我们观察到 Ampere Altra 虚拟机的吞吐量比 AMD Milan 虚拟机高 43%,与 Intel Icelake 虚拟机相比高 25%。

我们还在一个 3 节点集群中测试了 Elastic 搜索服务。在图 3 中,我们观察到 Ampere Altra 虚拟机的吞吐量比 AMD Milan 虚拟机高 58%,比 Intel Icelake 虚拟机高 27%。

如今,许多云工作流程都使用了可扩展的搜索引擎。Elasticsearch 是一种流行且高效的搜索引擎,可用于横向扩展配置。 Ampere Altra 处理器旨在为 Elasticsearch 等云原生应用程序提供卓越的性能和能源效率。在 Ampere 的测试中,与市场上最好的 x86 处理器相比,Ampere Altra处理器展示了引人注目的性能和出色的能效。 有关此工作负载的更多信息,请访问 https://solutions.amperecomputing.com/。

脚注

此处包含的所有数据和信息仅供参考,Ampere 保留更改它的权利,恕不另行通知。本文档可能包含技术错误、遗漏和印刷错误,Ampere 没有义务更新或更正此信息。 Ampere 不作任何形式的陈述或保证,包括但不限于对不侵权、适销性或适用于特定目的的明示或暗示保证,并且不承担任何形式的责任。所有信息均“按原样”提供。本文件不是 Ampere 的要约或具有约束力的承诺。使用此处设想的产品需要随后的谈判和最终协议的执行,或者受 Ampere 的商品销售条款和条件的约束。

与 Ampere 测试中使用的不同的系统配置、组件、软件版本和测试环境可能会导致与 Ampere 获得的测量结果不同。

©2022 Ampere Computing 版权所有。Ampere、Ampere Computing、Altra 和“A”标志都是 Ampere Computing 的注册商标或商标。 Arm 是 Arm Limited(或其子公司)的注册商标。本出版物中使用的所有其他产品名称仅用于识别目的,可能是其各自公司的商标。

Ampere Computing® / 4655 Great America Parkway, Suite 601 / Santa Clara, CA 95054 / amperecomputing.com

Ampere Computing

4655 Great America Parkway

Suite 601 Santa Clara, CA 95054

Tel: +86-021-64338766

info[at]amperecomputing.com

关于我们
image
image
© 2022 Ampere Computing LLC. All rights reserved. Ampere, Altra and the A and Ampere logos are registered trademarks or trademarks of Ampere Computing.