Size: a a a

2019 July 30

K

KrivdaTheTriewe in Data Engineers
Anton Zadorozhniy
а тесты для чего?)
А как вы кейс покроете, что начали добавлять новое поле в орк формате , а схему не обновили
источник

YG

Yuriy Gavrilov in Data Engineers
✌️
источник

AZ

Anton Zadorozhniy in Data Engineers
KrivdaTheTriewe
А как вы кейс покроете, что начали добавлять новое поле в орк формате , а схему не обновили
вообще лучше всего работает бранч бай абстракшен (новая таблица), но добавление поля  - это явная фича, и должен быть аксептанс тест который в конце вычитывает данные из новой версии таблицы
источник

K

KrivdaTheTriewe in Data Engineers
Просто со статическим ddl это все похоже скорее на работу работаем , все ровно , но как то фундаментально это проблему не решает, с Джобой все понятно , она детерминирована , у неё есть вход и выход при конфиге и есть вся инфа от метаданных в момент исполнения
источник

K

KrivdaTheTriewe in Data Engineers
Anton Zadorozhniy
вообще лучше всего работает бранч бай абстракшен (новая таблица), но добавление поля  - это явная фича, и должен быть аксептанс тест который в конце вычитывает данные из новой версии таблицы
Но и без явного ddl можно так , явный ddl это всегда человеческий фактор,который в случае работы спарка просто дублирует неудачно функционал
источник

AZ

Anton Zadorozhniy in Data Engineers
KrivdaTheTriewe
Но и без явного ddl можно так , явный ddl это всегда человеческий фактор,который в случае работы спарка просто дублирует неудачно функционал
да, можно без ДДЛ, но если нам явно нужен ДДЛ - то нужно ждать выполнения джоба и тогда он появится, то есть это не объект поставки, а результат работы в рантайме
источник

AZ

Anton Zadorozhniy in Data Engineers
в принципе можно вообще без хайва, для узких задачи и небольших систем это работает, я вроде тут рассказывал про такой кейс
источник

K

KrivdaTheTriewe in Data Engineers
Anton Zadorozhniy
да, можно без ДДЛ, но если нам явно нужен ДДЛ - то нужно ждать выполнения джоба и тогда он появится, то есть это не объект поставки, а результат работы в рантайме
Ну смотрите как получается вы берете инструмент Спарк , делаете на нем расчёт агрегата сложный , потом условно  уже делаете руками ddl схему, первое, можно сильно ошибиться с типами числовыми условно в ddl, nullable и миллион причин почему схема не соответствует данным ,  и опять же вы результат теста получаете в регтайме, может тогда перед каждым деплоем просто делать show() по датафрейму?
источник

K

KrivdaTheTriewe in Data Engineers
И сохранять тогда его куда , честнее бы к данным было )
источник

AZ

Anton Zadorozhniy in Data Engineers
я не говорю что такой подход нежизненноспособен, но на мой архитекторский вкус тут есть расхождение между тем что обеспечивает такой артефакт, и что мы выставляем как сервис нашим пользователям.. к слову у сатанистов так много и устроено, но мы говорим про хранилищную часть даталейка, которая является объектом гарантий.. в этом смысле необходимость для разработчика думать о модели данных датапродукта не как просто df.write, а именно в терминах DDL добавляет понимания работы,и  качества, ну и как я сказал нам нужен DDL, и мы его еще пишем в определенном формате потому что он идет в каталог и также мы его применяем на других сайтах куда у нас реплицируются данные средствами HDFS
источник

AZ

Anton Zadorozhniy in Data Engineers
извините что так длинно
источник

VS

Vladislav 👻 Shishkov in Data Engineers
и тут порвали шаблон кривды...
источник

VS

Vladislav 👻 Shishkov in Data Engineers
источник

AZ

Anton Zadorozhniy in Data Engineers
меня тут попросили статейку на русском написать, я думал про инженерный подход к качеству данных в даталейке, но вот нормальная идея расписать такой развесистый деплоймент
источник

ПФ

Паша Финкельштейн in Data Engineers
Vladislav 👻 Shishkov
и тут порвали шаблон кривды...
ахаха
источник

ПФ

Паша Финкельштейн in Data Engineers
Ну конечно я не мог один знать об этом чатике
источник

K

KrivdaTheTriewe in Data Engineers
Anton Zadorozhniy
я не говорю что такой подход нежизненноспособен, но на мой архитекторский вкус тут есть расхождение между тем что обеспечивает такой артефакт, и что мы выставляем как сервис нашим пользователям.. к слову у сатанистов так много и устроено, но мы говорим про хранилищную часть даталейка, которая является объектом гарантий.. в этом смысле необходимость для разработчика думать о модели данных датапродукта не как просто df.write, а именно в терминах DDL добавляет понимания работы,и  качества, ну и как я сказал нам нужен DDL, и мы его еще пишем в определенном формате потому что он идет в каталог и также мы его применяем на других сайтах куда у нас реплицируются данные средствами HDFS
в том то и дело, что подобный артефакт дает большие гарантии нежели руками написанный ddl, потому что программный подход  добавляет как раз таки понимания и покрываемостью тестами,просто потому что это код и, как я уже говорил,метаданные соотвествуют данным , как минимум в рантайме( а значит в тестах).  
И нет никакого отказа от гарантий, просто потому что нет разрыва того между тем, что именно считает джоба и что она отображает( а явно написанный ddl здесь  лишь  ручной труд и человеческий фактор)
источник

DM

Daniel Matveev in Data Engineers
KrivdaTheTriewe
в том то и дело, что подобный артефакт дает большие гарантии нежели руками написанный ddl, потому что программный подход  добавляет как раз таки понимания и покрываемостью тестами,просто потому что это код и, как я уже говорил,метаданные соотвествуют данным , как минимум в рантайме( а значит в тестах).  
И нет никакого отказа от гарантий, просто потому что нет разрыва того между тем, что именно считает джоба и что она отображает( а явно написанный ddl здесь  лишь  ручной труд и человеческий фактор)
пользователям искать схемы данных по проектам в гите?
источник

ПФ

Паша Финкельштейн in Data Engineers
KrivdaTheTriewe
в том то и дело, что подобный артефакт дает большие гарантии нежели руками написанный ddl, потому что программный подход  добавляет как раз таки понимания и покрываемостью тестами,просто потому что это код и, как я уже говорил,метаданные соотвествуют данным , как минимум в рантайме( а значит в тестах).  
И нет никакого отказа от гарантий, просто потому что нет разрыва того между тем, что именно считает джоба и что она отображает( а явно написанный ddl здесь  лишь  ручной труд и человеческий фактор)
Я бы предпочёл чтобы джоба сломалась если она пытается писать что-то, не заданное руками в DDL
источник

ПФ

Паша Финкельштейн in Data Engineers
олсо
источник