Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase

Manuia le aoauli O loʻu igoa o Danil Lipovoy, o la matou 'au i Sbertech na amata faʻaogaina le HBase e fai ma teu mo faʻamatalaga faʻagaioiga. I le gasologa o le suʻesuʻeina, o le poto masani ua faʻaputuina na ou manaʻo e faʻatulagaina ma faʻamatala (matou te faʻamoemoe o le a aoga i le toʻatele). O faʻataʻitaʻiga uma o loʻo i lalo na faia i le HBase versions 1.2.0-cdh5.14.2 ma le 2.0.0-cdh6.0.0-beta1.

  1. fausaga lautele
  2. Tusia fa'amaumauga ile HBASE
  3. Faitau fa'amatalaga mai le HBASE
  4. Fa'amaumauga fa'amaumauga
  5. Fa'asologa o fa'amaumauga tu'ufa'atasi MultiGet/MultiPut
  6. Fuafuaga mo le vaevaeina o laulau i vaega (vaega)
  7. Fa'apalepale fa'aletonu, fa'apipi'i ma fa'amaumauga fa'amaumauga
  8. Fa'atonuga ma fa'atinoga
  9. Su'ega Fa'atiga
  10. sailiiliga

1. Fa'ataina lautele

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase
E fa'afofoga le Matai fa'apolopolo i le tata o le fatu o lo'o galue i luga o le node o le ZooKeeper ma, i le tulaga e mou atu, e fa'afoeina galuega a le matai.

2. Tusi fa'amaumauga ile HBASE

Muamua, se'i o tatou va'ai i le mataupu pito sili ona faigofie - tusia se mea taua-taua i luga o se laulau e fa'aaoga ai le put(rowkey). E tatau i le tagata o tausia ona su'e muamua po'o fea o iai le Root Region Server (RRS), lea e teu ai le laulau hbase:meta. Na te mauaina lenei faʻamatalaga mai le ZooKeeper. A maeʻa ona ulufale atu i le RRS ma faitau le hbase: meta laulau, lea e maua mai ai faʻamatalaga e uiga i le RegionServer (RS) e nafa ma le teuina o faʻamatalaga mo se rowkey tuʻuina atu i le laulau o tului. Mo le fa'aoga i le lumana'i, o le laulau meta o lo'o teuina e le kalani ma o le mea lea e alu vave ai telefoni, sa'o i le RS.

O le isi, RS, ina ua maua se talosaga, muamua na tusia i le WriteAheadLog (WAL), lea e manaʻomia mo le toe faʻaleleia i le tulaga o se faʻalavelave. Ona fa'asaoina lea o fa'amaumauga i le MemStore. O se fa'amaufa'ailoga lea o lo'o i ai se seti fa'avasegaina o ki mo se itulagi. E mafai ona vaevaeina se laulau i vaega (vaega), o ia mea taitasi e aofia ai se seti o ki. O lenei mea e mafai ai ona e tuʻuina itulagi i luga o 'auʻaunaga eseese e ausia ai le maualuga o faʻatinoga. Ae ui i lea, e ui lava i le manino o lenei faʻamatalaga, o le a tatou vaʻai mulimuli ane e le aoga lenei mea i tulaga uma.

A maeʻa ona tuʻuina se faʻamatalaga i totonu o le MemStore, e toe faʻafoʻi atu se tali i le kalani na faʻasaoina lelei le faʻamatalaga. Ae ui i lea, o le mea moni o loʻo teuina i totonu o se paʻu ma oʻo atu i le disk pe a maeʻa se taimi patino pe a faʻatumuina i faʻamatalaga fou.

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase
A fa'atino le fa'agaioiga "Ta'e", fa'amaumauga e le'o tapeina fa'aletino. E faʻailogaina na o le tapeina, ma o le faʻaumatiaga lava ia e tupu i le taimi e valaʻau ai le galuega faʻatusatusa tele, lea o loʻo faʻamatalaina atili i le parakalafa 7.

O faila i le HFile fa'aputuina o lo'o fa'aputuina i le HDFS ma mai lea taimi i lea taimi e fa'alauiloa ai le faiga fa'apipi'i la'ititi, lea e na'o le tu'ufa'atasia o faila laiti i faila tetele e aunoa ma le tapeina o se mea. I le aluga o taimi, e avea lenei mea ma faʻafitauli e naʻo le faʻaalia pe a faitau faʻamaumauga (o le a tatou toe foʻi mai i lenei mea i se taimi mulimuli ane).

I le faaopoopo atu i le faagasologa o le utaina o loʻo faʻamatalaina i luga, o loʻo i ai se faiga e sili atu ona aoga, atonu o le itu sili ona malosi o lenei faʻamaumauga - BulkLoad. O loʻo taoto i le mea moni tatou te tutoʻatasi HFiles ma tuʻu i luga o le tisiki, lea e mafai ai ona tatou fua lelei ma ausia ni saoasaoa lelei. O le mea moni, o le tapulaʻa iinei e le o le HBase, ae o le gafatia o meafaigaluega. O loʻo i lalo faʻaulu faʻaulu i luga o se fuifui e aofia ai 16 RegionServers ma 16 NodeManager YARN (CPU Xeon E5-2680 v4 @ 2.40GHz * 64 filo), HBase version 1.2.0-cdh5.14.2.

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase

O iinei e mafai ai ona e vaʻaia e ala i le faʻateleina o numera o vaeluaga (itulagi) i le laulau, faʻapea foʻi ma Spark executors, matou te maua le faʻateleina o le saoasaoa o le download. E le gata i lea, o le saoasaoa e faalagolago i le tele o le pueina. O poloka tetele e maua ai le faʻaopoopoga i le MB / sec, poloka laiti i le numera o faʻamaumauga faʻapipiʻi i le iunite o le taimi, o isi mea uma e tutusa.

E mafai fo'i ona e amata uta i laulau e lua i le taimi e tasi ma fa'aluaina le saoasaoa. I lalo e mafai ona e vaʻaia o le tusiaina o poloka 10 KB i laulau e lua i le taimi e tasi e tupu i le saoasaoa e tusa ma le 600 MB / sec i taʻitasi (atoa 1275 MB / sec), lea e fetaui ma le saoasaoa o le tusitusi i le tasi laulau 623 MB / sec (vaai Numera 11 luga)

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase
Ae o le taʻavale lona lua ma faʻamaumauga o le 50 KB o loʻo faʻaalia ai o loʻo faʻatupulaʻia le saoasaoa o le download, lea e faʻaalia ai o loʻo latalata atu i tau faʻatapulaʻaina. I le taimi lava e tasi, e tatau ona e manatua e toetoe lava a leai se uta na faia i luga o le HBASE lava ia, pau lava le mea e manaʻomia o le tuʻuina atu muamua o faʻamatalaga mai le hbase: meta, ma a maeʻa ona faʻapipiʻi HFiles, toe setiina le BlockCache data ma faʻasaoina le MemStore faʻapipiʻi i le tisiki, pe a le o avanoa.

3. Faitau fa'amaumauga mai le HBASE

Afai tatou te manatu ua uma ona maua e le kalani faʻamatalaga uma mai le hbase: meta (silasila i le vaega 2), ona alu saʻo lea o le talosaga ile RS lea e teu ai le ki manaʻomia. Muamua, o le sailiga e faia i MemCache. Tusa lava pe i ai faʻamatalaga iina pe leai, o le suʻesuʻega e faia foi i le BlockCache buffer ma, pe a manaʻomia, i HFiles. Afai na maua faʻamatalaga i le faila, e tuʻu i BlockCache ma o le a toe faʻafoʻi vave i le isi talosaga. O le suʻesuʻeina i le HFile e fai si vave faʻafetai i le faʻaogaina o le faamama Bloom, i.e. i le faitauina o se vaega itiiti o faʻamatalaga, e vave ona iloa pe o loʻo i ai i lenei faila le ki manaʻomia ma afai e leai, ona alu lea i le isi.

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase
O le mauaina o faʻamatalaga mai nei faʻapogai e tolu, RS e maua ai se tali. Aemaise lava, e mafai ona fesiita'i nisi fa'aliliuga maua o se mea i le taimi e tasi pe a mana'omia e le kalani le fa'aliliuina.

4. Fa'amaumauga Fa'amaumauga

O le MemStore ma le BlockCache buffers e o'o atu i le 80% o le fa'aputuga fa'amanatu RS (o le isi vaega e fa'aagaga mo galuega a le RS). Afai o le faʻaogaina masani faʻaoga e pei o faiga e tusitusi ma vave faitau faʻamatalaga tutusa, ona talafeagai lea e faʻaitiitia BlockCache ma faʻateleina MemStore, aua Pe a le o'o i totonu o le fa'amaumauga o fa'amaumauga mo le faitau, o le a fa'aitiitia le fa'aaogaina o le BlockCache. O le poloka BlockCache e aofia ai vaega e lua: LruBlockCache (i luga o faʻaputuga i taimi uma) ma le BucketCache (e masani lava i luga ole faʻaputuga poʻo luga ole SSD). E tatau ona fa'aoga le BucketCache pe a tele talosaga faitau ma e le fetaui i totonu o le LruBlockCache, lea e o'o atu ai i le galue malosi a le Fa'aputu otaota. I le taimi lava e tasi, e le tatau ona e faʻamoemoeina se faʻateleina o le faʻatinoga mai le faʻaaogaina o le cache faitau, ae matou te toe foʻi i lenei mea i le parakalafa 8

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase
E tasi le BlockCache mo le RS atoa, ma e tasi le MemStore mo laulau ta'itasi (tasi mo le Column Family).

E faapefea faamatalaina i le teori, pe a tusitusi, e le alu faʻamatalaga i totonu o le faʻamaufaʻailoga ma e moni lava, o ia taʻiala CACHE_DATA_ON_WRITE mo le laulau ma le "Cache DATA on Write" mo RS ua seti i le sese. Ae ui i lea, i le faʻatinoga, afai matou te tusia faʻamaumauga i le MemStore, ona fufulu lea i le disk (faʻamama ai), ona tape lea o le faila faila, ona faia lea o se talosaga maua o le a matou mauaina manuia faʻamatalaga. E le gata i lea, e tusa lava pe e te faʻamalo atoatoa BlockCache ma faʻatumu le laulau i faʻamatalaga fou, ona toe faʻafoʻi lea o le MemStore i le disk, tape ma talosagaina i latou mai se isi sauniga, o le a toe maua mai i se mea. O lea e teu ai e HBase na o faʻamaumauga, ae faʻapea foʻi mea lilo.

hbase(main):001:0> create 'ns:magic', 'cf'
Created table ns:magic
Took 1.1533 seconds
hbase(main):002:0> put 'ns:magic', 'key1', 'cf:c', 'try_to_delete_me'
Took 0.2610 seconds
hbase(main):003:0> flush 'ns:magic'
Took 0.6161 seconds
hdfs dfs -mv /data/hbase/data/ns/magic/* /tmp/trash
hbase(main):002:0> get 'ns:magic', 'key1'
 cf:c      timestamp=1534440690218, value=try_to_delete_me

O le "Cache DATA on Read" ua setiina i le sese. Afai ei ai ni ou manatu, faʻafeiloaʻi e talanoaina i faʻamatalaga.

5. Fa'aputuga fa'amaumauga o fa'amaumauga MultiGet/MultiPut

O le faʻatinoina o talosaga taʻitasi (Get/Put/Delete) e fai si taugata tele, o lea afai e mafai, e tatau ona tuʻufaʻatasia i latou i totonu o se Lisi poʻo se Lisi, lea e mafai ai ona e maua se faʻaleleia tele o galuega. E moni lava lenei mea mo le galuega tusitusi, ae pe a faitau o loʻo i ai le faʻalavelave lea. O le kalafi o loʻo i lalo o loʻo faʻaalia ai le taimi e faitau ai faʻamaumauga 50 mai MemStore. O le faitauga na faia i le tasi filo ma o le laina fa'alava o lo'o fa'aalia ai le numera o ki i le talosaga. O iinei e mafai ona e vaʻai ai pe a faʻateleina i le afe ki i le tasi talosaga, o le taimi o le faʻatinoga e pa'ū, i.e. faateleina le saoasaoa. Ae ui i lea, faʻatasi ai ma le faʻaogaina o le MSLAB mode e ala i le faaletonu, pe a maeʻa lenei laasaga e amata ai le pa'ū mataʻutia o le faʻatinoga, ma o le tele o le aofaʻi o faʻamaumauga i totonu o faʻamaumauga, o le umi o le taimi faʻaoga.

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase

Na faia suʻega i luga o se masini komepiuta, 8 cores, version HBase 2.0.0-cdh6.0.0-beta1.

O le MSLAB mode ua mamanuina e faʻaitiitia ai le faʻaputuga o faʻaputuga, lea e tupu ona o le faʻafefiloi o faʻamaumauga fou ma tuai. I le avea ai o se fofo, pe a mafai MSLAB, o faʻamaumauga e tuʻuina i totonu o sela laiti (chunks) ma faʻagasolo i pusi. O le i'uga, a ova le voluma i totonu o le pepa fa'amaumauga o lo'o mana'omia i le lapo'a tu'ufa'atasia, e matua pa'ū le fa'atinoga. I le isi itu, o le tapeina o lenei faiga e le fautuaina foi, talu ai o le a taʻitaʻia ai le taofi ona o le GC i taimi o le faʻaogaina o faʻamaumauga. O se vaifofo lelei o le fa'atuputeleina lea o le voluma sela i le tulaga o le galue malosi e ala i le tu'u i le taimi lava e tasi ma le faitau. E taua le maitauina e le tupu le faʻafitauli pe a maeʻa le puʻeina, e te faʻatautaia le flush command, lea e toe faʻafoʻi ai le MemStore i le disk, pe afai e te utaina le BulkLoad. O le laulau o loʻo i lalo o loʻo faʻaalia ai o fesili mai le MemStore mo faʻamatalaga tetele (ma le aofaʻi tutusa) e mafua ai le faʻagesegese. Ae ui i lea, e ala i le faʻateleina o le chunksize matou te toe faʻafoʻi le taimi o gaioiga i le masani.

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase
I le faʻaopoopoga i le faʻateleina o le chunksize, vaeluaina o faʻamaumauga i le itulagi fesoasoani, i.e. vaevae laulau. O le mea lea e fa'aitiitia ai talosaga e o'o mai i itulagi ta'itasi ma afai e ofi i totonu o se sela, e tumau pea le lelei o le tali.

6. Fuafuaga mo le vaevaeina o laulau i itulagi (vaeluaina)

Talu ai o le HBase o se faʻamaumauga autu-taua ma o le vaeluaga o loʻo faʻatinoina e le ki, e matua taua tele le vaevaeina o faʻamatalaga tutusa i itu uma. Mo se faʻataʻitaʻiga, o le vaevaeina o sea laulau i ni vaega se tolu o le a mafua ai ona vaevaeina faʻamaumauga i ni itulagi se tolu:

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase
E tupu e oʻo atu i se faʻagesegese tele pe a fai o faʻamaumauga o loʻo utaina mulimuli ane e foliga mai, mo se faʻataʻitaʻiga, o tau umi, o le tele o latou e amata i le numera tutusa, mo se faʻataʻitaʻiga:

1000001
1000002
...
1100003

Talu ai o ki o lo'o teuina e pei o se byte array, o le a amata uma lava ma o lo'o i ai i le itulagi lava e tasi #1 o lo'o teuina ai le tele o ki. E tele ta'iala o le vaeluaga:

HexStringSplit – Liliu le ki i se manoa fa'ailoga hexadecimal i le laina "00000000" => "FFFFFFFF" ma faʻapipiʻi i le agavale ma zeros.

UniformSplit – Liliu le ki i se byte array ma le hexadecimal encoding i le laina "00" => "FF" ma padding i le itu taumatau ma zeros.

E le gata i lea, e mafai ona e faʻamaonia soʻo se laina poʻo se seti o ki mo le vaeluaina ma faʻapipiʻi le auto-splitting. Ae ui i lea, o se tasi o auala sili ona faigofie ma sili ona aoga o le UniformSplit ma le faʻaogaina o le hash concatenation, mo se faʻataʻitaʻiga o le paipa sili ona taua o paita mai le faʻaogaina o le ki e ala i le CRC32(rowkey) galuega ma le rowkey lava ia:

hash + rowkey

Ona fa'asoa fa'atasi uma ai lea o fa'amaumauga i itu uma. A faitau, e na'o le tia'i uma o paita muamua e lua ae tumau le ki muamua. E pulea foi e RS le aofaʻi o faʻamaumauga ma ki i totonu o le itulagi ma, afai e sili atu tapulaʻa, e otometi lava ona vaevaeina i ni vaega.

7. Fa'apalepale fa'aletonu ma nofoaga fa'amaumauga

Talu ai e na'o le tasi le itulagi e nafa ma seti taʻitasi o ki, o le fofo i faʻafitauli e fesoʻotaʻi ma faʻalavelave faʻafuaseʻi RS poʻo le decommissioning o le teuina uma o faʻamatalaga talafeagai i le HDFS. A pa'ū le RS, e iloa e le matai lenei mea e ala i le leai o se fatu fatu i le node ZooKeeper. Ona tuʻuina atu lea o le itulagi tautua i se isi RS ​​ma talu ai o loʻo teuina HFiles i se faila faila, e faitau e le tagata fou ma faʻaauau ona tuʻuina atu faʻamatalaga. Ae ui i lea, talu ai o nisi o faʻamatalaga atonu o loʻo i totonu o le MemStore ma e leai se taimi e ulufale ai i HFiles, WAL, lea o loʻo teuina foi i le HDFS, e faʻaaogaina e toe faʻafoʻi ai le talaʻaga o gaioiga. A maeʻa ona faʻaaogaina suiga, e mafai e le RS ona tali atu i talosaga, ae o le gaioiga e taʻitaʻia ai le mea moni o nisi o faʻamaumauga ma faʻagasologa o le tautuaina o loʻo iʻu i luga o nodes eseese, i.e. o lo'o fa'aitiitia le nu'u.

O le fofo i le faʻafitauli o le faʻapipiʻiina tele - o lenei faiga e faʻanofo ai faila i na nodes e nafa ma i latou (lea o loʻo i ai o latou itulagi), o se taunuuga o le taimi o lenei faiga e faʻateleina ai le uta i luga o le upega tafailagi ma tisiki. Ae ui i lea, i le lumanaʻi, o le avanoa i faʻamatalaga e faʻavavevaveina. E le gata i lea, o le major_compaction e faʻatinoina le tuʻufaʻatasia o HFiles uma i se faila e tasi i totonu o se itulagi, ma faʻamamāina faʻamaumauga e faʻatatau i le laulau. Mo se faʻataʻitaʻiga, e mafai ona e faʻamaonia le numera o faʻaliliuga o se mea e tatau ona taofia poʻo le olaga atoa pe a maeʻa ona tapeina faaletino le mea.

O lenei faiga e mafai ona i ai se aafiaga lelei tele i le faagaoioiga o le HBase. O le ata o loʻo i lalo o loʻo faʻaalia ai le faʻaleagaina o le faʻatinoga ona o le faʻamauina o faʻamaumauga. O iinei e mafai ona e vaʻai pe faʻapefea ona tusi 40 filo i le laulau e tasi ma 40 filo i le taimi e tasi e faitau ai faʻamaumauga. O le tusiaina o filo e maua ai le tele ma sili atu HFiles, lea e faitauina e isi filo. O se taunuuga, o le tele ma le tele o faʻamatalaga e manaʻomia ona aveese mai le manatua ma iu ai ina amata galue le GC, lea e toetoe lava a faʻaumatia galuega uma. O le faʻalauiloaina o le faʻapipiʻiina tele na mafua ai le faʻamamaina o otaota ma toe faʻaleleia le gaosiga.

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase
O le suʻega na faia i luga o 3 DataNodes ma 4 RS (CPU Xeon E5-2680 v4 @ 2.40GHz * 64 filo). HBase version 1.2.0-cdh5.14.2

E taua le maitauina o le faʻapipiʻiina tele na faʻalauiloaina i luga o se laulau "ola", lea na tusia ma faitau ai faʻamaumauga. Sa i ai se faʻamatalaga i luga ole laiga e mafai ona mafua ai se tali le saʻo pe a faitau faʻamatalaga. Ina ia siaki, na faʻalauiloaina se faʻagasologa na maua ai faʻamatalaga fou ma tusi i luga o se laulau. Ina ua uma, sa vave ona ou faitau ma siaki pe o le tau na maua e fetaui ma mea na tusia i lalo. A'o fa'agasolo lenei fa'agasologa, e tusa ma le 200 taimi na fa'atautaia ai le fa'aputuga tele ma e leai se fa'aletonu e tasi na fa'amauina. Masalo o le faʻafitauli e seasea faʻaalia ma naʻo le taimi o le uta maualuga, o lea e sili atu le saogalemu pe a taofi le tusitusi ma le faitau tusi e pei ona fuafuaina ma faia le faʻamamaina e puipuia ai ia GC toso.

E le gata i lea, o le faʻapipiʻiina tele e le afaina ai le setete o le MemStore; e faʻafefe i le tisiki ma faʻapipiʻi, e tatau ona e faʻaogaina le flush (connection.getAdmin().flush(TableName.valueOf(tblName))).

8. Fa'atulagaga ma fa'atinoga

E pei ona taʻua muamua, HBase faʻaalia lona manuia sili pe a le manaʻomia ona faia se mea, pe a faʻatinoina BulkLoad. Ae ui i lea, e faʻatatau i le tele o faiga ma tagata. Ae ui i lea, o lenei meafaigaluega e sili atu ona talafeagai mo le teuina o faʻamaumauga i le tele i poloka tetele, ae afai o le faagasologa e manaʻomia ai le tele o tauvaga faitau ma tusi talosaga, o le Get and Put commands o loʻo faʻamatalaina i luga e faʻaaogaina. Ina ia faʻamaonia tulaga sili ona lelei, faʻalauiloa na faia ma tuʻufaʻatasiga eseese o laulau laulau ma faʻatulagaga:

  • 10 filo na fa'alauiloa fa'atasi i le taimi e tasi fa'atolu i le laina (tatou ta'ua lea o le poloka filo).
  • O le taimi e fa'agaioi ai filo uma i totonu o se poloka sa fa'atatauina ma o le fa'ai'uga mulimuli lea o le fa'agaioiga o le poloka.
  • O filo uma sa galulue i le laulau e tasi.
  • A'o le'i amataina le poloka filo, sa faia se fa'amaopoopo tele.
  • O poloka ta'itasi na faia na'o le tasi o gaioiga nei:

—Tuu
—Maua
—Ia + Tuu

  • O poloka taʻitasi na faʻatinoina le 50 faʻasologa o lona faʻatinoga.
  • O le poloka poloka o se faamaumauga e 100 bytes, 1000 bytes poʻo 10000 bytes (faʻafuaseʻi).
  • Na fa'alauiloa poloka ma numera eseese o ki na talosagaina (pe tasi le ki po'o le 10).
  • O poloka na faʻatautaia i lalo o faʻatulagaga laulau eseese. Suia parata:

— BlockCache = liliu pe tape
— BlockSize = 65 KB po o le 16 KB
— Vaeluaga = 1, 5 po o le 30
- MSLAB = mafai pe le atoatoa

O lea la o le poloka e pei o lenei:

a. Na ki/tapē le ala MSLAB.
e. Na faia se laulau na fa'atulaga ai vaega nei: BlockCache = moni/leai, BlockSize = 65/16 Kb, Vaeluaga = 1/5/30.
i. Na fa'apipi'i i le GZ.
o. 10 filo na faʻalauiloa faʻatasi i le taimi e tasi e fai ai le 1/10 put/get/get+put operations i totonu o lenei laulau ma faʻamaumauga o 100/1000/10000 bytes, faʻatino 50 fesili i se laina (ki faʻafuaseʻi).
u. Na toe fai faatolu le mata d.
f. O le taimi e fa'agaioi ai filo uma na fa'atatauina.

Sa tofotofoina uma tuufaatasiga talafeagai. E taumateina o le a pa'ū le saoasaoa a'o fa'atuputeleina le tele o fa'amaumauga, po'o le fa'aletonu o le fa'aoga e fa'atupu lemu. Ae ui i lea, o le sini o le malamalama lea i le tikeri ma le taua o le aʻafiaga o parakalafa taʻitasi, o lea na fafagaina ai faʻamaumauga aoina i totonu o le faʻaogaina o se galuega faʻasolosolo laina, lea e mafai ai ona iloilo le taua e faʻaaoga ai t-statistics. O lo'o i lalo i'uga o poloka o lo'o fa'atinoina galuega Put. Seti atoa o tu'ufa'atasiga 2*2*3*2*3 = 144 filifiliga + 72 tk. o nisi sa faia faalua. O le mea lea, e 216 ta'aloga i le aofa'i:

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase
Sa faia le suʻega i luga o se vaega laiti e aofia ai 3 DataNodes ma 4 RS (CPU Xeon E5-2680 v4 @ 2.40GHz * 64 filo). HBase version 1.2.0-cdh5.14.2.

O le maualuga o le faʻaofiina o le saoasaoa o le 3.7 sekone na maua mai i le MSLAB mode na tape, i luga o se laulau e tasi le vaeluaga, faʻatasi ai ma BlockCache ua mafai, BlockSize = 16, faʻamaumauga o 100 bytes, 10 fasi pepa i le pusa.
Ole saosaoa fa'aofi pito maualalo ole 82.8 sec na maua ile MSLAB fa'aogaina, i luga o se laulau e tasi le vaeluaga, ma BlockCache mafai, BlockSize = 16, fa'amaumauga o 10000 paita, 1 ta'itasi.

Se'i o tatou va'ai i le fa'ata'ita'iga. Matou te vaʻavaʻai i le lelei o le faʻataʻitaʻiga e faʻavae i luga o le R2, ae e matua manino lava o le extrapolation e faʻasaina iinei. O le amio tonu a le faiga pe a suia faʻamaufaʻailoga o le a le laina laina; o lenei faʻataʻitaʻiga e le manaʻomia mo valoʻaga, ae mo le malamalama i le mea na tupu i totonu o faʻataʻitaʻiga ua tuʻuina atu. Mo se faʻataʻitaʻiga, o iinei tatou te vaʻai ai mai le tamaititi aʻoga e le afaina le BlockSize ma BlockCache parakalafa mo le faʻaogaina o le Put (lea e masani ona vaʻaia):

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase
Ae o le mea moni o le faʻateleina o le numera o vaeluaga e oʻo atu ai i le faʻaitiitia o le faʻatinoga o se mea e leʻi mafaufauina (ua uma ona tatou vaʻaia le lelei o le aʻafiaga o le faʻateleina o le numera o vaeluaga ma BulkLoad), e ui lava e malamalama. Muamua, mo le gaioiga, e tatau ona e faia ni talosaga i 30 itulagi nai lo le tasi, ma o le tele o faʻamaumauga e le o se mea e maua ai se tupe maua. Lona lua, o le aofaʻi o taimi faʻatino e fuafua e le RS sili ona tuai, ma talu ai o le numera o DataNodes e itiiti ifo nai lo le numera o RS, o nisi itulagi e leai se nofoaga. Ia, se'i o tatou va'ai i le pito i luga e lima:

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase
Sei o tatou iloiloina taunuuga o le faʻatinoina o le Get blocks:

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase
Ole numera o vaeluaga ua leiloa le taua, atonu e faʻamatalaina e le mea moni o faʻamaumauga o loʻo teuina lelei ma o le cache faitau o le pito sili lea ona taua (statistika). E masani lava, faʻateleina le numera o feʻau i se talosaga e aoga tele foi mo le faʻatinoga. Sikoa maualuga:

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase
Ia, mulimuli ane, seʻi o tatou vaʻavaʻai i le faʻataʻitaʻiga o le poloka na muamua faia maua ona tuʻu lea:

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase
E taua uma fa'amaufa'ailoga iinei. Ma o taunuuga o taitai:

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase

9. Su'ega uta

Ia, mulimuli ane o le a matou faʻalauiloaina se uta sili atu pe itiiti ifo foi, ae e sili atu le manaia pe a iai sau mea e faʻatusatusa i ai. I luga o le upega tafaʻilagi a DataStax, le tagata autu autu o Cassandra, o loʻo i ai iuga NT o le tele o mea e teu ai NoSQL, e aofia ai le HBase version 0.98.6-1. O le utaina na faia e 40 filo, faʻamaumauga tele 100 paita, SSD disks. O le fa'ai'uga o le su'ega o fa'agaioiga Faitau-Suia-Tusi na fa'aalia ai i'uga nei.

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase
E tusa ai ma loʻu malamalama, o le faitau na faia i poloka o 100 faʻamaumauga ma mo 16 HBase nodes, o le DataStax test na faʻaalia ai le faʻatinoina o le 10 afe gaioiga i le sekone.

E laki o le matou fuifui foi e 16 nodes, ae e le o se "laki" e tofu i latou ma 64 cores (filo), ae i le DataStax suʻega e naʻo le 4. I le isi itu, o loʻo i ai a latou SSD, ae o loʻo i ai a matou HDD. pe sili atu fo'i le fa'aoga fou o le HBase ma le PPU i le taimi o uta e toetoe lava a le fa'atupula'ia tele (va'aia e 5-10 pasene). Ae ui i lea, tatou taumafai e amata faʻaogaina lenei faʻatulagaga. Fa'atonu laulau laulau, faitau o lo'o fa'atinoina i le vaega autu mai le 0 i le 50 miliona fa'afuase'i (o lona uiga, e fou i taimi uma). O le laulau e aofia ai le 50 miliona faʻamaumauga, vaevaeina i 64 vaega. O ki o loʻo faʻaogaina e faʻaaoga ai le crc32. O le fa'atulagaina o laulau e le mafai, MSLAB ua mafai. Fa'alauiloa filo 40, o filo ta'itasi e faitau se seti o 100 ki fa'afuase'i ma tusi vave loa le 100 paita na gaosia i tua i nei ki.

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase
Tu: 16 DataNode ma 16 RS (CPU Xeon E5-2680 v4 @ 2.40GHz * 64 filo). HBase version 1.2.0-cdh5.14.2.

O le averesi o taunuuga e latalata i le 40 afe faʻagaioiga i le sekone, lea e sili atu le lelei nai lo le suʻega DataStax. Ae peitai, mo faamoemoega faataitai, e mafai ona e suia teisi tulaga. E foliga mai o galuega uma o le a faia i luga o le laulau e tasi, ma faʻapea foʻi i luga o ki tulaga ese. Sei o tatou manatu o loʻo i ai se seti "vevela" o ki e gaosia ai le uta autu. O le mea lea, seʻi o tatou taumafai e fai se uta ma faʻamaumauga tetele (10 KB), faʻapea foʻi i vaega o le 100, i 4 laulau eseese ma faʻatapulaʻaina le tele o ki o loʻo talosagaina i le 50 afe. se seti o 40 ki ma tusi vave 100 KB i luga o nei ki tua.

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase
Tu: 16 DataNode ma 16 RS (CPU Xeon E5-2680 v4 @ 2.40GHz * 64 filo). HBase version 1.2.0-cdh5.14.2.

I le taimi o le uta, na faʻaalia ai le tele o taimi, e pei ona faʻaalia i luga, e aunoa ma lenei faiga, o le a faasolosolo malie le faʻaleagaina, ae ui i lea, o le uta faaopoopo e tulaʻi mai i le taimi o le faʻatinoga. O le toso ese e mafua mai i mafuaaga eseese. O nisi taimi ua maeʻa le galue o filo ma sa i ai se taofi aʻo toe amataina, o nisi taimi o talosaga a isi vaega na fatuina ai se uta i luga o le fuifui.

Faitau ma tusitusi vave o se tasi lea o faʻaaliga sili ona faigata mo le HBase. Afai e te faia naʻo le tuʻuina atu o talosaga laiti, mo se faʻataʻitaʻiga 100 bytes, tuʻufaʻatasia i totonu o pusa o 10-50 afe fasipepa, e mafai ona e mauaina le fiaselau afe o gaioiga i le sekone, ma o le tulaga e tutusa ma le faitau-naʻo talosaga. E taua le matauina o taunuuga e sili atu ona lelei nai lo na mauaina e DataStax, sili ona mafua ona o talosaga i poloka o 50 afe.

Aʻoaʻoga ma faʻataʻitaʻiga o le faʻaaogaina o le HBase
Tu: 16 DataNode ma 16 RS (CPU Xeon E5-2680 v4 @ 2.40GHz * 64 filo). HBase version 1.2.0-cdh5.14.2.

10. Faaiuga

O lenei faiga e fai lava si fetuutuunai configured, ae o le aafiaga o se numera tele o tapulaʻa tumau pea le iloa. O nisi oi latou na fa'ata'ita'iina, ae e le'i aofia i le seti o su'ega. Mo se faʻataʻitaʻiga, o faʻataʻitaʻiga muamua na faʻaalia ai le taua tele o se parakalafa e pei o le DATA_BLOCK_ENCODING, lea e faʻaogaina ai faʻamatalaga e faʻaaoga ai tulaga taua mai sela tuaoi, lea e malamalama i ai mo faʻamaumauga faʻafuaseʻi. Afai e te faʻaaogaina se numera tele o mea faʻalua, e mafai ona taua le mauaina. I se tulaga lautele, e mafai ona tatou fai atu o le HBase o loʻo tuʻuina atu le faʻaaliga o se faʻamaumauga e sili ona ogaoga ma mafaufau lelei, lea e mafai ona aoga tele pe a faʻatino galuega ma poloka tetele o faʻamaumauga. Aemaise lava pe afai e mafai ona tuueseese le faitau ma le tusitusi i le taimi.

Afai ei ai se mea i lou manatu e le o lava le faʻaalia, ua ou sauni e taʻu atu ia te oe i nisi auiliiliga. Matou te vala'auina oe e fa'asoa mai lou poto masani pe talanoa pe e te le ioe i se mea.

puna: www.habr.com

Faaopoopo i ai se faamatalaga