Навукоўцы па дадзеных і спецыялісты па машынным навучанні маюць справу са значнай колькасцю дадзеных розных тыпаў у тыповым праекце навукі аб дадзеных. Было распрацавана мноства мадэляў з рознымі канфігурацыямі і асаблівасцямі, а таксама некалькі ітэрацый налады параметраў для атрымання аптымальнай прадукцыйнасці.
У такім сцэнары ўсе мадыфікацыі дадзеных і карэкціроўкі працэсу пабудовы мадэлі павінны кантралявацца і вымярацца, каб вызначыць, што спрацавала, а што не. Таксама вельмі важна мець магчымасць вярнуцца да папярэдняга выдання і паглядзець на папярэднія вынікі.
Кантроль версій даных (DVC), які дапамагае кіраваць дадзенымі, базавай мадэллю і запускаць узнаўляльныя вынікі, з'яўляецца адной з такіх тэхналогій, якая дазваляе нам кантраляваць усё гэта.
У гэтай публікацыі мы ўважліва разгледзім кантроль версій даных і лепшыя інструменты для выкарыстання. Давайце пачнем.
Што такое кантроль версій дадзеных?
Версія патрабуецца для ўсіх вытворчых сістэм. Адзіная кропка доступу да самых актуальных даных. Любы рэсурс, які часта мадыфікуецца, асабліва некалькімі карыстальнікамі адначасова, патрабуе стварэння аўдытарскага следу для адсочвання ўсіх змяненняў.
Сістэма кантролю версій адказвае за тое, каб усе члены каманды былі на адной старонцы. Гэта гарантуе, што кожны ў камандзе працуе над самай апошняй версіяй файла і, што больш важна, што кожны адначасова працуе над адным праектам.
Калі ў вас ёсць адпаведнае абсталяванне, вы можаце зрабіць гэта з мінімальнымі намаганнямі!
У вас будуць паслядоўныя наборы даных і поўны архіў усіх вашых даследаванняў, калі вы выкарыстоўваеце надзейную стратэгію кіравання версіямі даных. Інструменты кіравання версіямі даных вельмі важныя для вашага працоўнага працэсу, калі вы клапоціцеся пра ўзнаўляльнасць, адсочванне і гісторыю мадэляў ML.
Яны дапамагаюць вам атрымаць версію элемента, напрыклад, хэш набору даных або мадэлі, які потым можна выкарыстоўваць для ідэнтыфікацыі і параўнання. Гэтая версія даных часта ўводзіцца ў ваша рашэнне для кіравання метададзенымі, каб гарантаваць, што навучанне вашай мадэлі мае версіі і паўтараецца.
Лепшыя інструменты кантролю версій даных
Цяпер прыйшоў час паглядзець на найлепшыя даступныя рашэнні для кантролю версій даных, якія можна выкарыстоўваць для адсочвання кожнай часткі вашага кода.
1. git-lfs
Карыстацца праектам Git LFS можна бясплатна. У Git вялікія файлы, такія як аўдыё ўзоры, відэа, базы дадзеных і фатаграфіі, замяняюцца тэкставымі паказальнікамі, а змесціва файла захоўваецца на аддаленым серверы, такім як GitHub.com або GitHub Enterprise.
Гэта дазваляе выкарыстоўваць Git для стварэння версій велізарных файлаў — памерам да некалькіх ГБ — размяшчаць больш у вашых сховішчах Git з выкарыстаннем знешніх назапашвальнікаў, а таксама хутчэй кланаваць і атрымліваць вялікія сховішчы файлаў. Калі справа даходзіць да кіравання дадзенымі, гэта даволі лёгкае рашэнне. Для працы з Git вам не патрэбныя дадатковыя каманды, сістэмы захоўвання дадзеных або наборы інструментаў.
Гэта абмяжоўвае колькасць загружанай вамі інфармацыі. Гэта азначае, што кланаванне і выманне вялікіх файлаў са сховішчаў будзе хутчэй. Паказальнікі зроблены з больш лёгкага матэрыялу і паказваюць на LFS.
У выніку, калі вы адпраўляеце сваё РЭПО ў галоўнае сховішча, яно хутка абнаўляецца і займае менш месца.
Прафесіяналы
- Лёгка інтэгруецца ў працоўныя працэсы распрацоўкі большасці кампаній.
- Няма неабходнасці апрацоўваць дадатковыя правы, таму што ён выкарыстоўвае тыя ж дазволы, што і рэпазітар Git.
мінусы
- Git LFS патрабуе выкарыстання выдзеленых сервераў для захоўвання вашых даных. У выніку вашы каманды па апрацоўцы дадзеных будуць замкнёныя, а ваша інжынерная нагрузка ўзрасце.
- Вельмі спецыялізаваны і можа запатрабаваць выкарыстання розных інструментаў для наступных этапаў працоўнага працэсу навукі аб даных.
Цэннiк
Гэта бясплатнае выкарыстанне для ўсіх.
2. LakeFS
LakeFS - гэта рашэнне для кіравання версіямі дадзеных з адкрытым зыходным кодам, якое захоўвае даныя ў S3 або GCS і мае падобную на Git парадыгму разгалінавання і фіксацыі, якая маштабуецца да петабайтаў.
Гэтая стратэгія разгалінавання робіць ваша возера дадзеных сумяшчальным з ACID, дазваляючы адбывацца зменам у розных галінах, якія можна ствараць, аб'ядноўваць і адкатваць атамарна і імгненна.
LakeFS дазваляе камандам ствараць дзеянні возера даных, якія паўтараюцца, атамарныя і з версіямі. Гэта пачатковец на сцэне, але гэта сіла, з якой трэба лічыцца.
Для ўзаемадзеяння з вашым возера дадзеных, з магчымасцю маштабавання да Петабайт дадзеных. У эксабайтным маштабе вы можаце праверыць кантроль версій.
Прафесіяналы
- Git-падобныя аперацыі ўключаюць галінаванне, фіксацыю, аб'яднанне і вяртанне.
- Хукі папярэдняй фіксацыі/зліцця выкарыстоўваюцца для праверкі дадзеных CI/CD.
- Прадастаўляе такія складаныя функцыі, як транзакцыі ACID, для простага воблачнага сховішча, напрыклад S3 і GCS, застаючыся нейтральным да фармату.
- Аднаўленне змяненняў даных у рэжыме рэальнага часу.
- Лёгка маштабуецца, што дазваляе змясціць вельмі вялікія азёры даных. Кантроль версій можа быць забяспечаны як для налад распрацоўкі, так і для вытворчасці.
мінусы
- LakeFS - гэта новы прадукт, таму функцыі і дакументацыя могуць змяняцца хутчэй, чым у папярэдніх рашэннях.
- Паколькі ён арыентаваны на кіраванне версіямі даных, вам трэба будзе выкарыстоўваць мноства дадатковых інструментаў для розных частак працоўнага працэсу навукі аб даных.
Цэннiк
Гэта бясплатнае выкарыстанне для ўсіх.
3. DVC
Кантроль версій дадзеных - гэта бясплатнае рашэнне для кіравання версіямі даных, распрацаванае для прыкладанняў навукі аб даных і машыннага навучання. Гэта праграма, якая дазваляе вам вызначыць канвеер на любой мове.
Дзякуючы кіраванню вялікімі файламі, наборамі даных, мадэлямі машыннага навучання, кодам і гэтак далей, гэты інструмент робіць мадэлі машыннага навучання даступнымі і ўзнаўляльнымі. Праграма прытрымліваецца прыкладу Git, забяспечваючы просты камандны радок, які можна наладзіць усяго за некалькі крокаў.
Як вынікае з назвы, DVC - гэта не толькі кіраванне версіямі даных. Гэта таксама палягчае кіраванне канвеерамі і мадэлямі машыннага навучання для каманд.
Нарэшце, DVC дапаможа палепшыць узгодненасць мадэляў вашай каманды і іх паўтаральнасць. Замест таго, каб выкарыстоўваць складаныя суфіксы файлаў і каментарыі ў кодзе, скарыстайцеся перавагамі Галіны Git паспрабаваць новыя ідэі. Каб падарожнічаць, выкарыстоўвайце аўтаматызаванае адсочванне паказчыкаў замест паперы і алоўка.
Для перадачы паслядоўных пучкоў навучанне з дапамогай машыны мадэляў, даных і кода ў вытворчасць, далёкія кампутары або працоўны стол калегі, вы можаце выкарыстоўваць каманды push/pull замест спецыяльных сцэнарыяў.
Прафесіяналы
- Ён лёгкі, з адкрытым зыходным кодам і працуе з усімі асноўнымі воблачнымі платформамі і відамі сховішчаў.
- Гнуткі, незалежны ад фармату і структуры і просты ў рэалізацыі.
- Усю эвалюцыю кожнай мадэлі ML можна прасачыць да яе зыходнага кода і даных.
мінусы
- Канвеернае кіраванне і кантроль версій DVC непарыўна звязаны. Будзе надмернасць, калі ваша каманда ўжо выкарыстоўвае іншы прадукт канвеера даных.
- Паколькі DVC лёгкі, вашай камандзе можа спатрэбіцца распрацаваць дадатковыя функцыі ўручную, каб зрабіць яго больш зручным.
Цэннiк
Гэта бясплатнае выкарыстанне для ўсіх.
4. Возера Дэльта
DeltaLake - гэта ўзровень захоўвання з адкрытым зыходным кодам, які павышае надзейнасць возера даных. Delta Lake падтрымлівае транзакцыі ACID і маштабаванае кіраванне метададзенымі ў дадатак да струменевай і пакетнай апрацоўкі дадзеных.
Ён працуе з API Apache Spark і знаходзіцца на вашым існуючым возеры даных. Delta Sharing - гэта першы ў свеце адкрыты пратакол для бяспечнага абмену дадзенымі ў бізнесе, які дазваляе лёгка абменьвацца дадзенымі з іншымі кампаніямі незалежна ад іх камп'ютэрных сістэм.
Delta Lakes здольныя з лёгкасцю апрацоўваць петабайты дадзеных. Метададзеныя захоўваюцца гэтак жа, як і дадзеныя, і карыстальнікі могуць атрымаць іх з дапамогай метаду Describe Detail. Delta Lakes мае адзіную архітэктуру, якая можа чытаць як струменевыя, так і пакетныя дадзеныя.
Upserts лёгка зрабіць з дапамогай Delta. Гэтыя змяненні або аб'яднанні ў табліцу Delta параўнальныя з SQL Merges. Вы можаце выкарыстоўваць яго для інтэграцыі даных з іншага кадра даных у табліцу і выканання абнаўленняў, уставак і выдаленняў.
Прафесіяналы
- Многія магчымасці, такія як транзакцыі ACID і надзейнае кіраванне метададзенымі, могуць быць даступныя ў вашым цяперашнім рашэнні для захоўвання даных.
- Цяпер Delta Lake можа лёгка кіраваць табліцамі з мільярдамі раздзелаў і файлаў памерам у петабайт.
- Памяншае патрэбу ў ручным кантролі версій даных і іншыя праблемы з данымі, што дазваляе распрацоўшчыкам засяродзіцца на распрацоўцы прадуктаў на аснове сваіх азёр даных.
мінусы
- Паколькі Delta Lake была распрацавана для працы са Spark і велізарнымі дадзенымі, яна, як правіла, празмерная для большасці задач.
- Гэта патрабуе выкарыстання спецыяльнага фармату даных, што абмяжоўвае яго гнуткасць і робіць яго несумяшчальным з вашымі цяперашнімі формамі.
Цэннiк
Гэта бясплатнае выкарыстанне для ўсіх.
5. Долт
Dolt - гэта база дадзеных SQL, якая робіць разгалінаванне, кланаванне, разгалінаванне, аб'яднанне, праштурхоўванне і выцягванне гэтак жа, як гэта робіць рэпазітар git. Каб палепшыць карыстацкі досвед базы дадзеных кантролю версій, Dolt дазваляе сінхранізаваць дадзеныя і структуру.
Гэта выдатны інструмент для сумеснай працы для вас і вашых калег. Вы можаце падключыцца да Dolt гэтак жа, як і да любой іншай базы дадзеных MySQL, і выконваць запыты або ўносіць змены ў дадзеныя з дапамогай каманд SQL.
Што тычыцца версій дадзеных, Dolt з'яўляецца адзіным у сваім родзе. Dolt з'яўляецца базай дадзеных, у адрозненне ад некаторых іншых рашэнняў, якія проста версія дадзеных. Нягледзячы на тое, што праграмнае забеспячэнне зараз знаходзіцца на ранняй стадыі, ёсць надзеі зрабіць яго цалкам сумяшчальным з Git і MySQL у бліжэйшай будучыні.
Усе каманды, якія вы знаёмыя з Git, таксама будуць працаваць з Dolt. Файлы версій Git, табліцы версій Dolt Выкарыстоўваючы інтэрфейс каманднага радка, імпартуйце файлы CSV, прымайце свае змены, публікуйце іх на выдаленым пульце і аб'ядноўвайце змены, зробленыя вашым таварышам па камандзе.
Прафесіяналы
- Лёгкі і з адкрытым зыходным кодам часткова.
- У параўнанні з больш незразумелымі варыянтамі, ён мае інтэрфейс SQL, што робіць яго больш даступным для аналітыкаў дадзеных.
мінусы
- У параўнанні з іншымі альтэрнатывамі кіравання версіямі базы дадзеных, Dolt усё яшчэ з'яўляецца прадуктам у стадыі распрацоўкі.
- Паколькі Dolt - гэта база дадзеных, вы павінны перанесці ў яе свае даныя, каб атрымаць перавагі.
Цэннiк
Усе жадаючыя могуць скарыстацца сесіяй супольнасці. Платформа не забяспечвае прэміяльныя цэны; замест гэтага вы павінны звязацца з пастаўшчыком.
6. Пахідэрм
Pachyderm - гэта бясплатная сістэма кантролю версій навукі аб дадзеных з вялікай колькасцю функцый. Pachyderm Enterprise - гэта магутная платформа навукі аб дадзеных, прызначаная для шырокамаштабнага супрацоўніцтва ў вельмі бяспечных асяроддзях.
Pachyderm - адна з нямногіх платформаў навукі аб дадзеных у спісе. Мэта Pachyderm - забяспечыць платформу, якая кіруе поўным цыклам даных і дазваляе проста дубляваць высновы мадэляў машыннага навучання. У гэтым кантэксце Pachyderm вядомы як «Docker of Data». Pachyderm пакуе ваша асяроддзе выканання з дапамогай кантэйнераў Docker. Гэта дазваляе лёгка дубляваць аднолькавыя вынікі.
Навукоўцы па апрацоўцы дадзеных і каманды DevOps могуць упэўнена разгортваць мадэлі дзякуючы спалучэнню версійных даных з Docker. Дзякуючы эфектыўнай сістэме захоўвання можна захоўваць петабайты структураваных і неструктураваных даных, а выдаткі на захоўванне зведзены да мінімуму.
На працягу ўсіх этапаў канвеера кіраванне версіямі на аснове файлаў забяспечвае дбайную праверку ўсіх даных і артэфактаў, уключаючы прамежкавыя вынікі. Многія з магчымасцей інструмента абумоўлены гэтымі слупамі, якія дапамагаюць камандам атрымаць ад яго максімальную карысць.
Прафесіяналы
- Заснаваныя на кантэйнерах, вашыя асяроддзя даных будуць партатыўнымі і іх лёгка перадаваць паміж хмарнымі пастаўшчыкамі.
- Надзейная, з магчымасцю маштабавання ад малых да вельмі вялікіх сістэм.
мінусы
- Паколькі існуе так шмат рухомых элементаў, такіх як сервер Kubernetes, неабходных для працы з бясплатнай версіяй Pachyderm, існуе больш крутая крывая навучання.
- Pachyderm можа быць складана ўключыць у існуючую інфраструктуру кампаніі з-за яго шматлікіх тэхналагічных кампанентаў.
Цэннiк
Вы можаце пачаць выкарыстоўваць платформу з сесіі супольнасці, а для карпаратыўнай версіі вам трэба звязацца з пастаўшчыком.
7. Няптун
Метададзеныя для пабудовы мадэлі кіруюцца сховішчам метададзеных ML, якое з'яўляецца важным аспектам стэка MLOps. Для кожнага працоўнага працэсу MLOps Neptune служыць цэнтралізаваным сховішчам метададзеных.
Вы можаце адсочваць, візуалізаваць і параўноўваць тысячы мадэляў машыннага навучання ў адным месцы. Ён уключае такія функцыі, як адсочванне эксперыментаў, рэестр мадэляў і маніторынг мадэляў, а таксама інтэрфейс для сумеснай працы. Яна ўключае ў сябе больш за 25 розных інтэграваных інструментаў і бібліятэк, у тым ліку некалькі інструментаў навучання мадэлям і налады гіперпараметраў.
Вы можаце далучыцца да Neptune без выкарыстання вашай крэдытнай карты. На яго месцы будзе дастаткова ўліковага запісу Gmail.
Прафесіяналы
- Інтэграцыя з любым канвеерам, патокам, кодавай базай або структурай простая.
- Візуалізацыі ў рэжыме рэальнага часу, просты API і хуткая падтрымка
- З дапамогай Neptune вы можаце зрабіць «рэзервовую копію» ўсіх даных вашых эксперыментаў у адным месцы, якую можна аднавіць пазней.
мінусы
- Хаця і не цалкам з адкрытым зыходным кодам, асобная версія, як мяркуецца, будзе дастатковай для прыватнага выкарыстання, хоць такі доступ абмежаваны адным месяцам.
- Ёсць некалькі невялікіх недахопаў дызайну.
Цэннiк
Вы можаце пачаць выкарыстоўваць платформу з індывідуальным планам, якім могуць карыстацца ўсе. Раздзел цэн пачынаецца ад 150 долараў у месяц.
заключэнне
У гэтай публікацыі мы абмеркавалі лепшыя інструменты кіравання версіямі даных. Кожны інструмент, як мы бачылі, мае ўласны набор функцый. Некаторыя з іх былі бясплатнымі, а за іншыя патрабавалася плата. Некаторыя з іх добра падыходзяць для мадэлі малога бізнесу, а іншыя лепш падыходзяць для мадэлі буйнога бізнесу.
Як следства, вы павінны выбраць лепшае праграмнае забеспячэнне для вашых мэтаў пасля ўзважвання пераваг і недахопаў. Мы рэкамендуем вам праверыць бясплатную пробную версію, перш чым набываць прадукт прэміум-класа.
Пакінуць каментар