HBase edut, haitat ja suorituskyvyn pullonkaula

HBase-arkkitehtuurissa on aina "Yksi epäonnistumispiste”-ominaisuutta, eikä siihen liity poikkeuksenkäsittelymekanismia.

Täällä opimme, mitkä ovat HBasen ja suorituskyvyn pullonkaulojen edut ja haitat:

Suorituskyvyn pullonkaulat HBasessa

  • Missä tahansa tuotantoympäristössä HBase toimii yli 5000 solmun klusterilla, vain Hmaster toimii isäntänä kaikille orjaaluepalvelimille. Jos Hmaster kaatuu, se voidaan palauttaa vasta pitkän ajan kuluttua. Vaikka asiakas pystyy muodostamaan yhteyden aluepalvelimeen. Toinen isäntä on mahdollista, mutta vain yksi on aktiivinen. Kestää kauan aktivoida toinen Hmaster, jos päähmaster menee alas. Joten Hmaster on suorituskyvyn pullonkaula.
  • HBasessa emme voi toteuttaa ristiindataoperaatioita ja liitosoperaatioita, toki voimme toteuttaa liitosoperaatioita käyttämällä MapReduce, jonka suunnitteluun ja kehittämiseen kuluisi paljon aikaa. Taulukkoliitostoimintoja on vaikea suorittaa HBase-ohjelmassa. Joissakin käyttötapauksissa on mahdotonta luoda liitostoimintoja, jotka liittyvät HBase-taulukoihin
  • HBase vaatisi uutta suunnittelua, kun haluamme siirtää tietoja RDBMS:n ulkoisista lähteistä HBase-palvelimiin. Tämä prosessi vie kuitenkin paljon aikaa.
  • HBase on todella vaikea kyselyyn. Meidän on ehkä integroitava HBase joihinkin SQL kerrokset kuten Apache phoenix, jossa voimme kirjoittaa kyselyitä laukaisemaan tiedot HBasessa. On todella hyvä, että Apache Phoenix on HBasen päällä.
  • Toinen HBasen haittapuoli on, että meillä ei voi olla enempää kuin yksi indeksointi taulukossa, vain riviavainsarake toimii ensisijaisena avaimena. Joten suorituskyky olisi hidasta, kun halusimme etsiä useammasta kuin yhdestä kentästä tai muusta kuin rivinäppäimestä. Tämän ongelman voimme voittaa kirjoittamalla MapReduce-koodin integroimalla Apache SOLR ja Apache Phoenixin kanssa.
  • Hitaita parannuksia tietoturvaan eri käyttäjien pääsyssä HBase-tietoihin.
  • HBase ei tue osittaisia ​​avaimia kokonaan
  • HBase sallii vain yhden oletuslajittelun taulukkoa kohden
  • On erittäin vaikeaa tallentaa suurikokoisia binaaritiedostoja HBaseen
  • HBasen tallennus rajoittaa reaaliaikaisia ​​kyselyitä ja lajittelua
  • Avainhaku ja aluehaku taulukon sisällön etsimisen kannalta avainarvojen avulla, se rajoittaa reaaliajassa toimivia kyselyitä
  • Oletusindeksointia ei ole HBase-ohjelmassa. Ohjelmoijien on määriteltävä useita koodirivejä tai komentosarjaa suorittaakseen indeksointitoiminnon HBasessa
  • Kallis laitteistovaatimusten ja muistilohkojen varauksen kannalta.
    • Lisää palvelimia tulisi asentaa hajautettuihin klusteriympäristöihin (kuten jokainen palvelin NameNode-, DataNodes-, ZooKeeperja aluepalvelimet)
    • Suorituskyvyn kannalta se vaatii paljon muistia koneita
    • Kustannus- ja ylläpitonäkökulmasta se on myös korkeampi

HBase-etu, rajoitukset ja suorituskyvyn pullonkaula

HBasen edut

Täällä opimme, mitkä ovat HBasen edut / edut:

  • Voi tallentaa suuria tietojoukkoja HDFS-tiedostotallennustilan päälle ja yhdistää ja analysoida miljardeja HBase-taulukoissa olevia rivejä
  • HBasessa tietokanta voidaan jakaa
  • OperaTiedon lukeminen ja käsittely vie vain vähän aikaa perinteisiin relaatiomalleihin verrattuna
  • Satunnaiset luku- ja kirjoitustoiminnot
  • HBasea käytetään laajasti online-analyyttisiin operaatioihin.
  • Esimerkiksi: Pankkisovelluksissa, kuten pankkiautomaattien reaaliaikaisissa datapäivityksissä, HBasea voidaan käyttää.

HBasen haitat

Tässä ovat HBasen tärkeät haitat / rajoitukset:

  • Emme voi odottaa käyttävämme HBasea perinteisten mallien korvaajana. HBase ei tue kaikkia perinteisten mallien ominaisuuksia
  • HBase ei voi suorittaa toimintoja, kuten SQL. Se ei tue SQL-rakennetta, joten se ei sisällä kyselyn optimoijaa
  • HBase on prosessori- ja muistiintensiivinen, ja siinä on suuri peräkkäinen tulo- tai lähtöyhteys, kun taas Map Reduce -työt ovat ensisijaisesti sidottu kiinteään muistiin. Map-reduce -töiden kanssa integroitu HBase johtaa arvaamattomiin viiveisiin
  • HBase integroitu porsaan ja Hive työt aiheuttavat joitain aikamuistiongelmia klusterissa
  • Jaetussa klusteriympäristössä määritys vaatii vähemmän tehtäväpaikkoja solmua kohden HBase-suoritinvaatimusten varaamiseksi