Size: a a a

Архитектура данных

2021 May 17

e

er@essbase.ru in Архитектура данных
Ну т.е. получается что измерение является основной таблицей а  к ней приплюсовываются фактики?

    Как идея - кинуть это измерение в сциллу или Кассандру и точечно пройтись в цикле по where .
источник

e

er@essbase.ru in Архитектура данных
Конечно так себе идея , но если в колхозе эти звери уже живут - то может быть и норм .
источник

SS

Sergey Sheremeta in Архитектура данных
живут, но не дружно!
тем не менее, возможно, это единственный рабочий вариант. спасибо!
источник
2021 May 18

GK

Gregory Kudinov in Архитектура данных
Бывают смещения от UTC в не целых часах https://www.timeanddate.com/time/time-zones-interesting.html
источник

SS

Sergey Sheremeta in Архитектура данных
пока бизнес-пользователи согласны на таймзоны с часовыми смещениями
источник
2021 June 01

CO

Chern Oleksander in Архитектура данных
всем привет, а может кто-то поделится принципом записи в AWS S3
Источники куча разных БД колоночные, NoSQL, реляционные

У меня сейчас выбор или писать в структуру корзины
{table_name}/{year}/{month}/{day}
и это будет csv файлы.
При этом я каждые 5ь мин буду дергать данные из БД, и дописывать в файлы нужные данные. Если данные SCD, тогда удалять старое и записывать новое.
Потом TL в AWS RedShift
—-
Второй вариант, это перед загрузкой в S3 сохранять файл в parquet и в нем сделать партиции по дням
——
Как лучше будет? Спасибо!
источник

R

Roman in Архитектура данных
Очень зависит от самих данных.
Если у тебя пара колонок всего в таблицах, то можно и csv оставить(но только сжимать все - таки стоит его и лучше до помещения в s3, чтобы на трафике сэкономить).

Если у тебя достаточно широкие таблицы, то лучше parquet с партиционированием и сортировкой по 1-2 полям, по которым могут чаще всего фильтровать.
В redshift, на сколкьо я помню, можно прям из паркета делать экспорт.
Плюс ты сможешь накинуть табличку на эти паркетники в глу и ходить достаточно дёшево за данными в них через афину.
источник

CO

Chern Oleksander in Архитектура данных
Таблицы широкие в большинстве случаев.
Но я не понимаю, а как потом перезаписывать файлы? типа дропать партии и дописывать?

а структуру S3 так же держать
{table_name}/{year}/{month}/{day}

или если паркет, можно просто {table_name} ?
источник

CO

Chern Oleksander in Архитектура данных
С Афиной, да это уже на перспективу заложено. Спасибо
источник

R

Roman in Архитектура данных
У тебя данные как глубоко в историю могут меняться? Грубо говоря, могут ли данные измениться у которых дата 30 дней назад? 100 дней назад?
источник

CO

Chern Oleksander in Архитектура данных
будет пару таблиц, типа user_properties
и там присваиваются статусы пользователя, менять может этот статус на протяжение 360 дней
структура +/-
user_id, reg_date, properties_1, properties_2, update_date
—-
Есть таблицы у которых максимально может быть обновление это 8м дней
типа платежи
id, created_date, amount, status, done_date
поле статус может обновиться как через секунду, так и через 4е дня
источник

R

Roman in Архитектура данных
Ну смотри, те таблицы, которые обновляются с маленькой глубиной(8 дней) перегружай только последние 8 дней и все. Прям перезаписывай партиции.

Та что 360 дней - тут сложнее. Очень зависит от размера. Подозреваю, что это справочник и вряд ли он большой. Если так, то его целиком переливай просто и все.
источник

CO

Chern Oleksander in Архитектура данных
а много это сколько считается, у меня таких таблиц может на 500 мб будет, до 2 гигов

И второе, а перезапись, это обычное удаление из паркета по дате?
или делать партию на дату и дропать партию, а потом запись?
источник

R

Roman in Архитектура данных
Из паркета ты нричегл не удалишь. Дропать партицию
источник

CO

Chern Oleksander in Архитектура данных
Понял, спасибо
источник

CO

Chern Oleksander in Архитектура данных
Ок, а вот если я делаю структуру S3
{Table_name}\{year}\{month}\{day}
И получается что в каждой папке будет один файл паркета.

Смысла ж в партии нет, правильно ?
Удаляем файл и заново создаём
источник
2021 June 14

CO

Chern Oleksander in Архитектура данных
Всем привет, а есть ли профильная группа по AWS DataLake / Glue
—-
или можете подсказать -
есть MySQL на EC2 в это БД есть куча таблиц, от 10 строк до 1 млрд
Хочу брать одну таблицу из этой БД и складывать в S3 в формате {Table_name}\{year}\{month}\{day}\

Не могу понять как это возможно сделать, использую AWS Glue

Всем спасибо !
источник

e

er@essbase.ru in Архитектура данных
Переслано от er@essbase.ru
источник

e

er@essbase.ru in Архитектура данных
Попробуйте snowflake
источник

CO

Chern Oleksander in Архитектура данных
та уже половина на GLUE не могу сейчас осуществить переход
snowflake/databricks - знаю что хорошие продукты, но к сожалению, я поздно про них узнал ((
источник