{"id":84416,"date":"2020-06-07T13:42:50","date_gmt":"2020-06-07T11:42:50","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/formaty-fajlov-v-bolshih-dannyh-kratkij-likbez"},"modified":"2020-06-07T13:42:50","modified_gmt":"2020-06-07T11:42:50","slug":"formaty-fajlov-v-bolshih-dannyh-kratkij-likbez","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/formaty-fajlov-v-bolshih-dannyh-kratkij-likbez","title":{"rendered":"Formatele fi\u0219ierelor \u00een big data: un scurt ghid","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Formatele fi\u0219ierelor \u00een big data: un scurt ghid\" src=\"\/wp-content\/uploads\/2020\/06\/c909979e0474bc6a1f7234cd88167220.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/www.deviantart.com\/remarin\/art\/Weather-Deity-743892889\"><i>Divinitate Meteorologic\u0103 de Remarin<\/i><\/a><\/noindex> <\/p>\n<p>Comanda <noindex><a rel=\"nofollow\" href=\"https:\/\/mcs.mail.ru\/\">Solu\u021bii Cloud Mail.ru<\/a><\/noindex> ofer\u0103 <noindex><a rel=\"nofollow\" href=\"https:\/\/blog.clairvoyantsoft.com\/big-data-file-formats-3fb659903271\">traducerea unui articol<\/a><\/noindex> inginerul Rahul Bhatia de la Clairvoyant despre ce formate de fi\u0219iere exist\u0103 \u00een big data, care sunt cele mai comune func\u021bii ale formatelor Hadoop \u0219i care format este cel mai potrivit.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>De ce sunt necesare diferite formate de fi\u0219iere<\/h2>\n<p>\nO problem\u0103 serioas\u0103 \u00een performan\u021ba aplica\u021biilor care suport\u0103 HDFS, cum ar fi MapReduce \u0219i Spark, este timpul de c\u0103utare, citire \u0219i scriere a datelor. Aceste probleme sunt agravate de dificult\u0103\u021bile de gestionare a unor seturi mari de date, dac\u0103 nu avem un schem\u0103 fix\u0103, ci una evolutiv\u0103, sau exist\u0103 anumite restric\u021bii de stocare.<\/p>\n<p>Prelucrarea big data cre\u0219te sarcina asupra subsistemului de stocare - Hadoop stocheaz\u0103 date \u00een mod redundant pentru a asigura fiabilitatea. Pe l\u00e2ng\u0103 discuri, sunt suprasolicitate procesorul, re\u021beaua, sistemul de intrare-ie\u0219ire \u0219i a\u0219a mai departe. Pe m\u0103sur\u0103 ce volumul de date cre\u0219te, costul proces\u0103rii \u0219i stoc\u0103rii acestora se intensific\u0103.<\/p>\n<p>Diversele formate de fi\u0219iere \u00een <noindex><a rel=\"nofollow\" href=\"https:\/\/mcs.mail.ru\/blog\/zachem-nuzhen-hadoop\">Hadoop<\/a><\/noindex> sunt concepute pentru a rezolva exact aceste probleme. Alegerea unui format de fi\u0219ier adecvat poate aduce unele avantaje semnificative:<\/p>\n<ol>\n<li>Timp de citire mai rapid.<\/li>\n<li>Timp de scriere mai rapid.<\/li>\n<li>Fi\u0219iere partajabile.<\/li>\n<li>Suport pentru evolu\u021bia schemelor.<\/li>\n<li>Suport extins pentru compresie.<\/li>\n<\/ol>\n<p>\nUnele formate de fi\u0219iere sunt destinate uzului general, altele pentru variante mai specifice, iar unele sunt dezvoltate av\u00e2nd \u00een vedere caracteristici specifice ale datelor. Astfel, alegerea este \u00eentr-adev\u0103r destul de mare.<\/p>\n<h2>Formatul de fi\u0219ier Avro<\/h2>\n<p>\nPentru <i>serializarea datelor <\/i>este utilizat pe scar\u0103 larg\u0103 - acesta este un <i>format de stocare a datelor bazat pe r\u00e2nduri<\/i>, adic\u0103 un format de tip r\u00e2nd \u00een Hadoop. Acesta stocheaz\u0103 schema \u00een format JSON, facilit\u00e2nd citirea \u0219i interpretarea acesteia de c\u0103tre orice program. Datele \u00een sine sunt stocate \u00eentr-un format binar, compact \u0219i eficient.<\/p>\n<p>Sistemul de serializare Avro este neutr\u0103 la limbaj. Fi\u0219ierele pot fi prelucrate \u00een diferite limbaje, \u00een prezent fiind C, C++, C#, Java, Python \u0219i Ruby.<\/p>\n<p>O caracteristic\u0103 cheie a Avro este suportul solid pentru scheme de date care se schimb\u0103 \u00een timp, adic\u0103 evolueaz\u0103. Avro \u00een\u021belege modific\u0103rile de schem\u0103 - eliminarea, ad\u0103ugarea sau modificarea c\u00e2mpurilor.<\/p>\n<p>Avro suport\u0103 structurii de date diverse. De exemplu, se poate crea un \u00eenregistrare care con\u021bine un tablou, un tip enumerat \u0219i un sub-\u00eenregistrare.<\/p>\n<p><img decoding=\"async\" alt=\"Formatele fi\u0219ierelor \u00een big data: un scurt ghid\" src=\"\/wp-content\/uploads\/2020\/06\/9bf044329ac0980a48a125c505dee265.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nAcest format este ideal pentru scrierea \u00een zona de aterizare (transitional) a lacului de date (<noindex><a rel=\"nofollow\" href=\"https:\/\/mcs.mail.ru\/blog\/chto-takoe-ozera-dannyh-i-zachem-tam-hranyat-big-data\">lac de date<\/a><\/noindex>, sau data lake \u2013 o colec\u021bie de instan\u021be pentru stocarea diferitelor tipuri de date \u00een completarea surselor de date). <\/p>\n<p>A\u0219adar, pentru a scrie \u00een zona de landing a lacului de date, acest format este cel mai potrivit din urm\u0103toarele motive:<\/p>\n<ol>\n<li>Datele din aceast\u0103 zon\u0103 sunt de obicei citite integral pentru procesare ulterioar\u0103 de c\u0103tre sistemele inferioare \u2013 iar formatul bazat pe \u0219iruri este mai eficient \u00een acest caz.<\/li>\n<li>Sistemele inferioare pot extrage cu u\u0219urin\u021b\u0103 schemele tabelare din fi\u0219iere \u2013 nu este nevoie s\u0103 stocheze schemele separat \u00eentr-un depozit extern de metadate.<\/li>\n<li>Orice modificare a schemei surs\u0103 este u\u0219or de gestionat (evolu\u021bia schemei).<\/li>\n<\/ol>\n<p><\/p>\n<h2>Formatul fi\u0219ierelor Parquet<\/h2>\n<p>\nParquet este un format de fi\u0219ier open-source pentru Hadoop, care stocheaz\u0103 <i>structuri de date imbricate \u00eentr-un format plat, coloan\u0103.<\/i>.<\/p>\n<p>Comparativ cu abordarea tradi\u021bional\u0103 bazat\u0103 pe \u0219iruri, Parquet este mai eficient din punct de vedere al stoc\u0103rii \u0219i performan\u021bei.<\/p>\n<p>Aceasta este deosebit de util\u0103 pentru interog\u0103rile care citesc anumite coloane dintr-un tabel larg (cu multe coloane). Datorit\u0103 formatului fi\u0219ierelor, sunt citite doar coloanele necesare, astfel \u00eenc\u00e2t intr\u0103rile \u0219i ie\u0219irile sunt reduse la minimum.<\/p>\n<p><strong>O mic\u0103 explica\u021bie suplimentar\u0103<\/strong>: pentru a \u00een\u021belege mai bine formatul fi\u0219ierului Parquet \u00een Hadoop, s\u0103 vedem ce \u00eenseamn\u0103 un format bazat pe coloane \u2013 adic\u0103 un format coloanal. \u00centr-un astfel de format, valorile de aceea\u0219i tip sunt stocate \u00eempreun\u0103 pentru fiecare coloan\u0103. <\/p>\n<p><noindex><a rel=\"nofollow\" href=\"http:\/\/netjs.blogspot.com\/\">De exemplu<\/a><\/noindex>, \u00eenregistrarea include c\u00e2mpurile ID, Nume \u0219i Departament. \u00cen acest caz, toate valorile coloanei ID vor fi stocate \u00eempreun\u0103, la fel \u0219i valorile coloanei Nume \u0219i a\u0219a mai departe. Tabelul va ar\u0103ta aproximativ a\u0219a:<\/p>\n<p><strong>ID<\/strong><br \/>\n<strong>Name<\/strong><br \/>\n<strong>Departament<\/strong><\/p>\n<p>1<br \/>\nemp1<br \/>\nd1<\/p>\n<p>2<br \/>\nemp2<br \/>\nd2<\/p>\n<p>3<br \/>\nemp3<br \/>\nd3<\/p>\n<p>\n\u00cen formatul pe \u0219iruri, datele vor fi stocate astfel:<\/p>\n<p>1<br \/>\nemp1<br \/>\nd1<br \/>\n2<br \/>\nemp2<br \/>\nd2<br \/>\n3<br \/>\nemp3<br \/>\nd3<\/p>\n<p>\n\u00cen formatul coloanei, acelea\u0219i date vor fi stocate astfel:<\/p>\n<p>1<br \/>\n2<br \/>\n3<br \/>\nemp1<br \/>\nemp2<br \/>\nemp3<br \/>\nd1<br \/>\nd2<br \/>\nd3<\/p>\n<p>\nFormatul coloan\u0103 este mai eficient c\u00e2nd trebuie s\u0103 interoghezi mai multe coloane dintr-un tabel. Acesta va citi doar coloanele necesare pentru c\u0103 sunt adiacente. Astfel, opera\u021biunile de intrare-ie\u0219ire sunt reduse la minimum.<\/p>\n<p>De exemplu, ai nevoie doar de coloana NUME. \u00cen<noindex><a rel=\"nofollow\" href=\"http:\/\/netjs.blogspot.com\/\"> formatul pe \u0219iruri<\/a><\/noindex> fiecare \u00eenregistrare din setul de date trebuie s\u0103 fie \u00eenc\u0103rcat\u0103, analizat\u0103 pe c\u00e2mpuri \u0219i apoi datele NUME extrase. Formatul coloanei permite accesarea direct\u0103 a coloanei Nume, deoarece toate valorile pentru aceast\u0103 coloan\u0103 sunt stocate \u00eempreun\u0103. Nu va fi necesar\u0103 scanarea \u00eentregii \u00eenregistr\u0103ri.<\/p>\n<p>Astfel, formatul columnar \u00eembun\u0103t\u0103\u021be\u0219te performan\u021ba interog\u0103rilor, deoarece timpul de c\u0103utare pentru a accesa coloanele dorite este mai scurt, reduc\u00e2nd num\u0103rul opera\u021biunilor de intrare-ie\u0219ire, deoarece doar coloanele necesare sunt citite.<\/p>\n<p>Una dintre caracteristicile unice<noindex><a rel=\"nofollow\" href=\"http:\/\/netjs.blogspot.com\/\"> Parquet<\/a><\/noindex> const\u0103 \u00een faptul c\u0103 \u00een acest format poate <i>stoca date cu structuri \u00eennesterate.<\/i>Aceasta \u00eenseamn\u0103 c\u0103 \u00een fi\u0219ierul Parquet, chiar \u0219i c\u00e2mpurile \u00eennesterate pot fi citite separat, f\u0103r\u0103 a fi necesar\u0103 citirea tuturor c\u00e2mpurilor din structura \u00eennesterat\u0103. Pentru a stoca structuri \u00eennesterate, Parquet folose\u0219te un algoritm de fragmentare \u0219i asamblare.<\/p>\n<p><img decoding=\"async\" alt=\"Formatele fi\u0219ierelor \u00een big data: un scurt ghid\" src=\"\/wp-content\/uploads\/2020\/06\/8cba9a4faccc4bac7c5bbc3eec163a3c.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nPentru a \u00een\u021belege formatul fi\u0219ierului Parquet \u00een Hadoop, este necesar s\u0103 cunoa\u0219te\u021bi urm\u0103torii termeni:<\/p>\n<ol>\n<li><strong>Grup de r\u00e2nduri<\/strong> (row group): o diviziune logic\u0103 orizontal\u0103 a datelor \u00een r\u00e2nduri. Grupul de r\u00e2nduri const\u0103 dintr-un fragment al fiec\u0103rei coloane din setul de date.<\/li>\n<li><strong>Fragment de coloan\u0103<\/strong> (column chunk): un fragment al unei coloane specifice. Aceste fragmente de coloane tr\u0103iesc \u00eentr-un grup de r\u00e2nduri specific \u0219i vor fi garantat adiacente \u00een fi\u0219ier.<\/li>\n<li><strong>Pagina<\/strong> (page): fragmentele de coloane sunt \u00eemp\u0103r\u021bite \u00een pagini, scrise una dup\u0103 alta. Paginile au un header comun, astfel c\u0103 la citire se pot s\u0103ri cele inutile.<\/li>\n<\/ol>\n<p>\n<img decoding=\"async\" alt=\"Formatele fi\u0219ierelor \u00een big data: un scurt ghid\" src=\"\/wp-content\/uploads\/2020\/06\/0f3d583bc2f07b6fef8430f10433cc14.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nAici, headerul con\u021bine pur \u0219i simplu un num\u0103r magic <i>PAR1<\/i> (4 octe\u021bi), care identific\u0103 fi\u0219ierul ca fiind de format Parquet.<\/p>\n<p>\u00cen footer este scris urm\u0103toarele:<\/p>\n<ol>\n<li>Metadatele fi\u0219ierului, care con\u021bin coordonatele de start ale metadatelor fiec\u0103rei coloane. La citire, trebuie mai \u00eent\u00e2i s\u0103 se citeasc\u0103 metadatele fi\u0219ierului pentru a g\u0103si toate fragmentele de coloane relevante. Apoi, fragmentele de coloane ar trebui citite secven\u021bial. De asemenea, metadatele includ versiunea formatului, schema \u0219i orice alte perechi cheie-valoare suplimentare.<\/li>\n<li>Lungimea metadatelor (4 octe\u021bi).<\/li>\n<li>Num\u0103rul magic <i>PAR1<\/i> (4 octe\u021bi).<\/li>\n<\/ol>\n<p><\/p>\n<h2>Formatul fi\u0219ierelor ORC<\/h2>\n<p>\n<i>Formatul fi\u0219ierelor optimizat pe r\u00e2nd \u0219i coloan\u0103<\/i> (Optimized Row Columnar, <noindex><a rel=\"nofollow\" href=\"https:\/\/orc.apache.org\/\">ORC<\/a><\/noindex>) ofer\u0103 un mod foarte eficient de stocare a datelor \u0219i a fost dezvoltat pentru a dep\u0103\u0219i limit\u0103rile altor formate. Stocheaz\u0103 datele \u00eentr-o form\u0103 perfect compact\u0103, permi\u021b\u00e2nd s\u0103ri peste detalii inutile \u2014 f\u0103r\u0103 a necesita construirea de indec\u0219i mari, complec\u0219i sau gestiona\u021bi manual. <\/p>\n<p>Avantajele formatului ORC:<\/p>\n<ol>\n<li>Un fi\u0219ier la ie\u0219irea fiec\u0103rei sarcini, ceea ce reduce \u00eenc\u0103rc\u0103tura pe NameNode (nodul de nume).<\/li>\n<li>Suport pentru tipurile de date Hive, inclusiv DateTime, tipuri de date zecimale \u0219i complexe (struct, list\u0103, map\u0103 \u0219i uniune).<\/li>\n<li>Citirea simultan\u0103 a aceluia\u0219i fi\u0219ier de c\u0103tre diferite procese RecordReader.<\/li>\n<li>Capacitatea de a diviza fi\u0219iere f\u0103r\u0103 a scana pentru marcaje.<\/li>\n<li>Evaluarea aloc\u0103rii maxime posibile a memoriei heap pentru procesele de citire\/scriere, conform informa\u021biilor din footer-ul fi\u0219ierului.<\/li>\n<li>Metadatele sunt stocate \u00een format binar de serializare Protocol Buffers, care permite ad\u0103ugarea \u0219i eliminarea c\u00e2mpurilor.<\/li>\n<\/ol>\n<p>\n<img decoding=\"async\" alt=\"Formatele fi\u0219ierelor \u00een big data: un scurt ghid\" src=\"\/wp-content\/uploads\/2020\/06\/342a51df1730398d5280484407461d8c.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nORC stocheaz\u0103 colec\u021bii de r\u00e2nduri \u00eentr-un singur fi\u0219ier, iar datele de tip r\u00e2nd din cadrul colec\u021biei sunt stocate \u00een format columnar.<\/p>\n<p>Fi\u0219ierul ORC stocheaz\u0103 grupuri de r\u00e2nduri denumite dungi (stripes) \u0219i informa\u021bii auxiliare \u00een footer-ul fi\u0219ierului. Postscriptul de la sf\u00e2r\u0219itul fi\u0219ierului con\u021bine parametrii de comprimare \u0219i dimensiunea footer-ului comprimat.<\/p>\n<p>Prin default, dimensiunea unei dungi este de 250 MB. Datorit\u0103 dimensiunii mari a dungilor, citirea din HDFS se efectueaz\u0103 mai eficient: \u00een blocuri mari \u0219i continue.<\/p>\n<p>\u00cen footer-ul fi\u0219ierului este listat\u0103 o list\u0103 de dungi din fi\u0219ier, num\u0103rul de r\u00e2nduri pe dung\u0103 \u0219i tipul de date pentru fiecare coloan\u0103. De asemenea, sunt \u00eenregistrate valorile rezultate count, min, max \u0219i sum pentru fiecare coloan\u0103.<\/p>\n<p>Footer-ul dungi con\u021bine un catalog al loca\u021biilor fluxului.<\/p>\n<p>Datele de tip r\u00e2nd sunt folosite la scanarea tabelilor.<\/p>\n<p>Datele de index includ valorile minime \u0219i maxime pentru fiecare coloan\u0103 \u0219i pozi\u021biile r\u00e2ndurilor din fiecare coloan\u0103. Indicele ORC este utilizat doar pentru selectarea dungilor \u0219i grupurilor de r\u00e2nduri, nu pentru r\u0103spunsurile la interog\u0103ri.<\/p>\n<h2>Compara\u021bia \u00eentre diferite formate de fi\u0219iere<\/h2>\n<p><\/p>\n<h3>Avro comparativ cu Parquet<\/h3>\n<p><\/p>\n<ol>\n<li>Avro este un format de stocare pe baza r\u00e2ndurilor, \u00een timp ce Parquet stocheaz\u0103 datele pe baza coloanelor.<\/li>\n<li>Parquet este mai potrivit pentru interog\u0103rile analitice, adic\u0103 opera\u021biunile de citire \u0219i interogare a datelor sunt mult mai eficiente dec\u00e2t cele de scriere.<\/li>\n<li>Opera\u021biunile de scriere \u00een Avro se realizeaz\u0103 mai eficient dec\u00e2t \u00een Parquet.<\/li>\n<li>Avro func\u021bioneaz\u0103 mai bine cu evolu\u021bia schemelor. Parquet suport\u0103 doar ad\u0103ugarea de scheme, \u00een timp ce Avro implementeaz\u0103 o evolu\u021bie multifunc\u021bional\u0103, adic\u0103 ad\u0103ugarea sau modificarea coloanelor.<\/li>\n<li>Parquet este ideal pentru interogarea unui subansamblu de coloane \u00eentr-un tabel multi-coloan\u0103. Avro este potrivit pentru opera\u021biunile ETL, unde solicit\u0103m toate coloanele.<\/li>\n<\/ol>\n<p><\/p>\n<h3>ORC comparativ cu Parquet<\/h3>\n<p><\/p>\n<ol>\n<li>Parquet stocheaz\u0103 mai bine datele imbricate.<\/li>\n<li>ORC este mai adaptat pentru \u00eempingerea predicatelor (predicate pushdown).<\/li>\n<li>ORC suport\u0103 propriet\u0103\u021bi ACID.<\/li>\n<li>ORC comprim\u0103 mai bine datele.<\/li>\n<\/ol>\n<p>\n<strong>What else to read on the topic<\/strong>:<\/p>\n<ol>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/mcs.mail.ru\/blog\/analiz-bolshih-dannyh-v-oblake\">Analiza big data \u00een cloud: cum pot companiile s\u0103 devin\u0103 orientate pe date.<\/a><\/noindex>.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/mailru\/blog\/501598\/\">Un ghid modest pentru schemele de baze de date.<\/a><\/noindex>.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/tele.click\/zavtra_oblachno\">Canalul nostru Telegram despre transformarea digital\u0103.<\/a><\/noindex>. \n<\/li>\n<\/ol>\n<p>Sursa: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/mailru\/blog\/504952\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>Weather Deity by Remarin \u041a\u043e\u043c\u0430\u043d\u0434\u0430 Mail.ru Cloud Solutions \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441\u0442\u0430\u0442\u044c\u0438 \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u0430 \u0420\u0430\u0445\u0443\u043b\u0430 \u0411\u0445\u0430\u0442\u0438\u0438 \u0438\u0437 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 Clairvoyant \u043e \u0442\u043e\u043c, \u043a\u0430\u043a\u0438\u0435 \u0435\u0441\u0442\u044c \u0444\u043e\u0440\u043c\u0430\u0442\u044b \u0444\u0430\u0439\u043b\u043e\u0432 \u0432 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u0430\u043a\u0438\u0435 \u0441\u0430\u043c\u044b\u0435 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u043d\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0444\u043e\u0440\u043c\u0430\u0442\u043e\u0432 Hadoop \u0438 \u043a\u0430\u043a\u043e\u0439 \u0444\u043e\u0440\u043c\u0430\u0442 \u043b\u0443\u0447\u0448\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c. \u0417\u0430\u0447\u0435\u043c \u043d\u0443\u0436\u043d\u044b \u0440\u0430\u0437\u043d\u044b\u0435 \u0444\u043e\u0440\u043c\u0430\u0442\u044b \u0444\u0430\u0439\u043b\u043e\u0432 \u0421\u0435\u0440\u044c\u0435\u0437\u043d\u043e\u0435 \u0443\u0437\u043a\u043e\u0435 \u043c\u0435\u0441\u0442\u043e \u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 HDFS, \u0442\u0430\u043a\u0438\u0445 \u043a\u0430\u043a MapReduce \u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":84417,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-84416","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - aioseo.com -->\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/formaty-fajlov-v-bolshih-dannyh-kratkij-likbez\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0424\u043e\u0440\u043c\u0430\u0442\u044b \u0444\u0430\u0439\u043b\u043e\u0432 \u0432 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445: \u043a\u0440\u0430\u0442\u043a\u0438\u0439 \u043b\u0438\u043a\u0431\u0435\u0437 | ProHoster\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/formaty-fajlov-v-bolshih-dannyh-kratkij-likbez\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-06-07T11:42:50+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-06-07T11:42:50+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Formate de fi\u0219iere \u00een big data: un ghid pe scurt | ProHoster","description":"","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/formaty-fajlov-v-bolshih-dannyh-kratkij-likbez","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0424\u043e\u0440\u043c\u0430\u0442\u044b \u0444\u0430\u0439\u043b\u043e\u0432 \u0432 \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445: \u043a\u0440\u0430\u0442\u043a\u0438\u0439 \u043b\u0438\u043a\u0431\u0435\u0437 | ProHoster","og:url":"https:\/\/prohoster.info\/ro\/blog\/administrirovanie\/formaty-fajlov-v-bolshih-dannyh-kratkij-likbez","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-06-07T11:42:50+00:00","article:modified_time":"2020-06-07T11:42:50+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"84416","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 14:58:40","updated":"2022-09-28 08:24:46","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/84416","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=84416"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/84416\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media\/84417"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=84416"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=84416"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=84416"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}