HBase-kunder, der opgraderer til CDH 6 fra CDH 5, vil også få en HBase-opgradering, der flytter fra HBase1 til HBase2. Ydeevne er et vigtigt aspekt, kunderne overvejer. Vi målte ydeevnen af CDH 5 HBase1 vs CDH 6 HBase2 ved hjælp af YCSB-arbejdsbelastninger for at forstå ydeevneimplikationerne af opgraderingen på kunder, der foretager opgraderinger på stedet (ingen ændringer af hardware).
Om YCSB
Til vores test brugte vi Yahoo! Cloud Serving Benchmark (YCSB). YCSB er en open source-specifikation og programpakke til evaluering af genfinding og vedligeholdelse af computerprogrammer. Det bruges ofte til at sammenligne den relative ydeevne af NoSQL-databasestyringssystemer.
Det originale benchmark blev udviklet af arbejdere i forskningsafdelingen hos Yahoo! der udgav den i 2010.
Mere information om YCSB på https://github.com/brianfrankcooper/YCSB
I vores testmiljø blev YCSB @1TB dataskala brugt, og kørearbejdsbelastninger inkluderede YCSB standardarbejdsbelastninger og tilpassede arbejdsbelastninger.
Anvendte YCSB-testarbejdsbelastninger:
- Workload A (Læs+Opdater) :Applikationseksempel:Sessionslager, der optager seneste handlinger i en brugersession
- 50 % LÆST
- 50 % OPDATERING
- Workload C (skrivebeskyttet) :Applikationseksempel:Læs brugerprofilcache, hvor profiler er konstrueret andre steder (f.eks. Hadoop)
- 100 % LÆS
- Workload F (Læs+Rediger+Skriv) :Applikationseksempel:Brugerdatabase, hvor brugerregistreringer læses og ændres af brugeren eller for at registrere brugeraktivitet
- 50 % LÆST
- 25 % OPDATERING
- 25 % LÆS-ÆNDRING-SKRIV
- Kun opdatering af Cloudera tilpasset YCSB-arbejdsbelastning :Applikationseksempel:Masseopdateringer
- 100 % OPDATERING
Mere information om YCSB-arbejdsbelastninger på https://github.com/brianfrankcooper/YCSB/wiki/Core-Workloads
Testmetode
Vi indlæser YCSB-datasættet med 1000.000.000 poster med hver post på 1KB i størrelse, hvilket skaber i alt 1TB data. Efter indlæsning venter vi på, at alle komprimeringsoperationer er færdige, før vi starter arbejdsbelastningstesten. Hver testet arbejdsbelastning blev kørt 3 gange i 15 minutter hver og gennemløbet* målt. Det gennemsnitlige antal er taget fra 3 tests for at producere det endelige antal.
* Gennemløb (ops/sek) =antal operationer pr. sekund
Gennemstrømssammenligning af CDH5 HBase1 vs CDH6 HBase2 ved hjælp af YCSB
Kun brugerdefineret opdateringsgennemstrømning
Kun opdatering . Brugstilfælde:Masseopdateringer
CDH6 HBase2-gennemløb 50 % mere end CDH5 HBase1
YCSB Workload A-gennemløb
Tung opdatering. Brugstilfælde:Sessionslager, registrering af seneste handlinger
CDH6 HBase2-gennemstrømning 6 % mindre end CDH5 med HBase1
YCSB Workload C-gennemløb
Skrivebeskyttet. Brugstilfælde:Brugerprofilcache, nyhedsfeed-cache
CDH6 HBase2-gennemstrømning 5 % mindre end CDH5 HBase1
YCSB-arbejdsbelastning F-gennemløb
Læs-Rediger-Skriv. Brugstilfælde:Aktivitetslager, brugerdatabaser
CDH6 HBase2-gennemstrømning meget tæt på CDH5 HBase1
Oversigt over testresultater
Kun tilpasset opdatering arbejdsbyrde : HBase2 CDH6-opdatering Kun arbejdsbyrden udførte 50 % bedre end HBase1 CDH5
YCSB Workload F workload: CDH6 YCSB Workload F arbejdsbelastningsoperationer og gennemløb var meget ens til CDH5 HBase1
YCSB Workload A og YCSB Workload C workloads: CDH6 YCSB Workload C Read Only og YCSB Workload A havde ca. 5 % mindre operationer og gennemløb end CDH5 HBase1
CDH-versioner sammenlignet
CDH6-version:Cloudera Enterprise 6.2
CDH5-version:Cloudera Enterprise 5.16.2
Java VM-navn:Java HotSpot(TM) 64-Bit Server VM
Java-version:1.8.0_141
Testmiljø
Klynge brugt : 6 node klynge
Node Beskrivelse: Dell PowerEdge R430, 20c/40t Xenon e5-2630 v4 @ 2,2Ghz, 128GB ram, 4-2TB diske
Testopsætning
- YCSB-version:0.14.0
- YCSB Binding Version hbase20
- YCSB-tabel @1TB-skala
- WAL-konfigurationer
- Per-RegionServer Antal WAL-rørledninger (wal.regiongrouping.numgroups ) indstillet til 1
- Multi-WAL:wal.provider indstillet til Multiple HDFS WAL
- Bemærk -> Her er Single WAL brugt som WAL pipelines sat til 1
- Asyncfs WAL:region.replica.replication.enabled indstillet til falsk
- Sikkerhed: Ingen konfigureret (ingen Kerberos)
- Regionsservere
- Antal regioner i YCSB-tabellen 250, med 5+1 node-klynge dens ca. 50 regioner pr. regionsserver
- Gennemsnitlig regionsserverstørrelse 290G
- Data pr. region ~ 6G
- Kun L1-cache med LruBlockCache brugt med 3 GB cachestørrelsesgrænse
Baseret på vores test (resultaterne ovenfor), bør kunder, der ønsker at opgradere fra CDH 5.x til 6.x, forvente væsentligt forbedret ydeevne for masseopdateringer og nogenlunde lignende ydeevne for andre arbejdsbelastninger sammenlignet med, hvad de får i dag.
Læs mere om Cloudera Operational DB her