Faiga faila i faʻamatalaga tetele: o se polokalame faʻaaoaoga puupuu

Faiga faila i faʻamatalaga tetele: o se polokalame faʻaaoaoga puupuu
Tau Atua saunia e Remarin

au Mail.ru Cloud Solutions ofo fa'aliliuga tala enisinia Rahul Bhatia mai Clairvoyant e uiga i faila faila o loʻo i ai i faʻamatalaga tetele, o a uiga sili ona taatele o Hadoop formats ma o le a le faatulagaga e sili atu ona faʻaoga.

Aisea e manaʻomia ai faila faila eseese?

O se fa'ata'ita'iga tele o fa'atinoga mo talosaga e fa'aogaina e le HDFS e pei o MapReduce ma Spark o le taimi lea e su'e ai, faitau, ma tusi ai fa'amaumauga. O nei faʻafitauli e faʻapipiʻiina i le faigata i le puleaina o faʻamaumauga tetele pe a fai o loʻo i ai se faʻataʻitaʻiga faʻasolosolo nai lo se faʻamautu, pe afai o loʻo i ai ni faʻalavelave teuina.

O le fa'agaioia o fa'amaumauga tetele e fa'atuputeleina ai le uta i luga o le fa'aputuga o mea e teu ai - Hadoop e teuina fa'amatalaga fa'atele ina ia maua ai le fa'apalepale masei. I le faaopoopo atu i tisiki, o loʻo faʻapipiʻiina le gaosiga, fesoʻotaʻiga, faʻaoga / faʻaogaina, ma isi. A'o fa'atupula'ia le tele o fa'amaumauga, e fa'apea fo'i le tau o le fa'agaioiina ma le teuina.

Eseese faila faila i Hadoop na faia e foia tonu ai nei faafitauli. O le filifilia o le faila faila talafeagai e mafai ona maua ai ni fa'amanuiaga taua:

  1. Taimi faitau vave.
  2. Taimi vave pu'eina.
  3. Fa'asoa faila.
  4. Lagolago mo le fa'aleleia o le polokalame.
  5. Fa'alautele lagolago fa'amalosi.

O nisi faila faila e fa'amoemoe mo le fa'aoga lautele, o isi mo fa'aoga fa'apitoa, ma o nisi ua mamanuina e fa'afetaui uiga fa'amatalaga patino. O le filifiliga la e matua tele lava.

Avro faila faila

mo fa'asologa o fa'amaumauga Avro e faʻaaogaina lautele - e fa'avae manoa, o lona uiga, o se manoa faʻamaumauga e teu ai faʻamaumauga i Hadoop. E teuina le schema i le JSON format, faʻafaigofie ona faitau ma faʻamatalaina e soʻo se polokalame. O faʻamaumauga lava ia o loʻo i totonu o le binary format, faʻatusatusa ma lelei.

O le fa'asologa o fa'asologa o le Avro e le fa'aituau le gagana. E mafai ona fa'agasolo faila i gagana eseese, i le taimi nei C, C++, C#, Java, Python ma Ruby.

O se vaega autu o le Avro o lona lagolago malosi mo faʻamaumauga faʻamaumauga e suia i le taimi, o lona uiga, faʻaleleia. E malamalama Avro i suiga o fuafuaga— tapeina, faaopoopo, po o le suia o fanua.

E lagolagoina e Avro le tele o fausaga faʻamaumauga. Mo se faʻataʻitaʻiga, e mafai ona e fatuina se faʻamaumauga o loʻo i ai se faʻasologa, se faʻasologa faʻasologa, ma se faʻamaumauga laiti.

Faiga faila i faʻamatalaga tetele: o se polokalame faʻaaoaoga puupuu
O lenei faatulagaga e lelei mo le tusitusi i le sone tulaueleele (sui) o se vaituloto faʻamatalaga (vaituloto fa'amatalaga, po'o le vaituloto o fa'amaumauga - o se fa'aputuga o fa'ata'ita'iga mo le teuina o ituaiga fa'amatalaga fa'aopoopo i fa'amatalaga sa'o).

O lea la, o lenei faatulagaga e sili ona fetaui mo le tusitusi i le sone tulaueleele o se vaituloto faʻamatalaga mo mafuaaga nei:

  1. O fa'amaumauga mai lenei sone e masani ona faitau atoa mo le fa'agasolo atili e ala i faiga fa'alalo - ma o le fa'asologa o laina e sili atu ona lelei i lenei tulaga.
  2. E mafai e faiga i lalo ona faigofie ona toe aumai siata mai faila—e leai se mana'oga e teu ese fa'ata'ita'i ile teuina o meta i fafo.
  3. So'o se suiga ile ulua'i ata e faigofie ona fa'agasolo (schema evolution).

Fa'asologa o Faila Faila

Parquet o se faila faila faila mo Hadoop e teuina fa'apipi'i fa'amaumauga i fa'asologa o koluma mafolafola.

Pe a faatusatusa i le auala masani laina, Parquet e sili atu ona lelei i tulaga o le teuina ma le faatinoga.

E sili ona aoga mo fesili e faitau koluma patino mai se laulau lautele (tele koluma). Faʻafetai i le faila faila, e naʻo koluma manaʻomia e faitau, o lea e faʻatumauina le I/O i se tulaga maualalo.

O sina fa'asesega ma fa'amatalaga: Ina ia malamalama atili i le faila faila Parquet i Hadoop, seʻi o tatou vaʻai poʻo le a le faʻavae-koluma - e pei o le columnar - format. O lenei faatulagaga e teu ai tulaga tutusa mo koluma taitasi faatasi.

Mo se faʻataʻitaʻiga, o le faamaumauga e aofia ai le ID, Igoa, ma fanua Matagaluega. I lenei tulaga, o le a teuina faʻatasi uma tulaga taua o le koluma ID, faʻapea foʻi ma le igoa ole koluma, ma isi. O le laulau o le a foliga pei o lenei:

ID
igoa
Matagaluega

1
emp1
d1

2
emp2
d2

3
emp3
d3

I le fa'asologa o manoa, o le a fa'asaoina fa'amaumauga e fa'apea:

1
emp1
d1
2
emp2
d2
3
emp3
d3

I se faila faila faila, o faʻamatalaga tutusa o le a faʻasaoina e pei o lenei:

1
2
3
emp1
emp2
emp3
d1
d2
d3

E sili atu le lelei o le fa'asologa o koluma pe a mana'omia ona e fesiligia ni koluma se tele mai se laulau. O le a faitau na'o koluma mana'omia ona e fa'atasi. I lenei auala, o galuega I/O e fa'atumauina i se tulaga maualalo.

Mo se fa'ata'ita'iga, na'o le koluma NAME e te mana'omia. IN faatulagaga o manoa O fa'amaumauga ta'itasi i totonu o fa'amaumauga e mana'omia ona utaina, va'ava'ai i le fanua, ona aveese lea o fa'amaumauga IGOA. Ole fa'asologa o koluma e mafai ai ona e su'e sa'o i lalo ile koluma Igoa aua o tau uma mo lena koluma o lo'o teuina fa'atasi. E te le tau su'eina le pu'eina atoa.

O le mea lea, o le faʻasologa o le columnar e faʻaleleia ai le faʻatinoga o suʻesuʻega aua e manaʻomia ai le itiiti o le taimi suʻesuʻe e oʻo atu ai i koluma manaʻomia ma faʻaititia le numera o galuega I / O ona e naʻo koluma manaʻomia e faitau.

O se tasi o uiga tulaga ese Paquet o le tulaga lea e mafai teu fa'amaumauga fa'atasi ma fausaga fa'amoega. O lona uiga i totonu o se faila Parquet, e oo lava i fanua fa'amoega e mafai ona faitau ta'ito'atasi e aunoa ma le faitauina uma o fanua i totonu o le fausaga fa'amoega. E fa'aogaina e Parquet se fa'aliga fa'apipi'i ma le fa'apotopotoga e teu ai fausaga fa'apipi'i.

Faiga faila i faʻamatalaga tetele: o se polokalame faʻaaoaoga puupuu
Ina ia malamalama i le faila faila Parquet i Hadoop, e tatau ona e iloa upu nei:

  1. Vaega laina (vaega vaega): vaevaega fa'ata'atia talafeagai o fa'amaumauga i laina. O se kulupu laina e aofia ai se vaega o koluma ta'itasi i le seti fa'amaumauga.
  2. Vaega vaega (vaega koluma): O se vaega o se koluma patino. O nei vaega koluma e ola i se vaega patino o laina ma e mautinoa e pipii i le faila.
  3. Itulau (itulau): Ua vaevaeina vaega o koluma i itulau e tusi tasi i le isi. O itulau e iai le ulutala masani, o lea e mafai ai ona e faase'e mea e le mana'omia pe a faitau.

Faiga faila i faʻamatalaga tetele: o se polokalame faʻaaoaoga puupuu
O le igoa lea e na'o le numera fa'ataulāitu PAR1 (4 bytes) lea e iloagofie ai le faila o se faila Parquet.

Fai mai le pito i lalo:

  1. faila metadata o lo'o i ai fa'amaopoopo amata o metadata o koluma ta'itasi. A e faitau, e tatau ona e faitau muamua metadata a le faila e suʻe uma vaega koluma e fiafia i ai. E tatau ona faitau faasolosolo vaega o koluma. O isi metadata e aofia ai le faʻasologa o faʻasologa, faʻasologa, ma soʻo se isi paʻu taua-taua.
  2. Metadata umi (4 paita).
  3. numera fa'ataulāitu PAR1 (4 paita).

ORC File Format

Fa'atonu le fa'asologa o faila o laina laina (Koluma Laina Fa'atonu, CRO) e ofoina atu se auala sili ona lelei e teu ai faʻamaumauga ma sa fuafuaina e faʻatoʻilaloina tapulaʻa o isi faatulagaga. Teuina faʻamaumauga i se foliga faʻapipiʻi atoatoa, faʻatagaina oe e faaseʻeina faʻamatalaga e le manaʻomia - e aunoa ma le manaʻomia o le fausiaina o faʻamaufaʻailoga tetele, lavelave pe tausia lima.

Tulaga lelei o le faatulagaga o le ORC:

  1. E tasi le faila o le gaioiga o galuega taʻitasi, e faʻaitiitia ai le uta i luga ole NameNode (igoa igoa).
  2. Lagolago mo ituaiga fa'amaumauga a le Hive, e aofia ai le DateTime, fa'ailoga numera ma fa'alavelave lavelave (fa'atulagaina, lisi, fa'afanua ma fa'atasi).
  3. Faitau fa'atasi o le faila lava e tasi e ala i faiga eseese RecordReader.
  4. Malosiaga e vaevae faila e aunoa ma le suʻeina o maka.
  5. Fuafuaga o le fa'aputuga aupito maualuga e mafai ona tu'uina atu mo le faitau/tusi faiga fa'atatau i fa'amatalaga o lo'o i le vae faila.
  6. Metadata o loʻo teuina i le Protocol Buffers binary serialization format, lea e mafai ai ona faʻaopoopo ma aveese fanua.

Faiga faila i faʻamatalaga tetele: o se polokalame faʻaaoaoga puupuu
E teuina e le ORC le aoina o manoa i se faila e tasi, ma i totonu o le aoina, o faʻamaumauga o manoa o loʻo teuina i se faatulagaga koluma.

Ose faila o le ORC e ​​teu ai vaega o laina e ta'ua o ta'avale ma fa'amatalaga lagolago i le vae o le faila. O le Postscript i le pito o le faila o loʻo i ai faʻamaufaʻailoga faʻamalosi ma le tele o le vae faʻapipiʻi.

Ole lapo'a fa'aletonu ole 250 MB. Ona o ia taʻavale tetele, o le faitau mai le HDFS e sili atu ona lelei le faʻatinoina: i poloka lapopoa vavalalata.

O le pito i lalo o le faila e fa'amaumau ai le lisi o laina i le faila, le numera o laina i le laina, ma le ituaiga fa'amatalaga o koluma ta'itasi. O lo'o tusia fo'i iina le fa'ai'uga o le tau, min, max ma le aofa'i mo koluma ta'itasi.

O le pito i lalo o le fasi pepa o lo'o i ai se lisi o nofoaga o vaitafe.

E fa'aogaina fa'amaumauga o laina pe a su'e laulau.

Fa'amaumauga o fa'amaumauga e aofia ai le tau maualalo ma le maualuga mo koluma ta'itasi ma le tulaga o laina i koluma ta'itasi. O fa'ailoga o le ORC e ​​fa'aoga mo na'o le filifilia o laina ma laina laina, ae le mo le taliina o fesili.

Fa'atusatusaga o faila faila eseese

Avro faʻatusatusa i Parquet

  1. O le Avro o se laina e teu ai, ae o Parquet e teuina faʻamaumauga i koluma.
  2. Parquet e sili ona fetaui mo su'esu'ega au'ili'ili, o lona uiga o le faitau fa'agaioiga ma fa'amatalaga fa'amatalaga e sili atu le lelei nai lo le tusitusi.
  3. Fa'atonuga tusi i Avro e sili atu ona lelei le fa'atinoina nai lo le Parquet.
  4. O le Avro e feagai ma le evolusione o le taamilosaga sili atu ona matua. Na'o le Parquet e lagolagoina le fa'aopoopoina o le fa'aopoopo, a'o le Avro e lagolagoina le fa'alauteleina o le tele, o lona uiga, fa'aopoopo pe suia koluma.
  5. Parquet e fetaui lelei mo le su'eina o se vaega o koluma i totonu o se laulau e tele koluma. Avro e talafeagai mo galuega ETL lea matou te fesiligia koluma uma.

ORC vs Parquet

  1. E sili atu le teuina o faʻamatalaga faʻapipiʻi parquet.
  2. ORC e ​​sili atu ona fetaui ma faʻamatalaga pushdown.
  3. E lagolagoina e le ORC meatotino ACID.
  4. ORC fa'apipi'i lelei fa'amaumauga.

O le a se isi mea e faitau i le autu:

  1. Suʻesuʻega faʻamatalaga tetele i le ao: faʻafefea ona avea se kamupani ma faʻamatalaga faʻamaumauga.
  2. Ose Taiala Fa'amaulalo i Fa'amaumauga Fa'amaumauga.
  3. O la matou auala telegram e uiga i suiga numera.

puna: www.habr.com

Faaopoopo i ai se faamatalaga