Nagkinahanglan ba kita og data lake? Unsa ang buhaton sa data warehouse?

Kini nga artikulo usa ka hubad sa akong artikulo sa medium - Pagsugod sa Data Lake, nga nahimong popular kaayo, tingali tungod sa kayano niini. Busa, nakahukom ko nga isulat kini sa Russian ug makadugang og gamay aron maklaro sa usa ka ordinaryo nga tawo nga dili espesyalista sa datos kung unsa ang data warehouse (DW), ug unsa ang data lake (Data Lake), ug kung giunsa nila. mag uban .

Ngano nga gusto nako isulat ang bahin sa data lake? Nagtrabaho ako uban ang datos ug analytics sulod sa kapin sa 10 ka tuig, ug karon siguradong nagtrabaho ako uban ang dagkong datos sa Amazon Alexa AI sa Cambridge, nga naa sa Boston, bisan kung nagpuyo ko sa Victoria sa Vancouver Island ug kanunay nga nagbisita sa Boston, Seattle , ug Sa Vancouver, ug usahay bisan sa Moscow, mamulong ko sa mga komperensya. Nagsulat usab ako matag karon ug unya, apan nag-una ako sa pagsulat sa English, ug nakasulat na ako pipila ka mga libro, Kinahanglan usab nako nga ipaambit ang mga uso sa analytics gikan sa North America, ug usahay magsulat ako mga telegrama.

Kanunay kong nagtrabaho sa mga bodega sa datos, ug sukad sa 2015 nagsugod ako sa pagtrabaho pag-ayo sa Amazon Web Services, ug sa kasagaran mibalhin sa cloud analytics (AWS, Azure, GCP). Naobserbahan nako ang ebolusyon sa mga solusyon sa analitiko sukad sa 2007 ug bisan nagtrabaho alang sa data warehouse vendor nga Teradata ug gipatuman kini sa Sberbank, ug sa diha nga ang Big Data nga adunay Hadoop nagpakita. Ang tanan nagsugod sa pag-ingon nga ang panahon sa pagtipig milabay na ug karon ang tanan naa sa Hadoop, ug unya nagsugod sila sa paghisgot mahitungod sa Data Lake, pag-usab, nga karon ang katapusan sa data warehouse siguradong miabut. Apan maayo na lang (tingali sa kasubo alang sa pipila nga nakaganansya og daghang salapi sa pag-set up sa Hadoop), ang data warehouse wala mawala.

Niini nga artikulo atong tan-awon kung unsa ang usa ka data lake. Kini nga artikulo gituyo alang sa mga tawo nga adunay gamay o walay kasinatian sa mga bodega sa datos.

Nagkinahanglan ba kita og data lake? Unsa ang buhaton sa data warehouse?

Sa hulagway mao ang Lake Bled, kini mao ang usa sa akong paborito nga mga lanaw, bisan tuod ako didto lamang sa usa ka, ako nahinumdom niini sa tibuok nakong kinabuhi. Apan maghisgot kita bahin sa laing matang sa lanaw - usa ka linaw sa datos. Tingali daghan kaninyo nakadungog na mahitungod niini nga termino labaw pa sa kausa, apan ang usa pa ka kahulugan dili makadaot ni bisan kinsa.

Una sa tanan, ania ang labing inila nga mga kahulugan sa usa ka Data Lake:

"usa ka pagtipig sa file sa tanan nga mga tipo sa hilaw nga datos nga magamit alang sa pagtuki sa bisan kinsa sa organisasyon" - Martin Fowler.

"Kung sa imong hunahuna ang usa ka data mart usa ka botelya sa tubig - giputli, giputos ug giputos alang sa dali nga pagkonsumo, nan ang usa ka data lake usa ka dako nga reservoir sa tubig sa natural nga porma niini. Mga tiggamit, makakolekta ko og tubig para sa akong kaugalingon, mo-dive sa lawom, mag-explore” - James Dixon.

Karon nahibal-an na namo nga ang usa ka data lake mahitungod sa analytics, kini nagtugot kanamo sa pagtipig sa daghang mga datos sa orihinal nga porma niini ug kami adunay gikinahanglan ug sayon ​​​​nga pag-access sa datos.

Kanunay kong ganahan nga pasimplehon ang mga butang, kung mapatin-aw nako ang usa ka komplikado nga termino sa yano nga mga pulong, nan akong nasabtan sa akong kaugalingon kung giunsa kini molihok ug kung unsa kini kinahanglan. Usa ka adlaw, nagsuroy-suroy ko sa gallery sa litrato sa iPhone, ug naamgohan nako, kini usa ka tinuud nga lawa sa datos, naghimo pa ako usa ka slide alang sa mga komperensya:

Nagkinahanglan ba kita og data lake? Unsa ang buhaton sa data warehouse?

Ang tanan yano ra kaayo. Nagkuha kami og litrato sa telepono, ang litrato gi-save sa telepono ug mahimong ma-save sa iCloud (cloud file storage). Gikolekta usab sa telepono ang metadata sa litrato: kung unsa ang gipakita, geo tag, oras. Ingon nga resulta, mahimo namong gamiton ang user-friendly nga interface sa iPhone aron makit-an ang among litrato ug makakita pa gani kami og mga indicators, pananglitan, kung mangita ko og mga litrato nga adunay pulong nga kalayo, makakita ko og 3 ka mga litrato nga adunay larawan sa kalayo. Alang kanako, kini sama ra sa usa ka himan sa Business Intelligence nga dali ug tukma nga molihok.

Ug siyempre, kinahanglan nga dili nato kalimtan ang bahin sa seguridad (awtorisasyon ug pag-authenticate), kung dili ang atong datos dali nga mabutang sa publiko nga domain. Adunay daghang mga balita bahin sa dagkong mga korporasyon ug mga startup kansang datos nahimong publiko tungod sa pagpabaya sa mga developers ug kapakyasan sa pagsunod sa yano nga mga lagda.

Bisan ang ingon ka yano nga litrato makatabang kanato nga mahanduraw kung unsa ang usa ka lawa sa datos, ang mga kalainan niini gikan sa tradisyonal nga bodega sa datos ug ang mga nag-unang elemento niini:

  1. Nagkarga sa Data (Ingestion) mao ang usa ka importante nga bahin sa data lake. Ang datos makasulod sa data warehouse sa duha ka paagi - batch (loading at intervals) ug streaming (data flow).
  2. Pagtipig sa file (Storage) mao ang nag-unang bahin sa Data Lake. Kinahanglan namon ang pagtipig nga dali nga masukod, labi ka kasaligan, ug mubu nga gasto. Pananglitan, sa AWS kini S3.
  3. Katalogo ug Pagpangita (Catalog and Search) - aron malikayan nato ang Data Swamp (kini mao ang paglabay sa tanan nga datos sa usa ka pundok, ug unya imposible nga magtrabaho uban niini), kinahanglan nga maghimo kita og metadata layer aron maklasipikar ang datos aron ang mga tiggamit dali nga makit-an ang datos, nga kinahanglan nila alang sa pagtuki. Dugang pa, mahimo nimong gamiton ang dugang nga mga solusyon sa pagpangita sama sa ElasticSearch. Ang pagpangita makatabang sa tiggamit sa pagpangita sa gikinahanglan nga datos pinaagi sa user-friendly interface.
  4. Pagproseso (Proseso) - kini nga lakang ang responsable sa pagproseso ug pagbag-o sa datos. Mahimo natong usbon ang datos, usbon ang istruktura niini, limpyohan kini, ug daghan pa.
  5. Kasegurohan (Seguridad) - Importante nga mogahin ug panahon sa disenyo sa seguridad sa solusyon. Pananglitan, ang pag-encrypt sa datos sa panahon sa pagtipig, pagproseso ug pagkarga. Importante nga gamiton ang mga pamaagi sa pag-authenticate ug pagtugot. Sa katapusan, gikinahanglan ang usa ka himan sa pag-audit.

Gikan sa praktikal nga punto sa panglantaw, mahimo natong mailhan ang usa ka data lake pinaagi sa tulo ka mga hiyas:

  1. Pagkolekta ug pagtipig bisan unsa — ang data lake naglangkob sa tanan nga datos, pareho nga hilaw nga wala maproseso nga datos alang sa bisan unsang yugto sa panahon ug giproseso / gilimpyohan nga datos.
  2. Lawom nga Scan - ang usa ka data lake nagtugot sa mga tiggamit sa pagsusi ug pag-analisar sa datos.
  3. Flexible nga pag-access - Ang data lake naghatag og flexible access alang sa lain-laing data ug lain-laing mga senaryo.

Karon mahimo na naton hisgutan ang kalainan tali sa usa ka bodega sa datos ug usa ka lawa sa datos. Kasagaran ang mga tawo mangutana:

  • Unsa ang mahitungod sa data warehouse?
  • Giilisan ba nato ang data warehouse sa usa ka data lake o gipalapdan ba nato kini?
  • Posible pa ba nga buhaton kung wala ang data lake?

Sa laktod, walay klarong tubag. Kini tanan nagdepende sa piho nga kahimtang, kahanas sa team ug badyet. Pananglitan, ang pagbalhin sa usa ka bodega sa datos sa Oracle sa AWS ug paghimo usa ka lawa sa datos sa usa ka subsidiary sa Amazon - Woot - Ang among istorya sa data lake: Giunsa paghimo sa Woot.com ang usa ka serverless data lake sa AWS.

Sa laing bahin, ang vendor nga Snowflake nag-ingon nga dili na nimo kinahanglan nga maghunahuna bahin sa usa ka data lake, tungod kay ang ilang data platform (hangtod sa 2020 kini usa ka data warehouse) nagtugot kanimo sa paghiusa sa usa ka data lake ug usa ka data warehouse. Wala kaayo ko nagtrabaho sa Snowflake, ug kini usa ka talagsaon nga produkto nga makahimo niini. Ang presyo sa isyu mao ang lain nga butang.

Sa konklusyon, ang akong personal nga opinyon mao nga kinahanglan pa namon ang usa ka bodega sa datos ingon ang panguna nga gigikanan sa datos alang sa among pagreport, ug bisan unsa nga dili angay among gitipigan sa usa ka lawa sa datos. Ang tibuuk nga tahas sa analytics mao ang paghatag dali nga pag-access sa negosyo aron makahimo mga desisyon. Bisan unsa ang isulti sa usa, ang mga tiggamit sa negosyo nagtrabaho nga mas episyente sa usa ka data warehouse kaysa usa ka data lake, pananglitan sa Amazon - adunay Redshift (analytical data warehouse) ug adunay Redshift Spectrum/Athena (SQL interface alang sa usa ka data lake sa S3 base sa Hive/Presto). Ang sama nga magamit sa ubang mga modernong analytical data bodega.

Atong tan-awon ang usa ka tipikal nga arkitektura sa bodega sa datos:

Nagkinahanglan ba kita og data lake? Unsa ang buhaton sa data warehouse?

Kini usa ka klasiko nga solusyon. Kami adunay mga sistema sa gigikanan, gamit ang ETL / ELT gikopya namon ang datos sa usa ka analytical data warehouse ug gikonektar kini sa usa ka solusyon sa Business Intelligence (ang akong paborito mao ang Tableau, unsa man ang imo?).

Kini nga solusyon adunay mga mosunod nga mga disbentaha:

  • Ang mga operasyon sa ETL/ELT nanginahanglan oras ug kahinguhaan.
  • Ingon sa usa ka lagda, ang panumduman alang sa pagtipig sa datos sa usa ka analytical data warehouse dili barato (pananglitan, Redshift, BigQuery, Teradata), tungod kay kinahanglan kitang mopalit og tibuok cluster.
  • Ang mga tiggamit sa negosyo adunay access sa gilimpyohan ug kanunay nga giipon nga datos ug walay access sa hilaw nga datos.

Siyempre, kini tanan nagdepende sa imong kaso. Kung wala ka'y ​​​​problema sa imong data warehouse, nan dili nimo kinahanglan ang data lake. Apan kung adunay mga problema nga adunay kakulang sa wanang, gahum, o presyo adunay hinungdan nga papel, mahimo nimong hunahunaon ang kapilian sa usa ka data lake. Mao kini ang hinungdan nga ang data lake popular kaayo. Ania ang usa ka pananglitan sa usa ka arkitektura sa data lake:
Nagkinahanglan ba kita og data lake? Unsa ang buhaton sa data warehouse?
Gamit ang pamaagi sa data lake, among gikarga ang hilaw nga datos sa among data lake (batch o streaming), dayon among giproseso ang datos kung gikinahanglan. Ang data lake nagtugot sa mga tiggamit sa negosyo sa paghimo sa ilang kaugalingon nga mga pagbag-o sa datos (ETL/ELT) o pag-analisar sa datos sa mga solusyon sa Business Intelligence (kung ang gikinahanglan nga drayber anaa).

Ang katuyoan sa bisan unsang solusyon sa analytics mao ang pagserbisyo sa mga tiggamit sa negosyo. Busa, kinahanglan nga kanunay kitang magtrabaho sumala sa mga kinahanglanon sa negosyo. (Sa Amazon kini usa sa mga prinsipyo - nagtrabaho paatras).

Ang pagtrabaho kauban ang usa ka data warehouse ug usa ka data lake, mahimo naton itandi ang duha nga mga solusyon:

Nagkinahanglan ba kita og data lake? Unsa ang buhaton sa data warehouse?

Ang panguna nga konklusyon nga mahimo’g makuha mao nga ang data warehouse dili makigkompetensya sa data lake, apan gidugangan kini. Apan naa ra kanimo ang pagdesisyon kung unsa ang angay sa imong kaso. Kanunay nga makapaikag nga sulayan kini sa imong kaugalingon ug paghimo sa husto nga mga konklusyon.

Gusto usab nako isulti kanimo ang usa sa mga kaso sa dihang nagsugod ako sa paggamit sa pamaagi sa data lake. Ang tanan gamay ra, gisulayan nako nga mogamit usa ka ELT nga himan (kami adunay Matillion ETL) ug Amazon Redshift, ang akong solusyon nagtrabaho, apan wala mohaum sa mga kinahanglanon.

Kinahanglan nakong kuhaon ang mga web log, usbon kini ug i-aggregate kini aron makahatag og datos alang sa 2 ka kaso:

  1. Gusto sa marketing team nga analisahon ang kalihokan sa bot para sa SEO
  2. Gusto sa IT nga tan-awon ang mga sukatan sa performance sa website

Yano kaayo, yano kaayo nga mga troso. Ania ang usa ka pananglitan:

https 2018-07-02T22:23:00.186641Z app/my-loadbalancer/50dc6c495c0c9188 
192.168.131.39:2817 10.0.0.1:80 0.086 0.048 0.037 200 200 0 57 
"GET https://www.example.com:443/ HTTP/1.1" "curl/7.46.0" ECDHE-RSA-AES128-GCM-SHA256 TLSv1.2 
arn:aws:elasticloadbalancing:us-east-2:123456789012:targetgroup/my-targets/73e2d6bc24d8a067
"Root=1-58337281-1d84f3d73c47ec4e58577259" "www.example.com" "arn:aws:acm:us-east-2:123456789012:certificate/12345678-1234-1234-1234-123456789012"
1 2018-07-02T22:22:48.364000Z "authenticate,forward" "-" "-"

Ang usa ka file mitimbang og 1-4 megabytes.

Apan adunay usa ka kalisud. Kami adunay 7 ka domain sa tibuok kalibutan, ug 7000 ka libo nga mga file ang gihimo sa usa ka adlaw. Dili kini daghan nga gidaghanon, 50 gigabytes lamang. Apan ang gidak-on sa among Redshift cluster gamay ra usab (4 node). Ang pagkarga sa usa ka file sa tradisyonal nga paagi mikabat ug usa ka minuto. Sa ato pa, wala masulbad ang problema. Ug kini ang nahitabo sa dihang nakahukom ko nga gamiton ang pamaagi sa data lake. Ang solusyon morag sama niini:

Nagkinahanglan ba kita og data lake? Unsa ang buhaton sa data warehouse?

Kini yano ra (gusto nakong timan-an nga ang bentaha sa pagtrabaho sa panganod kay kayano). Gigamit nako:

  • AWS Elastic Map Reduce (Hadoop) para sa Compute Power
  • AWS S3 isip file storage nga adunay abilidad sa pag-encrypt sa datos ug limitahan ang pag-access
  • Spark isip InMemory computing power ug PySpark para sa logic ug data transformation
  • Parquet isip resulta sa Spark
  • Ang AWS Glue Crawler isip tigkolekta sa metadata bahin sa bag-ong datos ug partisyon
  • Ang Redshift Spectrum isip usa ka interface sa SQL sa data lake alang sa kasamtangan nga mga tiggamit sa Redshift

Ang pinakagamay nga EMR+Spark cluster nagproseso sa tibuok stack sa mga file sulod sa 30 minutos. Adunay uban pang mga kaso alang sa AWS, labi na ang daghang may kalabutan sa Alexa, diin adunay daghang mga datos.

Bag-o lang nahibal-an nako ang usa sa mga disbentaha sa usa ka data lake mao ang GDPR. Ang problema mao nga kung ang kliyente mihangyo nga papason kini ug ang datos naa sa usa sa mga file, dili kami makagamit sa Data Manipulation Language ug DELETE nga operasyon sama sa usa ka database.

Nanghinaut ko nga kini nga artikulo nagpatin-aw sa kalainan tali sa usa ka data warehouse ug usa ka data lake. Kung interesado ka, mahimo nakong hubaron ang daghang mga artikulo o artikulo sa mga propesyonal nga akong nabasa. Ug isulti usab ang bahin sa mga solusyon nga akong gitrabahoan ug ang ilang arkitektura.

Source: www.habr.com

Idugang sa usa ka comment