Size: a a a

2020 November 03

UD

Uncel Duk in Data Engineers
На сдачу с микросервисов взял камаз терадат с экзадатами
источник

AZ

Anton Zadorozhniy in Data Engineers
Uncel Duk
Ну каргокульт за фаангами начал буксовать
слова вроде знакомые но все равно не понимаю о чем речь
источник

R

Renarde in Data Engineers
Anton Zadorozhniy
snowflake построен изначально под клауд: все хранение изначально в S3, кластер по сути держит WAL и кэши, отсюда обновления и скейлинг без остановки, спокойно переживают всякие падения и проч
ну так я и говорю - это cloud-native DWH, как Redshift или Rockset или Firebolt
источник

R

Renarde in Data Engineers
но концептуально то от DWH sf не отличается
источник

R

Renarde in Data Engineers
поэтому я и не понимаю, почему Teradata или Vertica хуже, даже если они с "архитектурой из прошлого века". Их можно точно так же запустить в клауде 🙂
источник

AZ

Anton Zadorozhniy in Data Engineers
Renarde
ну так я и говорю - это cloud-native DWH, как Redshift или Rockset или Firebolt
DWH это хранилище, мы вроде про СУБД говорили; архитектурно есть небольшая разница между СУБД которая обращается с дисками через кастомную файловую систему (и использует всякие трюки вроде разных скоростей на разных дорожках дисков), которой нужно небольшой количество очень толстых, очень надежных узлов (где нет никаких шумных соседей и гипервизора), которые соединены супер быстрым интерконнектом (инфинибенд), и СУБД которая хранит все изначально на объектном сторадже по REST интерфейсу, поднимает данные по требованию, изначально оверпровиженится на виртуалки...
источник

AZ

Anton Zadorozhniy in Data Engineers
Renarde
поэтому я и не понимаю, почему Teradata или Vertica хуже, даже если они с "архитектурой из прошлого века". Их можно точно так же запустить в клауде 🙂
и успешно запускается, но показатели эластичности, операционные показатели (как быстро и легко можно поскейлить), реакция на сбои - все из времен он-прем бареметала
источник

ИК

Иван Калининский... in Data Engineers
Andrey Smirnov
была такая идея, но видимо попробовали и не работает?
Все дело в том, чтосуществует много разных наборов файлов, они разного размера, поэтому так просто не получается, надо, чтобы spark не делил паркетник и и не склеивал их. Я предполагаю, что это было бы даже проще, но класс (что-то там Relation) очень интеллектуальный и я не понял, как его настроить на простое чтение, без оптимизации))
источник

R

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

AZ

Anton Zadorozhniy in Data Engineers
Renarde
мхм, понял. И видимо допилка под клауд слишком затратна?
ну попробуй даже в какой-нибудь очень простой СУБД, которая не работает МРР-кластере с его постоянными репликациями, балансировками и спекулятивностью (например в самом простом MySQL5), сделать первичное хранение не на локальных дисках, а в S3?
источник

R

Renarde in Data Engineers
Anton Zadorozhniy
ну попробуй даже в какой-нибудь очень простой СУБД, которая не работает МРР-кластере с его постоянными репликациями, балансировками и спекулятивностью (например в самом простом MySQL5), сделать первичное хранение не на локальных дисках, а в S3?
звучит как "написать proxy-fs с гарантиями и fuse-mount"
источник

AZ

Anton Zadorozhniy in Data Engineers
Renarde
звучит как "написать proxy-fs с гарантиями и fuse-mount"
и сделать так чтобы оно работало со скоростью обычной он-премной железки
источник

R

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

R

Renarde in Data Engineers
но почему-то они по этому пути не пошли - вот я и хочу понять почему 🙂
источник

AS

Andrey Smirnov in Data Engineers
Иван Калининский
Все дело в том, чтосуществует много разных наборов файлов, они разного размера, поэтому так просто не получается, надо, чтобы spark не делил паркетник и и не склеивал их. Я предполагаю, что это было бы даже проще, но класс (что-то там Relation) очень интеллектуальный и я не понял, как его настроить на простое чтение, без оптимизации))
мне стало интересно, полез посмотреть в исходники, боюсь что не получится
partitionedFiles.foreach { file =>
     if (currentSize + file.length > maxSplitBytes) {
       closePartition()
     }
     // Add the given file to the current partition.
     currentSize += file.length + openCostInBytes
     currentFiles += file
   }
в object FilePartition
источник

AZ

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

AZ

Anton Zadorozhniy in Data Engineers
похожая история как с синхронной репликацией аналитических СУБД, нормально это ни у кого не работает просто потому что это очень сложно и дорого реализовать, рискованное вложение
источник

AZ

Anton Zadorozhniy in Data Engineers
кстати в клауд-нейтив СУБД синхронную репликацию сильно проще сделать тоже, если вся балк загрузка идет напрямую в объектное хранилище)
источник

AZ

Anton Zadorozhniy in Data Engineers
Renarde
ну так я и говорю - это cloud-native DWH, как Redshift или Rockset или Firebolt
редшифт кстати ни разу не клауд нейтив, это paraccel в девичестве, он также точно хранит все на локальные диски, посмотри как там ресайзы сделаны (спойлер: рид-онли, либо даунтайм)
источник

AZ

Anton Zadorozhniy in Data Engineers
firebolt это да, попытка догнать сноуфлейк
источник