sql >> Databasteknik >  >> NoSQL >> HBase

Operativa databasprestandaförbättringar i CDP Private Cloud Base 7 vs CDH5

Cloudera Data Platform (CDP) Private Cloud är den mest omfattande lokala plattformen för integrerad analys och datahantering. Den kombinerar det bästa från Cloudera Enterprise Data Hub och Hortonworks Data Platform Enterprise Plus, och tar med den senaste och bästa tekniken med öppen källkod för datahantering och analys till datacentret.

Med den senaste versionen (7) av CDP Private Cloud Base har vi introducerat ett antal nya funktioner och förbättringar. I det här blogginlägget vill vi dela de prestandaförbättringar som finns tillgängliga i Apache HBase.

För dig som är ny på HBase eller utvärderar det för ett nytt projekt, är HBase en icke-relationellt distribuerad databas som är betrodd av arkitekter och utvecklare som vill bearbeta stora mängder data på ett snabbt och tillförlitligt sätt.

För denna prestandajämförelse mätte vi HBase2 tillgängligt i CDP Private Cloud Base 7 till Hbase1 tillgängligt i CDH 5 med YCSB-arbetsbelastningar. Jämförelsen hjälper oss att förstå prestandaförbättringarna och konsekvenserna för kunder som gör uppgraderingar på plats utan ändringar av underliggande hårdvara.

Obs! Kunder som uppgraderar från CDH 5 till CDP 7 kommer också att få en HBase-uppgradering från HBase1 till HBase2.

  • Arbetsbelastning endast för anpassad YCSB-uppdatering
    • Vår anpassade YCSB Update Only-arbetsbelastning utförs 
      • 100 % UPPDATERING
    • Ett applikationsexempel skulle vara en statistikbutik
    • Arbetsbelastningsprestanda: CDP 7 YCSB Update Endast arbetsbelastningens genomströmning (operationer per sekund) var 20 % bättre än när den kördes med CDH5

  • YCSB WorkloadA 
    • YCSB Workload A utför 
      • 50 % LÄS-operationer
      • 50 % UPPDATERING
    • Ett applikationsexempel skulle vara en sessionsbutik som registrerar senaste åtgärder i en användarsession 
    • Arbetsbelastningsprestanda:CDP Private Cloud Base 7.1 HBase2 YCSB arbetsbelastning En genomströmning (operationer per sekund) var 15 % bättre än CDH5 HBase1

  • YCSB Workload C (skrivskyddad) 
    • YCSB Workload C är en skrivskyddad arbetsbelastning och utför 
      • 100 % LÄS-åtgärder
    • Ett applikationsexempel skulle vara läs användarprofils cache när profiler konstrueras någon annanstans (t.ex. Hadoop) eller ett banksystem för att komma åt och se kontoutdrag 
    • Arbetsbelastningsprestanda:CDP 7 YCSB-arbetsbelastning C hade liknande genomströmning (operationer per sekund) som CDH 5

Bedömning – CDP 7 ger bättre prestanda än CDH 5 i YCSB  

Arbetsbelastning för Custom UpdateOnly :CDP 7 YCSB Update endast arbetsbelastning 20% bättre än C5.

YCSB-arbetsbelastning A :CDP 7 YCSB arbetsbelastning A presterade 15 % bättre än CDH5.

YCSB Workload C :CDP 7 YCSB skrivskyddad arbetsbelastning C hade liknande operationer/genomströmning till CDH 5 

Under våra tester märkte vi att uppgradering från JDK8 till JDK 11 inom CDP 7 kan förbättra prestandan med ytterligare 10 %. Detta är utöver prestandaförbättringarna som uppnåtts genom att uppgradera från CDH5 till CDP7.

CDP 7 kommer med JDK8 installerad som standard och stöder en uppgradering till JDK11. I våra testkörningar uppdaterades CDP 7 för att använda JDK 11 för YCSB-arbetsbelastningskörningar som visas ovan. Vi körde samma arbetsbelastningar med JDK8 också, och testresultaten visade att JDK11-prestanda är 5-10 % bättre jämfört med JDK8 , som visas i diagrammet nedan

Följ stegen nedan för att uppgradera CDP 7 från JDK 8 till OpenJDK 11:

Steg 1:Installera OpenJDK11 på alla värdar med hjälp av nedan

RHEL 

sudo yum install java-11-openjdk

Ubuntu

sudo apt install openjdk-11-jdk

Steg 2:Endast på Cloudera Manager Server-värden (krävs inte för andra värdar):

  1. Öppna filen /etc/default/clooudera-scm-server i en textredigerare.
  2. Redigera raden som börjar med export JAVA_HOME (om den här raden inte finns, lägg till den) och ändra sökvägen till sökvägen till den nya JDK (JDK är vanligtvis installerad i / usr/lib/jvm)(eller /usr/lib64/jvm på SLES 12), men sökvägen kan skilja sig beroende på hur JDK installerades).

Följ mer information om att uppgradera JDK Uppgraderar JDK

Testmiljö

Testmetod

CDH 5.16.3/HBase1 installerades på klustret och arbetsbelastningsdata med 1 miljard rader (Datauppsättningsstorlek 1TB) genererades och CDH 5.16.3 YCSB-arbetsbelastningar kördes. Efter laddningen väntade vi på att alla packningsoperationer skulle slutföras innan vi påbörjade arbetsbelastningstestet.

När CDH 5.16.3-körningar var klara, reninstallerades CDP Private Cloud Base 7.1 HBase2 och data återskapades i samma kluster. CDP Private Cloud Base 7.1 YCSB-arbetsbelastningar kördes sedan för att få testtiderna. Före varje körning av arbetsbelastning initierade vi HBase-tabellen som används av YCSB. Ögonblicksbild av användartabellen utable_snap skapades och tillämpades före varje körning.

Varje testad arbetsbelastning kördes 3 gånger under 15 minuter vardera för att mäta genomströmningen*. Resultaten som visas är medelvärden från de 3 testerna.

*Genomströmning (ops/sek) =antal operationer per sekund

CDP Private Cloud Base 7.1 inkluderar HBase2 och CDH 5.16.3 inkluderar HBase1. Både CDP Private Cloud Base 7.1 och CDH5 har JDK 8 installerat. CDP Private Cloud Base 7.1 stöder JDK11 och CDP Private Cloud Base 7.1 uppdaterades för att använda JDK 11 för YCSB-testning, CDH 5.13.3-körningar kördes med JDK 8 (1.8.0_141)

Testa konfigurationer

  • YCSB version 0.17.0
  • YCSB-bindande version hbase2(CDP-CD 7.1) och hbase1(CDH 5) 
  • YCSB-klienter använde 2
  • YCSB-trådar per klient 20
  • Datastorlek
    • YCSB-tabell @1TB skala
    • Totalt antal poster i YCSB-tabellen 1 000 000 000 (1TB), varje post är 1KB
    • Antal regioner i YCSB-tabellen 250, med 5+1 nodkluster dess cirka 50 regioner per regionserver
    • Genomsnittligt områdeslagringsutrymme som används per serverstorlek 290G
  • HBase Region-servrar konfigurerades med 32 GB heap 
  • Endast L1-cache med LruBlockCache användes med 12,3 GB cachestorlek
  • L1 cache-träffprocent som observerades under körningar på regionservrar var 85 %
  • L2 off heap-cache konfigurerades inte i klustret

Klusterkonfigurationer

  • Använt kluster: 6 nodkluster (1 master + 5 regionservrar)
  • Beskrivning: Dell PowerEdge R430, 20c/40t Xenon e5-2630 v4 @ 2,2Ghz, 128GB RAM, 4-2TB diskar
  • Säkerhet: Ingen konfigurerad (ingen Kerberos)

Cloudera-versioner jämförs

C7-version :CDP Private Cloud Base 7.1.0

C5-version: CDH5.16.3

Använda JDK:er:JDK 8 ( 1.8.0_141) och JDK 11 (11.0.6)

Baserat på våra tester (resultat ovan) bör kunder som vill uppgradera från CDH 5 till CDP 7 förvänta sig förbättrad prestanda för liknande arbetsbelastningar jämfört med vad de får idag.

Läs mer om Cloudera Operational DB här


  1. ServiceStack Entities ID-fältnamn

  2. Installerar Redis på Debian 9

  3. Vad du ska veta när du börjar arbeta med MongoDB i produktion - tio tips

  4. Hur återupptar man hash-slots för en viss nod i redis-klustret i händelse av hårda fel?