HBase-kunder som uppgraderar till CDH 6 från CDH 5 kommer också att få en HBase-uppgradering från HBase1 till HBase2. Prestanda är en viktig aspekt som kunderna tar hänsyn till. Vi mätte prestandan för CDH 5 HBase1 vs CDH 6 HBase2 med YCSB-arbetsbelastningar för att förstå prestandakonsekvenserna av uppgraderingen på kunder som gör uppgraderingar på plats (inga ändringar av hårdvaran).
Om YCSB
För våra tester använde vi Yahoo! Cloud Serving Benchmark (YCSB). YCSB är en öppen källkodsspecifikation och programsvit för att utvärdera hämtning och underhåll av datorprogram. Det används ofta för att jämföra relativa prestanda för NoSQL-databashanteringssystem.
Det ursprungliga riktmärket utvecklades av arbetare i forskningsavdelningen på Yahoo! som släppte den 2010.
Mer information om YCSB på https://github.com/brianfrankcooper/YCSB
I vår testmiljö användes YCSB @1TB dataskala, och körningsarbetsbelastningar inkluderade YCSB standardarbetsbelastningar och anpassade arbetsbelastningar.
YCSB-testarbetsbelastningar som används:
- Arbetsbelastning A (Läs+Uppdatera) :Applikationsexempel:Sessionslager som registrerar senaste åtgärder i en användarsession
- 50 % LÄS
- 50 % UPPDATERING
- Arbetsbelastning C (skrivskyddad) :Applikationsexempel:Läs användarprofilcache, där profiler är konstruerade någon annanstans (t.ex. Hadoop)
- 100 % LÄS
- Arbetsbelastning F (Läs+Ändra+Skriv) :Applikationsexempel:Användardatabas, där användarposter läses och ändras av användaren eller för att registrera användaraktivitet
- 50 % LÄS
- 25 % UPPDATERING
- 25 % LÄS-ÄNDRA-SKRIV
- Endast uppdatering av Cloud-anpassad YCSB-arbetsbelastning :Applikationsexempel:Massuppdateringar
- 100 % UPPDATERING
Mer information om YCSB-arbetsbelastningar på https://github.com/brianfrankcooper/YCSB/wiki/Core-Workloads
Testmetodik
Vi laddar YCSB-datauppsättningen med 1 000 000 000 poster med varje post 1 KB i storlek, vilket skapar totalt 1 TB data. Efter lastning väntar vi på att alla packningsoperationer är klara innan vi påbörjar arbetsbelastningstestet. Varje testad arbetsbelastning kördes 3 gånger i 15 minuter vardera och genomströmningen* mätt. Det genomsnittliga antalet tas från 3 tester för att ta fram det slutliga antalet.
* Genomströmning (ops/sek) =Antal operationer per sekund
Jämförelse av genomströmning av CDH5 HBase1 vs CDH6 HBase2 med YCSB
Endast anpassad uppdatering
Endast uppdatering . Användningsfall:Bulkuppdateringar
CDH6 HBase2 genomströmning 50 % mer än CDH5 HBase1
YCSB Workload A Throughput
Tung uppdatering. Användningsfall:Sessionslagring, inspelning av senaste åtgärder
CDH6 HBase2 genomströmning 6 % mindre än CDH5 med HBase1
YCSB Workload C-genomströmning
skrivskyddad. Användningsfall:Användarprofilcache, nyhetsflödescache
CDH6 HBase2 genomströmning 5 % mindre än CDH5 HBase1
YCSB Workload F Throughput
Läs-Ändra-Skriv. Användningsfall:aktivitetsarkiv, användardatabaser
CDH6 HBase2 genomströmning mycket nära CDH5 HBase1
Sammanfattning av testresultat
Endast anpassad uppdatering arbetsbelastning : HBase2 CDH6 Update Endast arbetsbelastningen presterade 50 % bättre än HBase1 CDH5
YCSB Workload F-arbetsbelastning: CDH6 YCSB Workload F arbetsbelastningsoperationer och genomströmning var mycket lika till CDH5 HBase1
YCSB Workload A och YCSB Workload C-arbetsbelastningar: CDH6 YCSB Workload C Read Only och YCSB Workload A hade cirka 5 % mindre operationer och genomströmning än CDH5 HBase1
CDH-versioner jämförda
CDH6 Version:Cloudera Enterprise 6.2
CDH5-version:Cloudera Enterprise 5.16.2
Java VM-namn:Java HotSpot(TM) 64-bitars server VM
Java-version:1.8.0_141
Testmiljö
Använt kluster: 6 nodkluster
Nodbeskrivning: Dell PowerEdge R430, 20c/40t Xenon e5-2630 v4 @ 2,2Ghz, 128GB RAM, 4-2TB diskar
Testa installationen
- YCSB-version:0.14.0
- YCSB-bindande version hbase20
- YCSB-tabell @1TB skala
- WAL-konfigurationer
- Per-RegionServer Antal WAL-pipelines (wal.regiongrouping.numgroups ) satt till 1
- Multi-WAL:wal.provider inställd på Multiple HDFS WAL
- Obs -> Här sätts Single WAL som används som WAL-pipelines till 1
- Asyncfs WAL:region.replica.replication.enabled inställd på false
- Säkerhet: Ingen konfigurerad (ingen Kerberos)
- Regionsservrar
- Antal regioner i YCSB-tabellen 250, med 5+1 nodkluster dess cirka 50 regioner per regionserver
- Genomsnittlig regionserverstorlek 290G
- Data per region ~ 6G
- Endast L1-cache med LruBlockCache används med 3 GB cachestorleksgräns
Baserat på våra tester (resultat ovan) bör kunder som vill uppgradera från CDH 5.x till 6.x förvänta sig avsevärt förbättrad prestanda för massuppdateringar och ganska liknande prestanda för andra arbetsbelastningar jämfört med vad de får idag.
Läs mer om Cloudera Operational DB här