Ngwakọta nsonaazụ Spark ọ bụ usoro isi na nyocha na nhazi nke nnukwu data. Spark, usoro nhazi a na-ekesa na-ewu ewu, na-enye ọtụtụ nhọrọ iji sonyere na jikọta nsonaazụ arụmọrụ emere na gburugburu gị. N'isiokwu a, anyị ga-enyocha usoro na ụzọ dị iche iche nke Spark na-enye iji jikọta nsonaazụ rụọ ọrụ nke ọma. Site na ijikọ RDD ruo na iji ọrụ mkpokọta, ị ga-achọpụta otu esi enweta ike kachasị nke Spark na-enye maka nsonaazụ ọsọ ọsọ na nke ziri ezi. na ọrụ gị nke Big Data.
Ngwakọta nke RDD Ọ bụ otu n'ime ụzọ kachasị dị mkpa na nke a na-ahụkarị iji jikọta nsonaazụ na Spark. RDDs (Ntọala ekesa Resilient) bụ usoro data bụ isi na Spark, ma na-enye ohere ọrụ kesaa yana n'otu oge. n'ụzọ dị irè. Site na ijikọta RDD abụọ ma ọ bụ karịa, enwere ike ịrụ ọrụ dị ka njikọ, njikọ, ma ọ bụ ọdịiche dị n'etiti nhazi data, si otú a na-enye nnukwu mgbanwe iji gbanwee ma jikọta nsonaazụ nke arụmọrụ a rụrụ na Spark.
Ụzọ ọzọ iji jikọta nsonaazụ na Spark bụ site na mkpokọta arụmọrụ. Ọrụ ndị a na-enye ohere ka ejikọta ọtụtụ nsonaazụ ka ọ bụrụ otu, na-eji ọrụ nchịkọta dị ka nchikota, nkezi, kacha ma ọ bụ opekempe. N'iji ọrụ ndị a, ọ ga-ekwe omume ịnweta nsonaazụ gbakọtara na nchịkọta site na nnukwu data n'otu nzọụkwụ, nke nwere ike ịba uru karịsịa na ọnọdụ ebe a chọrọ iji gbakọọ metrics ma ọ bụ ọnụ ọgụgụ na data zuru ezu.
Na mgbakwunye na nchịkọta RDD na ijikọ ọrụ, Spark na-enyekwa usoro ndị ọzọ maka ijikọta nsonaazụ, dị ka iji mgbanwe mkpokọta na iji ọrụ mbelata. Mkpokọta mgbanwe na-enye gị ohere ikpokọta nsonaazụ nke ụzọ dị mma n'otu ebe, karịsịa mgbe ịchọrọ ịkekọrịta ozi n'etiti ọrụ dị iche iche. N'aka nke ọzọ, ọrụ mbelata na-enye ohere ijikọta ọtụtụ nsonaazụ n'ime otu nsonaazụ site na itinye ọrụ akọwapụtara nke onye ọrụ. Usoro ndị a na-enye mgbanwe na njikwa karịa ka esi ejikọta nsonaazụ na Spark.
Na nkenke, ijikọta nsonaazụ na Spark bụ usoro dị mkpa maka nhazi na nyocha nnukwu mpịakọta nke data. ụzọ dị mma. Spark na-enye usoro na ụzọ dị iche iche iji jikọta nsonaazụ, dị ka ijikọta RDD, ọrụ nchịkọta, ojiji nke mgbanwe mkpokọta, na ọrụ mbelata. Site n'iji ngwa ndị a eme ihe nke ọma, ndị mmepe na ndị nyocha nwere ike nweta nsonaazụ ziri ezi na ngwa ngwa na ọrụ mmepe ha. Big Data. N'akụkụ ndị a, anyị ga-enyocha usoro ndị a n'ụzọ zuru ezu ma nye ihe atụ bara uru iji ghọta nke ọma ka esi ejikọta nsonaazụ na Spark.
1. Soro Algorithms Dị na Spark
Spark bụ usoro mgbakọ na mwepụ na-ekesa nke na-enye ọtụtụ ụdị nke ijikọta algọridim iji jikọta nsonaazụ nke arụmọrụ ndị yiri ya. Emebere algọridim ndị a iji kwalite arụmọrụ na scalability na nnukwu gburugburu data. N'okpuru bụ ụfọdụ n'ime algọridim ejikọtara na Spark:
- Jikota: Algọridim a na-ejikọta usoro data abụọ ahaziziri n'otu nhazi. Ọ na-eji usoro nkewa na mmeri iji jikọta data nke ọma ma hụ na ọ na-arụ ọrụ nke ọma.
- Jikọọ: Algọridim jikọtara ọnụ na-ejikọta data abụọ dabere na igodo nkịtị. Ọ na-eji usoro dị ka nkewa na nkesa data iji kwalite usoro njikọ. Nke a algọridim bara uru nke ukwuu na tebụl sonyere arụmọrụ Ajụjụ SQL.
- OtuByKey: Algọridim a dị iche iche ụkpụrụ ejikọtara na igodo ọ bụla n'ime set nke data. Ọ bara uru karịsịa mgbe ịchọrọ ịrụ ọrụ nchịkọta, dị ka mgbakwunye ma ọ bụ nkezi, dabere na igodo enyere.
Ngwakọta algọridim ndị a bụ naanị ihe atụ nke nhọrọ dị na Spark. Onye ọ bụla na-enye uru pụrụ iche yana enwere ike iji ya mee ihe n'ọnọdụ dị iche iche dabere na ihe achọrọ ngwa ngwa. Ọ dị mkpa ịghọta na were uru nke algorithms ndị a nke ọma iji hụ na arụmọrụ kacha mma na scalability na ọrụ Spark.
2. Ngwakọta data ụzọ na Spark
Ha dị otutu nke na-enye ohere ijikọ data dị iche iche nke ọma. Otu n'ime ụzọ ndị a na-ahụkarị bụ sonyere usoro, nke na-enye ohere ijikọta ọnụọgụ abụọ ma ọ bụ karịa site na iji igodo nkịtị. Usoro a bara uru karịsịa ma ọ bụrụ na ịchọrọ ịkọwa data dabere na njirimara akọwapụtara, dị ka ihe nchọpụta pụrụ iche. Spark na-enye ụdị njikọ dị iche iche, dị ka nsonye ime, njikọ aka ekpe, njikọ aka nri na nsonye mpụta zuru oke, iji mee mgbanwe n'ọnọdụ dị iche iche.
Ụzọ ọzọ iji jikọta data na Spark bụ usoro nchịkọta. Usoro a na-enye ohere ijikọ data site na ịgbakwunye ụkpụrụ dabere na igodo nkịtị. Ọ bara uru karịsịa mgbe ịchọrọ ị nweta nsonaazụ nchịkọta, dị ka ịgbakọ nchikota, nkezi, opekempe ma ọ bụ karịa nke otu njirimara. Spark na-enye ọtụtụ ọrụ nchịkọta, dị ka nchikota, ọnụ ọgụgụ, avg, min na max, nke na-eme ka ọ dị mfe. Usoro a.
Na mgbakwunye na ụzọ ndị a kpọtụrụ aha, Spark na-enyekwa cross arụmọrụ, nke na-enye ohere ijikọ data abụọ na-enweghị igodo nkịtị. Ọrụ ndị a na-emepụta nchikota niile nwere ike ime n'etiti ihe abụọ ahụ ma nwee ike ịba uru n'ọnọdụ dịka ọgbọ. nke ngwaahịa Cartesian ma ọ bụ imepụta data maka nnwale buru ibu. Otú ọ dị, n'ihi ike mgbakọ na mwepụ chọrọ, ọrụ ndị a nwere ike ịdị oke ọnụ na oge igbu oge na ihe onwunwe.
3. Ihe ndị ị ga-atụle mgbe ị na-ejikọta nsonaazụ na Spark
Nhazi na-ekesa ọkụ
Otu n'ime uru kachasị ama ama nke Spark bụ ikike ya ịhazi nnukwu data n'ụzọ ekesa. Nke a bụ n'ihi injin nhazi ebe nchekwa ya na ike ya kewaa na kesaa ọrụ n'ofe ụyọkọ ọnụ mgbe ị na-ejikọta nsonaazụ na Spark, ọ dị mkpa iburu nke a n'uche iji hụ na arụmọrụ kacha mma. Ọ dị mkpa iji kesaa ọrụ nke ọma n'etiti ọnụ ọnụ ma jiri akụrụngwa dịnụ mee nke ọma.
Nchekwa data na nnọgidesi ike
Ojiji nke caching na data nnọgidesi ike bụ isi ihe ọzọ ị ga-atụle mgbe ị na-ejikọta nsonaazụ in Spark. Mgbe arụrụ ọrụ, Spark na-echekwa nsonaazụ ya na ebe nchekwa ma ọ bụ diski, dabere n'otu esi hazie ya. Site na iji caching ma ọ bụ nnọgidesi ike kwesịrị ekwesị, ọ ga-ekwe omume ịchekwa data ahụ n'ebe a na-enweta maka ajụjụ na ngụkọ n'ọdịnihu, si otú a na-ezere inwe ịtụgharịghachi nsonaazụ ọzọ. Nke a nwere ike imeziwanye arụmọrụ mgbe ị na-ejikọta ọtụtụ nsonaazụ na Spark.
Ịhọrọ algorithm ziri ezi
Ịhọrọ algorithm ziri ezi bụkwa ihe dị mkpa mgbe ị na-ejikọta nsonaazụ na Spark Dabere na ụdị data na nsonaazụ achọrọ, ụfọdụ algọridim nwere ike ịdị irè karịa ndị ọzọ. Dịka ọmụmaatụ, ọ bụrụ na ịchọrọ ịme a nchịkọta o nhazi ọkwa nke data, ị nwere ike họrọ algọridim kwesịrị ekwesị, dị ka K-means ma ọ bụ Logistic Regression, n'otu n'otu. Site na ịhọrọ algorithm ziri ezi, ọ ga-ekwe omume iwelata oge nhazi wee nweta nsonaazụ ziri ezi na Spark.
4. Atụmatụ nchikota data dị mma na Spark
Spark bụ usoro nhazi data nke a na-ejikarị eme ihe maka ikike ya ijikwa nnukwu data nke ọma. Otu n'ime isi ihe dị na Spark bụ ikike ijikọta data nke ọma, nke dị mkpa n'ọtụtụ ọnọdụ. Enwere ọtụtụ nke enwere ike iji dabere na ihe ngo a chọrọ.
Otu n'ime usoro a na-ahụkarị maka ijikọta data na Spark bụ iso, nke na-enye gị ohere ijikọta ọnụọgụ abụọ ma ọ bụ karịa dabere na kọlụm nkịtị. Njikọ ahụ nwere ike ịbụ ụdị dị iche iche, gụnyere njikọ dị n'ime, njikọ mpụga, na njikọ aka ekpe ma ọ bụ aka nri nke ọ bụla nwere njirimara nke ya ma jiri ya dabere na data ịchọrọ ijikọ na nsonaazụ ịchọrọ nweta.
Atụmatụ ọzọ dị mma maka ijikọta data na Spark bụ nkesa. Mweghachi bụ usoro nkesagharị data n'ofe ụyọkọ Spark dabere na kọlụm igodo ma ọ bụ ntọala nke kọlụm. Nke a nwere ike ịba uru mgbe ịchọrọ ijikọ data nke ọma site na iji ọrụ njikọ ma emechaa. Enwere ike ime nlọghachi site na iji ọrụ ahụ nkesa Ọ dị na Spark.
5. Nleba anya arụmọrụ mgbe ị na-ejikọta nsonaazụ na Spark
Mgbe ị na-ejikọta nsonaazụ na Spark, ọ dị mkpa iburu n'uche ụfọdụ arụmọrụ n'uche. Nke a na-achọpụta na usoro ijikọ na-arụ ọrụ nke ọma ma ọ dịghị emetụta oge mmezu nke ngwa ahụ. Nke a bụ ụfọdụ ndụmọdụ iji kwalite arụmọrụ mgbe ị na-ejikọta nsonaazụ na Spark:
1. Zenarị ọrụ shuffle: Gbanwee ọrụ, dị ka otuByKey ma belataByKey, nwere ike ịdị oke ọnụ na arụmọrụ, ebe ọ bụ na ha gụnyere ịnyefe data n'etiti ọnụ ụyọkọ. Iji zere nke a, a na-atụ aro ka iji ọrụ nchịkọta dịka belataByKey o otu Site kama, ka ha na-ebelata mmegharị data.
2. Jiri cache data etiti: Mgbe ị na-ejikọta nsonaazụ na Spark, nwere ike iwepụta data etiti nke ejiri mee ihe n'ọtụtụ ọrụ. Iji meziwanye arụmọrụ, a na-atụ aro ka iji ọrụ ahụ cache() o nọgidesie ike() iji chekwaa data etiti a na ebe nchekwa. Nke a na-ezere inwegharịgharị ha oge ọ bụla ejiri ha rụọ ọrụ na-esote.
3. Were ohere nke myirịta: A maara Spark maka ikike nhazi ya, nke na-enye ohere ka arụ ọrụ n'otu n'otu n'ọtụtụ ọnụ na ụyọkọ. Mgbe ị na-ejikọta nsonaazụ, ọ dị mkpa iji ohere nke ike ịmekọrịta ihe a. Iji mee nke a, a na-atụ aro ka iji ọrụ dịka akụkụ map o flatMap, nke na-ekwe ka ahazi data n'otu n'otu na nkebi RDD ọ bụla.
6. Nkwalite nke ijikọta nsonaazụ na Spark
Nke a bụ akụkụ dị mkpa iji melite arụmọrụ na arụmọrụ nke ngwa anyị. Na Spark, mgbe anyị na-arụ ọrụ dịka nzacha, eserese, ma ọ bụ nchịkọta, a na-echekwa nsonaazụ etiti na ebe nchekwa ma ọ bụ na diski tupu ejikọta ya. Otú ọ dị, dabere na nhazi na nha nke data ahụ, nchikota a nwere ike ịdị oke ọnụ na oge na ihe onwunwe.
Iji kwalite nchikota a, Spark na-eji usoro dị iche iche dị ka nkewa data na igbu oge. Nkewa nke data nwere ikesa data atọrọ n'ime obere iberibe ma kesaa ya n'ọnụ ọnụ dị iche iche iji nweta akụrụngwa dịnụ. Nke a na-enye ohere nke ọ bụla ohere ịhazi nchikota data ya n'adabereghị na ya, si otú a na-ebelata oge igbu.
Akụkụ ọzọ dị mkpa bụ myirịta ogbugbu, ebe Spark na-ekewa ọrụ n'ime ọrụ dị iche iche ma na-eme ha n'otu oge na ọnụ dị iche iche. Nke a na-enye ohere iji nhazi akụrụngwa na-arụ ọrụ nke ọma ma mee ka nchikota nsonaazụ dị ngwa. Na mgbakwunye, Spark nwere ikike ịhazigharị ọnụọgụ ọrụ na-akpaghị aka dabere na nha data yana ikike ọnụ, wee hụ na nguzozi kachasị mma n'etiti arụmọrụ na arụmọrụ. Usoro njikarịcha ndị a na-atụnye ụtụ n'ịkwalite oge nzaghachi nke ngwa anyị na Spark.
7. Ndụmọdụ iji zere esemokwu mgbe ị na-ejikọta nsonaazụ na Spark
:
1. Jiri usoro ngwakọta kwesịrị ekwesị: Mgbe ị na-ejikọta nsonaazụ na Spark, ọ dị mkpa iji ụzọ kwesịrị ekwesị iji zere esemokwu wee nweta nsonaazụ ziri ezi. Spark na-enye ụzọ njikọ dị iche iche, dị ka nsonye, otu, njikọ, na ndị ọzọ. Ọ dị mkpa ịghọta ọdịiche dị n'etiti usoro ọ bụla wee họrọ nke kacha kwesị ekwesị maka ọrụ dị n'aka. Na mgbakwunye, a na-atụ aro ka ị mara oke na nhọrọ dị maka usoro ọ bụla, n'ihi na ha nwere ike imetụta arụmọrụ na izi ezi nke nsonaazụ ya.
2. Mee oke data ihicha: Tupu ijikọta nsonaazụ na Spark, ọ dị mkpa iji rụchaa nke ọma ihicha data. Nke a na-agụnye iwepụ ụkpụrụ efu, oyiri, na ndị na-apụ apụ, yana idozi esemokwu na esemokwu. Nhicha data kwesịrị ekwesị na-eme ka iguzosi ike n'ezi ihe na nkwụsi ike nke nsonaazụ jikọtara ọnụ. Na mgbakwunye, ekwesịrị ịme nyocha ogo data iji chọpụta mmejọ ndị nwere ike tupu emee njikọ ahụ.
3. Họrọ nkebi kwesịrị ekwesị: Nkewa data na Spark nwere mmetụta dị ukwuu n'ịrụ ọrụ nke njikọta. Ọ bụ ihe amamihe dị na ya ịkwalite nkewa data tupu ijikọta nsonaazụ, kewaa data n'otu n'otu na nguzozi iji bulie arụmọrụ. Spark na-enye nhọrọ nkewa dị iche iche, dị ka nkebi na partitionBy, nke enwere ike iji kesaa data nke ọma. Site n'ịhọrọ nkebi ziri ezi, ị na-ezere nkwụsịtụ ma melite arụmọrụ zuru oke nke usoro njikọ.
Abụ m Sebastián Vidal, onye injinia kọmpụta nwere mmasị na teknụzụ na DIY. Ọzọkwa, abụ m onye okike tecnobits.com, ebe m na-ekerịta nkuzi iji mee ka nkà na ụzụ nwetakwuo ohere na nghọta maka onye ọ bụla.