Hive dia fitaovana Big Data Analytics fampiasa betsaka amin'ny orinasa, ary toerana mahafinaritra hanombohana raha vaovao amin'ny Big Data ianao. Ity lesona Apache Hive ity dia mamaky ny fototry ny Apache Hive, nahoana no ilaina ny tohotra, ny endri-javatra ary ny zavatra hafa rehetra tokony ho fantatrao.
Andeha hojerentsika aloha ny rafitra Hadoop izay nanorenana ny Apache Hive.
Apache Hadoop
Apache Hadoop dia maimaim-poana ary Open-source sehatra fitahirizana sy fanodinana angona lehibe manomboka amin'ny gigabytes ka hatramin'ny petabytes. Ny Hadoop dia mamela ny fivondronan'ny solosaina maro hamakafaka ireo angona goavana mifanitsy, fa tsy mitaky solosaina lehibe iray hitahiry sy hamakafaka ny angona.
MapReduce sy Hadoop Distributed File System dia roa amin'ireo singa:
- MapReduce - MapReduce dia teknika fandaharana mifanitsy amin'ny fitantanana ireo angon-drakitra voalamina sy semi-rafitra ary tsy voarafitra amin'ny cluster hardware entam-barotra.
- HDFS - HDFS (Hadoop Distributed File System) dia singa Hadoop framework izay mitahiry sy manodina data. Izy io dia rafitra fichier mahazaka fahadisoana izay mandeha amin'ny fitaovana mahazatra
Ireo zana-tetik'asa (fitaovana) samihafa ao amin'ny ecosystem Hadoop, anisan'izany ny Sqoop, Pig, ary Hive, dia ampiasaina hanampiana ireo maody Hadoop.
- Hive - Ny Hive dia rafitra iray hanoratana scripts amin'ny fomba SQL izay manao kajy MapReduce.
- kisoa - Ny kisoa dia fiteny fandaharana procedural izay azo ampiasaina hamoronana script ho an'ny fizotran'ny MapReduce.
- Sqoop - Sqoop dia fitaovana manafatra sy manondrana angona eo anelanelan'ny HDFS sy RDBMS.
Inona ny Apache Hive?
Apache Hive dia loharano misokatra trano fitehirizana data fandaharana ho an'ny famakiana, fanoratana ary fitantanana angon-drakitra lehibe voatahiry mivantana ao amin'ny Apache Hadoop Distributed File System (HDFS) na rafitra fitahirizana data hafa toa an'i Apache HBase.
Ny mpamorona SQL dia mety mampiasa Hive hamorona fanambarana Hive Query Language (HQL) ho an'ny fangatahana angona sy famakafakana izay azo ampitahaina amin'ny fanambarana SQL mahazatra. Izy io dia noforonina mba hanamora ny fandaharana MapReduce amin'ny fanafoanana ny filàna mianatra sy manoratra kaody Java lava. Azonao atao kosa ny manoratra ny fanontanianao ao amin'ny HQL, ary i Hive dia hanangana ny sari-tany ary hampihena ny asa ho anao.
Ny interface tsara SQL an'ny Apache Hive dia lasa Standard Gold amin'ny fanaovana fikarohana ad-hoc, famintinana ary famakafakana ny angona Hadoop. Rehefa tafiditra ao anaty rahona tambajotra informatika, ity vahaolana ity dia tena mandaitra sy azo ekena indrindra, ka izany no mahatonga ny orinasa maro, anisan'izany ny Netflix sy Amazon, hanohy hampivelatra sy hanatsara ny Apache Hive.
tantara
Nandritra ny fotoanan'izy ireo tao amin'ny Facebook, Joydeep Sen Sarma sy Ashish Thusoo dia niara-namorona ny Apache Hive. Samy niaiky izy ireo fa raha te hahazo tombony betsaka amin'ny Hadoop, dia tsy maintsy mamorona asa Java Map-Reduce sarotra kokoa izy ireo. Niaiky izy ireo fa tsy ho afaka hampianatra ny ekipa injeniera sy mpanadihady miitatra haingana momba ny fahaiza-manao ilainy hampiasana ny Hadoop manerana ny orinasa. Ny injeniera sy ny mpandinika dia nampiasa matetika ny SQL ho toy ny interface interface.
Na dia afaka mahafeno ny ankamaroan'ny filàn'ny analyse aza ny SQL, dia nikasa ny hampiditra ny fahafaha-programan'i Hadoop ihany koa ny mpamorona. Apache Hive dia nipoitra avy amin'ireto tanjona roa ireto: fiteny fanambaràna miorina amin'ny SQL izay nahafahan'ny mpamorona nampiditra ny script sy ny programany manokana rehefa tsy ampy ny SQL.
Novolavolaina ihany koa izy io mba hitazonana metadata afovoany (mifototra amin'ny Hadoop) momba ny angon-drakitra rehetra ao amin'ny orinasa mba hanamora ny fananganana fikambanana entin'ny data.
Ahoana no fiasan'i Apache Hive?
Raha fintinina, ny Apache Hive dia mamadika fandaharana fampidirana voasoratra amin'ny fiteny HiveQL (tahaka ny SQL) ho asa iray na maromaro Java MapReduce, Tez, na Spark. (Ireo motera famonoana rehetra ireo dia mifanaraka amin'ny Hadoop YARN.) Aorian'izany, Apache Hive dia mandamina ny angon-drakitra ho tabilao ho an'ny Hadoop Distributed File System HDFS) ary manao ny asa amin'ny cluster mba hahazoana valiny.
Data
Ny latabatra Apache Hive dia voalamina amin'ny fomba mitovy amin'ny fandrindrana ny latabatra ao amin'ny angon-drakitra fifandraisana, miaraka amin'ny singa data manomboka amin'ny lehibe kokoa ka hatramin'ny kely kokoa. Ny angon-drakitra dia voaforona amin'ny latabatra izay mizara ho fizarana, izay mizara ho siny. HiveQL (Hive Query Language) dia ampiasaina hidirana amin'ny angona, izay azo ovaina na ampiana. Ny angon-drakitra tabilao dia serialized ao anatin'ny tahiry tsirairay, ary ny latabatra tsirairay dia manana ny lahatahiry HDFS manokana.
Architecture
Ankehitriny isika dia hiresaka momba ny lafiny manan-danja indrindra amin'ny Hive Architecture. Ny singa ao amin'ny Apache Hive dia toy izao manaraka izao:
Metastore — Manara-maso ny vaovao momba ny latabatra tsirairay izy io, toy ny rafitra sy ny toerana misy azy. Ny metadata partition dia tafiditra ao amin'ny Hive ihany koa. Izany dia ahafahan'ny mpamily manara-maso ny fivoaran'ny angon-drakitra samihafa miparitaka manerana ny cluster. Ny angona dia voatahiry amin'ny endrika RDBMS mahazatra. Ny metadata hive dia tena zava-dehibe ho an'ny mpamily hitazomana ny angon-drakitra. Ny mpizara backup dia manao dika mitovy amin'ny angon-drakitra tsy tapaka mba hamerenana izany raha sendra very ny angona.
Driver – Ny fanambarana HiveQL dia raisin'ny mpamily iray, izay miasa toy ny mpanara-maso. Amin'ny fametrahana session, ny mpamily dia manomboka ny fanatanterahana ny fanambarana. Manara-maso ny androm-piainan'ny mpanatanteraka sy ny fivoarany. Mandritra ny fanatanterahana ny fanambarana HiveQL, ny mpamily dia mitahiry ny metadata ilaina. Izy io koa dia miasa ho toy ny angona na antontan-kevitra fanangonana valiny manaraka ny dingana Reduce.
Compiler – Manatanteraka ny fanangonana fanontaniana HiveQL izy io. Ny fanontaniana dia avadika ho drafitra famonoana. Voatanisa ao amin'ny drafitra ny asa. Ao anatin'izany ihany koa ny dingana tsy maintsy ataon'ny MapReduce mba hahazoana ny valiny araka ny nadikan'ny fangatahana. Ny fanontaniana dia avadika ho Abstract Syntax Tree avy amin'ny Hive's compiler (AST). Mamadika ny AST ho Graph Acyclic Directed rehefa avy nanamarina ny tsy fahatomombanana sy ny fotoana fanangonana (DAG).
Optimizer - Manatsara ny DAG amin'ny alàlan'ny fanovana samihafa amin'ny drafitra famonoana. Izy io dia manambatra ny fanovana mba hanatsarana ny fahombiazany, toy ny famadihana ny fantsom-pifandraisana ho iray. Mba hanatsarana ny hafainganam-pandeha, ny optimizer dia mety mizara hetsika, toy ny fampiharana ny fanovana amin'ny angona alohan'ny hanaovana asa fampihenana.
-mpanatanteraka - Ny mpanatanteraka no mitantana ny asa rehefa vita ny fanangonana sy fanatsarana. Ny asa dia tanterahan'ny Mpanatanteraka.
CLI, UI, ary Server Thrift - Ny interface-line interface (CLI) dia interface tsara izay ahafahan'ny mpampiasa ivelany mifandray amin'i Hive. Ny mpizara fitsitsiana an'i Hive, mitovy amin'ny protocols JDBC na ODBC, dia ahafahan'ny mpanjifa ivelany mifandray amin'i Hive amin'ny alàlan'ny tambajotra.
Security
Apache Hive dia ampidirina amin'ny fiarovana Hadoop, izay mampiasa Kerberos ho an'ny fanamarinana ny mpanjifa-server. Ny HDFS dia mandidy ny fahazoan-dàlana ho an'ny rakitra vao novokarina ao amin'ny Apache Hive, ahafahanao mankasitraka ny mpampiasa, ny vondrona ary ny hafa.
Key endri-javatra
- Ny Hive dia manohana ny latabatra ivelany, izay mamela anao hikarakara angona nefa tsy mitahiry izany ao amin'ny HDFS.
- Izy io koa dia mamela ny fizarana angon-drakitra amin'ny haavon'ny latabatra hampitombo ny hafainganam-pandeha.
- Apache Hive dia mahafeno tsara ny filan'ny interface ambany Hadoop.
- Ny Hive dia manamora ny famintinana ny angona, ny fangatahana ary ny famakafakana.
- HiveQL dia tsy mitaky fahaiza-manao fandaharana; ny fahatakarana tsotra momba ny fangatahana SQL dia ampy.
- Azontsika atao koa ny mampiasa Hive hanaovana fangatahana ad-hoc amin'ny famakafakana angon-drakitra.
- Izy io dia azo scalable, mahazatra ary azo ampifanarahana.
- HiveQL dia tsy mitaky fahaiza-manao fandaharana; ny fahatakarana tsotra momba ny fangatahana SQL dia ampy.
soa
Apache Hive dia mamela ny tatitra amin'ny faran'ny andro, ny fanombanana ny fifanakalozana isan'andro, ny fikarohana ad-hoc ary ny famakafakana angon-drakitra. Ny hevitra feno omen'ny Apache Hive dia manome tombony lehibe amin'ny fifaninanana ary manamora ny famalianao ny fitakian'ny tsena.
Ireto ny sasany amin'ireo tombony azo amin'ny fananana fampahalalana toy izany mora azo:
- Hanamaivana ny fampiasana - Miaraka amin'ny fiteny mitovy amin'ny SQL azy, mora azo ny angon-drakitra fangatahana.
- Fampidirana data haingana — Satria mamaky ny schema i Apache Hive nefa tsy manamarina ny karazana latabatra na ny famaritana ny schema, dia tsy voatery hovakiana, hozaraina ary hapetraka amin'ny kapila amin'ny endrika anatiny ny angon-drakitra. Mifanohitra amin'izany kosa, amin'ny angon-drakitra mahazatra, ny angona dia tsy maintsy voamarina isaky ny ampiana izany.
- Ny scalability ambony, ny flexibilité ary ny fandaniam-bola - Satria ny angona dia voatahiry ao amin'ny HDFS, Apache Hive dia afaka mitazona data petabytes 100s, ka mahatonga azy io ho safidy azo esorina lavitra noho ny angon-drakitra mahazatra. Apache Hive, amin'ny serivisy Hadoop mifototra amin'ny rahona, dia ahafahan'ny mpanjifa manodina haingana sy midina ireo mpizara virtoaly mba hihaona amin'ny enta-mavesatry ny asa.
- Fahaizana miasa midadasika - Ny angon-drakitra lehibe dia mety mahazaka fanontaniana hatramin'ny 100,000 isan'ora.
fetra
- Amin'ny ankapobeny, ny fangatahana Apache Hive dia manana fahatarana be.
- Ny fanohanan'ny subquery dia voafetra.
- Tsy hita ao amin'ny Apache Hive ny fanontaniana amin'ny fotoana tena izy sy ny fiovan'ny haavon'ny laharana.
- Tsy misy fanohanana ny hevitra mivaingana.
- Ao amin'ny tohotra, ny fanavaozana sy famafana hetsika dia tsy tohanana.
- Tsy natao ho an'ny OLTP (dingana tetezamita an-tserasera).
Manomboka amin'ny Apache Hive
Apache Hive dia mpiara-miombon'antoka matanjaka amin'ny Hadoop izay manatsotra sy manamora ny fizotran'ny asanao. Mba hahazoana tombony betsaka amin'ny Apache Hive dia ilaina ny fampidirana tsy misy olana. Ny dingana voalohany dia ny mankany amin'ny tranonkala.
1. Fametrahana Hive avy amin'ny Stable Release
Atombohy amin'ny alàlan'ny fampidinana ny famoahana farany an'i Hive avy amin'ny iray amin'ireo fitaratra fampidinana Apache (jereo Hive Releases). Avy eo dia tsy maintsy esorina ny tarball. Izany dia hamorona subfolder antsoina hoe hive-xyz (izay misy xyz ny laharana famoahana):
Apetraho ny fari-piainan'ny tontolo iainana HIVE_HOME hanondro ny lahatahiry fametrahana:
Farany, ampio $HIVE_HOME/bin ny PATH
:
2. Running Hive
Mampiasa Hadoop i Hive, noho izany:
- tsy maintsy manana Hadoop ianao amin'ny lalanao OR
3. Fampandehanana DLL
Mamorona tabilao Hive
mamorona latabatra antsoina hoe pokes misy tsanganana roa, ny voalohany dia integer ary ny faharoa dia tady.
Fitetezana amin'ny tabilao
Tanisao ny tabilao rehetra
Manova sy mandatsaka latabatra
Azo ovaina ny anaran-databatra ary azo ampiana na soloina ny tsanganana:
Tsara ny manamarika fa ny REPLACE COLUMNS dia manolo ny tsanganana rehetra efa misy nefa ny firafitry ny latabatra ihany no ovaina fa tsy ny angona. SerDe teratany dia tsy maintsy ampiasaina amin'ny latabatra. REPLACE COLUMNS dia azo ampiasaina hanesorana tsanganana amin'ny schema amin'ny latabatra:
Latabatra mitete
Misy fiasa sy endri-javatra fanampiny maro ao amin'ny Apache Hive izay azonao ianarana amin'ny fitsidihana ny tranokala ofisialy.
Famaranana
Ny famaritana ny Hive dia interface programan'ny data ho an'ny fangatahana sy famakafakana ireo angona goavana izay natsangana teo an-tampon'ny Apache Hadoop. Ny matihanina dia misafidy azy io amin'ny programa, fitaovana ary rindrambaiko hafa satria natao indrindra ho an'ny angona be Hive izy io ary mora ampiasaina.
Manantena aho fa hanampy anao hanomboka amin'ny Apache Hive ity fampianarana ity ary hahomby kokoa ny fizotranao. Ampahafantaro anay ao amin'ny fanehoan-kevitra.
Leave a Reply