Оё ба мо кӯли маълумот лозим аст? Бо анбори додаҳо чӣ бояд кард?

Ин мақола тарҷумаи мақолаи ман дар миёна аст - Оғози кор бо Data Lake, ки хеле маъмул шуд, шояд аз сабаби соддагии он. Аз ин рӯ, ман қарор додам, ки онро ба забони русӣ нависам ва каме илова кунам, то ба шахси оддӣ, ки мутахассиси маълумот нест, фаҳмонад, ки анбори додаҳо (DW) чист ва кӯли додаҳо (Data Lake) чист ва онҳо чӣ гуна якҷоя шавед.

Чаро ман мехостам дар бораи кӯли маълумот нависам? Ман зиёда аз 10 сол бо додаҳо ва таҳлилҳо кор мекунам ва ҳоло ман бешубҳа бо маълумоти калон дар Amazon Alexa AI дар Кембриҷ, ки дар Бостон ҷойгир аст, кор мекунам, гарчанде ки ман дар Виктория дар ҷазираи Ванкувер зиндагӣ мекунам ва аксар вақт ба Бостон, Сиэтл ташриф меорам. , ва дар Ванкувер ва баъзан хатто дар Москва дар конференцияхо баромад мекунам. Ман ҳам гоҳ-гоҳ менависам, вале асосан бо забони англисӣ менависам ва аллакай навиштаам баъзе китобҳо, Ман инчунин ниёз дорам, ки тамоюлҳои таҳлилиро аз Амрикои Шимолӣ мубодила кунам ва ман баъзан дар он менависам телеграмма.

Ман ҳамеша бо анборҳои додаҳо кор мекардам ва аз соли 2015 ман бо Amazon Web Services зич кор карданро сар кардам ва умуман ба таҳлили абрӣ (AWS, Azure, GCP) гузаштам. Ман таҳаввулоти қарорҳои таҳлилиро аз соли 2007 мушоҳида кардам ва ҳатто барои фурӯшандаи анбори додаҳо Teradata кор кардам ва онро дар Сбербанк татбиқ кардам ва маҳз он вақт Big Data бо Hadoop пайдо шуд. Ҳама ба мегӯянд, ки давраи нигаҳдорӣ гузашт ва ҳоло ҳама чиз дар Hadoop буд ва сипас онҳо дар бораи Лейк Дата гап заданро сар карданд, ки ҳоло охири анбори додаҳо бешубҳа фаро расидааст. Аммо хушбахтона (шояд мутаассифона барои баъзеҳо, ки аз таъсиси Hadoop пули зиёд ба даст оварданд), анбори додаҳо аз байн нарафт.

Дар ин мақола мо дида мебароем, ки кӯли маълумот чист. Ин мақола барои одамоне пешбинӣ шудааст, ки бо анборҳои додаҳо таҷрибаи кам ё тамоман надоранд.

Оё ба мо кӯли маълумот лозим аст? Бо анбори додаҳо чӣ бояд кард?

Дар расм кӯли Блед аст, ки ин яке аз кӯлҳои дӯстдоштаи ман аст, гарчанде ки ман танҳо як маротиба дар он ҷо будам, то охири умр онро дар ёд доштам. Аммо мо дар бораи намуди дигари кӯл - кӯли додаҳо сӯҳбат хоҳем кард. Шояд бисёре аз шумо дар бораи ин истилоҳ беш аз як маротиба шунидаед, аммо як таърифи дигар ба касе зарар нарасонад.

Пеш аз ҳама, инҳо таърифҳои маъмултарини кӯли маълумот мебошанд:

"Нигоҳдории файли ҳама намуди маълумоти хом, ки барои таҳлил аз ҷониби касе дар созмон дастрас аст" - Мартин Фаулер.

"Агар шумо фикр кунед, ки datamart як шиша об аст - тозашуда, бастабандӣ ва бастабандишуда барои истеъмоли қулай, пас кӯли додашуда як обанбори бузурги об дар шакли табиии худ аст. Истифодабарандагон, ман метавонам барои худам об ҷамъ кунам, чуқур ғарқ шавам, кашф кунам" - Ҷеймс Диксон.

Ҳоло мо аниқ медонем, ки кӯли додаҳо дар бораи таҳлил аст, он ба мо имкон медиҳад, ки миқдори зиёди маълумотро дар шакли аслии худ нигоҳ дорем ва мо дастрасии зарурӣ ва қулай ба маълумот дорем.

Ман аксар вақт содда кардани чизҳоро дӯст медорам, агар ман як истилоҳи мураккабро бо суханони оддӣ шарҳ дода тавонам, пас ман худам мефаҳмам, ки он чӣ гуна кор мекунад ва барои чӣ лозим аст. Рӯзе ман дар галереяи аксҳои iPhone сайру гашт мекардам ва ба ман фаҳмид, ки ин кӯли воқеии додаҳост, ман ҳатто барои конфронсҳо слайд сохтам:

Оё ба мо кӯли маълумот лозим аст? Бо анбори додаҳо чӣ бояд кард?

Ҳама чиз хеле оддӣ аст. Мо дар телефон акс мегирем, акс дар телефон захира карда мешавад ва онро дар iCloud захира кардан мумкин аст (захираи файли абрӣ). Телефон инчунин метамаълумоти аксҳоро ҷамъ мекунад: он чизе, ки нишон дода шудааст, теги гео, вақт. Дар натиҷа, мо метавонем интерфейси истифодабарандаи iPhone-ро барои пайдо кардани акси худ истифода барем ва ҳатто нишондиҳандаҳоро мебинем, масалан, вақте ки ман аксҳоро бо калимаи оташ ҷустуҷӯ мекунам, ман 3 аксро бо тасвири оташ меёбам. Барои ман, ин ба як абзори Business Intelligence монанд аст, ки хеле зуд ва возеҳ кор мекунад.

Ва албатта, мо набояд дар бораи амният (авторизатсия ва аутентификатсия) фаромӯш накунем, вагарна маълумоти мо метавонад ба осонӣ дар домени ҷамъиятӣ хотима ёбад. Дар бораи корпоратсияҳо ва стартапҳои калон, ки маълумоташон аз сабаби хунукназарии таҳиягарон ва риоя накардани қоидаҳои оддӣ дастраси омма гаштааст, хабарҳои зиёде мавҷуданд.

Ҳатто чунин тасвири оддӣ ба мо кӯмак мекунад, ки тасаввур кунем, ки кӯли маълумот, фарқияти он аз анбори анъанавии додаҳо ва унсурҳои асосии он:

  1. Боркунии маълумот (Гурӯҳ) ҷузъи асосии кӯли додаҳо мебошад. Маълумот метавонад ба анбори додаҳо бо ду роҳ ворид шавад - партия (боркунии фосилавӣ) ва ҷараён (ҷараёни додаҳо).
  2. Нигоҳдории файл (Нигоҳдорӣ) ҷузъи асосии кӯли додаҳо мебошад. Ба мо лозим буд, ки нигоҳдорӣ ба осонӣ миқёспазир, хеле боэътимод ва арзиши паст бошад. Масалан, дар AWS он S3 аст.
  3. Каталог ва Ҷустуҷӯ (Каталог ва Ҷустуҷӯ) - барои он ки мо аз ботлоқи додаҳо канорагирӣ кунем (ин вақте ки мо ҳама маълумотро дар як чӯб мепартоем ва пас бо он кор кардан ғайриимкон аст), ба мо лозим аст, ки қабати метамаълумотро барои тасниф кардани маълумот эҷод кунем. то ки корбарон маълумотеро, ки барои таҳлил заруранд, ба осонӣ пайдо кунанд. Илова бар ин, шумо метавонед ҳалли иловагии ҷустуҷӯро ба монанди ElasticSearch истифода баред. Ҷустуҷӯ ба корбар дар ёфтани маълумоти зарурӣ тавассути интерфейси дӯстона кӯмак мекунад.
  4. Коркард (Раванд) - ин қадам барои коркард ва табдил додани маълумот масъул аст. Мо метавонем маълумотро тағир диҳем, сохтори онро тағир диҳем, тоза кунем ва ғайра.
  5. Амният (Амният) - Муҳим аст, ки вақтро барои тарҳрезии амнияти ҳалли масъала сарф кунед. Масалан, рамзгузории маълумот ҳангоми нигоҳдорӣ, коркард ва боркунӣ. Истифодаи усулҳои аутентификатсия ва авторизатсия муҳим аст. Ниҳоят, як воситаи аудит лозим аст.

Аз нуқтаи назари амалӣ, мо метавонем кӯли маълумотро бо се хусусият тавсиф кунем:

  1. Ҳама чизро ҷамъ кунед ва захира кунед — кӯли додаҳо ҳама маълумотро дар бар мегирад, ҳам маълумоти коркарднашуда барои ҳар давраи вақт ва ҳам маълумоти коркардшуда/тозашуда.
  2. Сканкунии амиқ — кӯли маълумот ба корбарон имкон медиҳад, ки маълумотро таҳқиқ ва таҳлил кунанд.
  3. Дастрасии чандир — Кӯли додаҳо дастрасии чандирро барои додаҳои гуногун ва сенарияҳои гуногун фароҳам меорад.

Ҳоло мо метавонем дар бораи фарқи байни анбори додаҳо ва кӯли додаҳо сӯҳбат кунем. Одатан одамон мепурсанд:

  • Дар бораи анбори додаҳо чӣ гуфтан мумкин аст?
  • Оё мо анбори додаҳоро бо кӯли додаҳо иваз мекунем ё онро васеъ мекунем?
  • Оё ҳоло ҳам бе кӯли маълумот кор кардан мумкин аст?

Хулоса, ҷавоби равшан нест. Хамааш ба вазъияти конкретй, махорати коллектив ва маблаг вобаста аст. Масалан, интиқол додани анбори додаҳо ба Oracle ба AWS ва эҷоди кӯли додаҳо аз ҷониби як фаръии Amazon - Woot - Ҳикояи кӯли додаҳои мо: Чӣ тавр Woot.com дар AWS кӯли бе сервери маълумотро сохт.

Аз тарафи дигар, фурӯшанда Snowflake мегӯяд, ки ба шумо дигар лозим нест, ки дар бораи кӯли додаҳо фикр кунед, зеро платформаи додаҳои онҳо (то соли 2020 он анбори додаҳо буд) ба шумо имкон медиҳад, ки ҳам кӯли додаҳо ва ҳам анбори додаҳоро муттаҳид кунед. Ман бо Snowflake чандон кор накардаам ва он воқеан як маҳсулоти беназирест, ки ин корро карда метавонад. Нархи масъала масъалаи дигар аст.

Хулоса, андешаи шахсии ман ин аст, ки мо то ҳол ба анбори додаҳо ҳамчун манбаи асосии маълумот барои гузориши мо ниёз дорем ва он чизе ки мувофиқ набошад, мо дар кӯли додаҳо нигоҳ медорем. Тамоми нақши таҳлил аз он иборат аст, ки дастрасии осон ба тиҷорат барои қабули қарорҳо таъмин карда шавад. Ҳар чӣ гуфтан мумкин аст, корбарони тиҷоратӣ бо анбори додаҳо нисбат ба кӯли додаҳо самараноктар кор мекунанд, масалан дар Amazon - Redshift (анбори додаҳои таҳлилӣ) вуҷуд дорад ва Redshift Spectrum/Athena (интерфейси SQL барои кӯли додаҳо дар S3 дар асоси Hive/Presto). Ин ба дигар анборҳои маълумоти таҳлилии муосир низ дахл дорад.

Биёед меъмории маъмулии анбори додаҳоро бубинем:

Оё ба мо кӯли маълумот лозим аст? Бо анбори додаҳо чӣ бояд кард?

Ин як ҳалли классикӣ аст. Мо системаҳои сарчашма дорем, бо истифода аз ETL/ELT мо маълумотро ба анбори додаҳои таҳлилӣ нусхабардорӣ мекунем ва онро ба ҳалли Business Intelligence пайваст мекунем (дӯстдоштаи ман Tableau аст, дар бораи шумо чӣ гуфтан мумкин аст?).

Ин ҳалли камбудиҳои зерин дорад:

  • Амалиётҳои ETL/ELT вақт ва захираҳоро талаб мекунанд.
  • Чун қоида, хотира барои нигоҳ доштани маълумот дар анбори додаҳои таҳлилӣ арзон нест (масалан, Redshift, BigQuery, Teradata), зеро мо бояд тамоми кластерро харем.
  • Истифодабарандагони тиҷорат ба маълумоти тозашуда ва аксаран ҷамъшуда дастрасӣ доранд ва ба маълумоти хом дастрасӣ надоранд.

Албатта, ҳамааш аз ҳолати шумо вобаста аст. Агар шумо бо анбори додаҳои худ мушкилот надошта бошед, ба шумо умуман кӯли додаҳо лозим нест. Аммо вақте ки мушкилот бо нарасидани ҷой, қудрат ё нарх нақши калидӣ доранд, шумо метавонед интихоби кӯли маълумотро баррасӣ кунед. Ин аст, ки чаро кӯли маълумот хеле маъмул аст. Ин аст як мисоли меъмории кӯли додаҳо:
Оё ба мо кӯли маълумот лозим аст? Бо анбори додаҳо чӣ бояд кард?
Бо истифода аз равиши кӯли додаҳо, мо маълумоти хомро ба кӯли додаҳои худ бор мекунем (маҷмӯа ё ҷараён), пас мо маълумотро дар ҳолати зарурӣ коркард мекунем. Кӯли додаҳо ба корбарони тиҷорат имкон медиҳад, ки тағироти додаҳои худро (ETL/ELT) эҷод кунанд ё маълумотро дар ҳалли Business Intelligence таҳлил кунанд (агар драйвери зарурӣ мавҷуд бошад).

Ҳадафи ҳама гуна ҳалли таҳлилӣ хидматрасонӣ ба корбарони тиҷорат аст. Аз ин рӯ, мо бояд ҳамеша аз рӯи талаботи тиҷорат кор кунем. (Дар Amazon ин яке аз принсипҳост - ба ақиб кор кардан).

Ҳам бо анбори додаҳо ва ҳам кӯли додаҳо кор карда, мо метавонем ҳарду ҳалли худро муқоиса кунем:

Оё ба мо кӯли маълумот лозим аст? Бо анбори додаҳо чӣ бояд кард?

Хулосаи асосие, ки метавон баровардан мумкин аст, ин аст, ки анбори додаҳо бо кӯли додаҳо рақобат намекунад, балки онро пурра мекунад. Аммо он ба шумо вобаста аст, ки барои парвандаи шумо чӣ мувофиқ аст. Ҳамеша ҷолиб аст, ки онро худатон санҷед ва хулосаҳои дуруст бароред.

Ман инчунин мехоҳам ба шумо яке аз ҳолатҳоеро нақл кунам, ки ман ба истифодаи равиши кӯли дата оғоз кардам. Ҳама чиз хеле ночиз аст, ман кӯшиш кардам, ки асбоби ELT (мо Matillion ETL доштем) ва Amazon Redshift-ро истифода барам, ҳалли ман кор кард, аммо ба талабот мувофиқат намекард.

Ба ман лозим буд, ки гузоришҳои вебро гирам, онҳоро табдил диҳам ва онҳоро ҷамъ кунам, то барои 2 ҳолат маълумот пешниҳод кунам:

  1. Гурӯҳи маркетинг мехост, ки фаъолияти ботро барои SEO таҳлил кунад
  2. IT мехост, ки ба ченакҳои иҷрои вебсайт назар кунад

Сабтҳои хеле оддӣ, хеле оддӣ. Инак як мисол:

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" "-" "-"

Як файл 1-4 мегабайт вазн дошт.

Аммо як душворӣ вуҷуд дошт. Мо дар саросари ҷаҳон 7 домен доштем ва дар як рӯз 7000 50 ҳазор файл сохта шуд. Ин ҳаҷми он қадар зиёд нест, ҳамагӣ 4 гигабайт. Аммо андозаи кластери Redshift мо низ хурд буд (XNUMX гиреҳ). Боркунии як файл бо усули анъанавӣ тақрибан як дақиқа вақтро гирифт. Яъне, масъала сар-сарй хал нашудааст. Ва ин вақте буд, ки ман қарор додам, ки усули кӯли маълумотро истифода барам. Ҳалли чунин ба назар чунин менамуд:

Оё ба мо кӯли маълумот лозим аст? Бо анбори додаҳо чӣ бояд кард?

Ин хеле содда аст (ман мехоҳам қайд намоям, ки бартарии кор дар абр содда аст). Ман истифода кардам:

  • AWS Elastic Map Reduce (Hadoop) барои Compute Power
  • AWS S3 ҳамчун нигаҳдории файл бо қобилияти рамзгузории маълумот ва маҳдуд кардани дастрасӣ
  • Spark ҳамчун қудрати компютерии InMemory ва PySpark барои мантиқ ва табдили додаҳо
  • Паркет дар натиҷаи Spark
  • AWS Glue Crawler ҳамчун коллектори метамаълумот дар бораи додаҳо ва қисмҳои нав
  • Redshift Spectrum ҳамчун интерфейси SQL ба кӯли додаҳо барои корбарони мавҷудаи Redshift

Хурдтарин кластери EMR+Spark тамоми стек файлҳоро дар 30 дақиқа коркард кард. Ҳодисаҳои дигар барои AWS вуҷуд доранд, алахусус бисёриҳо бо Alexa алоқаманданд, ки дар он маълумоти зиёде мавҷуданд.

Ба наздикӣ ман фаҳмидам, ки яке аз нуқсонҳои кӯли маълумот GDPR аст. Мушкилот дар он аст, ки вақте муштарӣ хоҳиш мекунад, ки онро нест кунад ва маълумот дар яке аз файлҳо бошад, мо наметавонем забони коркарди маълумот ва амалиёти DELETE-ро мисли дар пойгоҳи додаҳо истифода барем.

Умедворам, ки ин мақола фарқи байни анбори додаҳо ва кӯли додаҳоро равшан кардааст. Агар таваҷҷуҳ дошта бошед, ман метавонам бештари мақолаҳои худ ё мақолаҳои мутахассисони мутолиакардаамро тарҷума кунам. Ва инчунин дар бораи қарорҳое, ки ман бо онҳо кор мекунам ва меъмории онҳо нақл кунед.

Манбаъ: will.com

Илова Эзоҳ