首頁 Enterprise 英特爾傲騰 DC 持久內存 NoSQL 性能評估

英特爾傲騰 DC 持久內存 NoSQL 性能評估

by 布賴恩·比勒

今年早些時候我們發布了 英特爾傲騰 DC 持久內存 我們審查的數據 美超微 SuperServer 1029U-TN10RT 平台。 超微 是首批支持英特爾持久內存的產品之一,雙處理器 2U 系統作為持久內存測試平台表現出色。 查看傳統塊存儲方式中的 Optane DC 持久內存速度具有指導意義,但持久內存的真正價值體現在可以在本地利用這種新介質的應用程序,智能地將數據放入 DRAM、持久內存或板載存儲作為應用需求。 為了更好地了解 Optane DC 持久內存的性能概況,我們使用領先的 NoSQL 平台 Aerospike 讓 Supermicro 服務器運行。


今年早些時候我們發布了 英特爾傲騰 DC 持久內存 我們審查的數據 美超微 SuperServer 1029U-TN10RT 平台。 超微 是首批支持英特爾持久內存的產品之一,雙處理器 2U 系統作為持久內存測試平台表現出色。 查看傳統塊存儲方式中的 Optane DC 持久內存速度具有指導意義,但持久內存的真正價值體現在可以在本地利用這種新介質的應用程序,智能地將數據放入 DRAM、持久內存或板載存儲作為應用需求。 為了更好地了解 Optane DC 持久內存的性能概況,我們使用領先的 NoSQL 平台 Aerospike 讓 Supermicro 服務器運行。

英特爾傲騰 DC 持久內存
Supermicro 服務器中的 Intel Optane DC 持久內存模塊

什麼是 Aerospike?

Aerospike 為涉及操作數據的要求苛刻的讀/寫工作負載提供分佈式、高度可擴展的非關係數據庫管理系統。 它旨在提供極快且可預測的響應時間,以訪問跨越 10 至 100 TB 數據庫中數十億條記錄的數據集。 Aerospike 為各種戰略應用程序提供支持,包括欺詐預防、數字支付、推薦引擎、實時投標等。 Aerospike 的客戶包括 Adob​​e、Airtel、FlipKart、Kayak、Nielsen、PayPal 和 Wayfair 等知名企業。

根據用例和數據集,Aerospike 可以部署在各種配置中,為用例優化系統資源。 Aerospike 可以用內存中的數據啟動,也可以在內存中索引數據在 SSD 上,或者在 SSD 上索引和數據在 SSD 上。 最近,Aerospike 發布了一種新配置,它在 AppDirect 模式下利用了英特爾的 Optane DC 持久內存。 索引與 SSD 上的數據一起存儲在 PMEM 中。 這種新模式擴展了 Aerospike 的容量,同時保持非常接近內存索引和 SSD 數據的性能。 這種新模式不僅提供亞毫秒級延遲,而且無需重建主索引即可快速完全重啟 Aerospike。

通過在不同的 Aerospike 配置中應用不同類型的工作負載,可以評估在 SuperMicro SuperServer 上使用英特爾傲騰 DC 持久內存的優勢和性能。 針對 SSD 配置上的內存/數據中的索引和 SSD 上的 PMEM/數據中的索引運行和比較基準測試提供的信息可以在持久內存與 DRAM 的使用上做出明智的選擇。 還有一種額外的配置可以為持久內存提供額外的性能洞察力。 雖然 PMEM 中的索引和 PMEM 中的數據功能尚未發布,但有一種方法可以將服務器上的 PMEM 配置為使用 PMEM 中的索引運行,並運行配置為塊設備的 PMEM 的一部分,讓您了解PMEM 中的索引和 PMEM 中的數據的性能可能性。

Aerospike NoSQL 配置

三種不同的工作負載應用於三種不同的配置中的每一種。 Aerospike Java 基準測試從 50 個客戶端服務器生成了 50/4 讀/寫工作負載、只讀工作負載和只寫工作負載。 每個測試由多個階段組成:

  • 攝取階段——將數據加載到數據庫中。
  • 預熱階段 – 運行兩個小時的寫入負載以創建數據庫的穩定狀態。
  • 測試階段 – 運行一個小時的測試實際工作負載。

在運行任何測試之前,為數據選擇了適當的鍵集和對像大小。 儘管 Aerospike 的對像大小範圍很廣,從幾個字節到一百萬字節不等,但選擇密鑰集和對像大小來測試服務器硬件並演示 PMEM 配置的性能。 較大的對像大小可能會造成網絡瓶頸,並且無法充分展示 Optane DC 持久內存的強大功能。 因此,所有測試都使用了 440 字節的對像大小。

鍵集大小受用於內存/SSD 配置中的索引的內存量的限制。 內存配置中的索引僅限於 4 億個對象的數據集。 儘管 PMEM 中的索引可以處理 15.5 億個鍵的容量,但為了更好地與內存測試中的索引進行比較,僅使用了 4 億個鍵。 最後一組測試在 PMEM 中運行索引,在 PMEM 中運行數據。 因為服務器總共有 1.5TB 的 PMEM,所以這些測試只使用了十億個密鑰。

硬件配置

硬件配置包括兩個關鍵組件。 單個數據庫服務器裝有 Intel Optane PC 持久內存。 四個客戶端服務器生成針對數據庫服務器的負載。

數據庫服務器

  • 機箱 – SuperMicro Ultra 1U SYS-1029U-TN10RT
  • 中央處理器
    • 2 個英特爾至強可擴展 8268(2.9GHz,24C)
    • 2 個英特爾至強可擴展 8280(2.7GHz,28C)
  • 存儲 – 10 x Intel DC P4510 2TB NVMe SSD, 1DWPD
  • 內存 – 12 x 32GB DDR4-2933
  • 持久內存 – 12 個 128GB DDR4-2666 Intel Optane DC PMM
  • 網絡 – 100 GbE
  • 操作系統——Fedora 29  

客戶端服務器

  • 機箱 – 戴爾 R740xd
  • CPU – 2 個英特爾至強可擴展 6130
  • 內存 – 256GB
  • 網絡 – 2 x 25 GbE
  • 操作系統 – Ubuntu – 18.04
  • 軟件 – Aerospike Enterprise 4.5.1
  • 負載生成器 – Aerospike Java 基準測試(Aerospike Java 客戶端 4.4.0)

Aerospike 性能結果

如前所述,我們在各種工作負載配置以及索引和數據庫的位置上運行了測試。 此外,我們使用了兩組不同的 第二代英特爾至強可擴展 CPU. 我們在數據庫服務器中同時運行了 8268 和 8280,8280 CPU 是支持 Optane DC 持久內存的最高 bin Intel CPU。 在原始時鐘速度方面,8280 比 12 高出 8268Ghz,即性能提高了 8.6%。 雖然不在下表中,但應該注意的是,就服務質量而言,所有測試的延遲結果在服務器上都達到或接近 100% 亞毫秒。

內存中的索引,NVMe SSD 上的數據

活動 吞吐量操作
英特爾8268
吞吐量操作
英特爾8280
讀/寫 50/50 2,100,000 2,298,000
閱讀 100% 2,240,000 2,720,000
寫 100% 1,760,000 2,020,000

雖然我們知道 8280 的原始時鐘速度比 8.6 提高了 8268%,但核心目標是了解這如何轉化為應用程序改進。 使用 Aerospike,索引位於內存中,數據位於 NVMe SSD 上,我們看到了以下行項目更改。 混合讀/寫 50/50 性能提升 9.4%,100% 讀取性能提升 21.4%,100% 寫入性能提升 14.8%。 

Optane DC Persistent Memory 中的索引,NVMe SSD 上的數據

活動 吞吐量操作
英特爾8268
吞吐量操作
英特爾8280
讀/寫 50/50 2,000,000 2,252,000
閱讀 100% 2,200,000 2,630,000
寫 100% 1,740,000 1,980,000

正如我們在該數據中所見,將索引從 DRAM 移至持久內存對事務性能幾乎沒有影響。 不過在生產中,這意味著因為 Aerospike 可以使用持久內存而不是 DRAM 來創建索引,所以在數據庫節點重啟後恢復速度要快得多,因為大量的 DRAM 不需要轉到 SSD 進行重建。 高密度機箱還可以節省成本,因為接受測試的 128GB Optane DC 持久內存模塊比 128GB DIMM 便宜得多。 

Optane DC 持久內存的索引和數據

活動 吞吐量操作
英特爾8268
吞吐量操作
英特爾8280
讀/寫 50/50 2,600,000 2,866,000
閱讀 100% 2,810,000 3,100,000
寫 100% 2,120,000 2,210,000

如前所述,Aerospike 已宣布但尚未提供在英特爾傲騰 DC 持久內存上運行索引和數據庫的能力的普遍可用性。 也就是說,我們確實演示了允許它的當前代碼構建,它顯示在混合工作負載中大約每秒增加 33% 或 600,000 次操作。 

結論

英特爾傲騰數據中心級持久內存是數據層次結構中非常強大的部分。 介於 RAM 和存儲之間,英特爾的持久內存化身最終帶來了技術主流。 但僅僅能夠使用新的存儲技術還不夠好,能夠在本地利用持久內存的應用程序將具有巨大的競爭優勢。 我們在 Aerospike 上看到的靈活性表明他們已經準備好為 Optane DC 持久內存提供應用程序直接模式支持(塊存儲)。 此外,在將索引和數據保存在持久內存模塊上方面,他們是 NoSQL 領域的領導者。 雖然後者仍然是一個新興的願​​景,但早期的結果看起來非常有希望。

氣釘

討論這篇評論

註冊 StorageReview 時事通訊