Forwarded from Токсичный (it) архитектор
Что это по факту? Взяли IntelliJ IDEA Community Edition, вытряхнули из неё всю телеметрию и проприетарные компоненты JetBrains, а затем прикрутили обратно то, без чего современный Java-разработчик чувствует себя голым: поддержку Spring и Docker.
То есть, по сути, нам вернули часть функционала платной Ultimate-версии, доступ к которой для нас сейчас, мягко говоря, затруднён.
Но давайте без иллюзий. Это не революция. Это реакция.
Нам не предложили принципиально новый инструмент, который изменит правила игры. Нам дали рабочий, «лицензионно чистый» молоток, чтобы мы могли продолжать забивать гвозди в текущих реалиях. Чтобы завтра к директору вашей госконторы не пришли люди в погонах с вопросом: «А на каком основании ваши программисты используют софт из недружественной юрисдикции?».
Все эти пляски про «серверы в России» — это не про удобство разработчика. Это про снижение рисков для бизнеса. Теперь ваша IDE ходит за плагинами не в Прагу, а, условно, в Мытищи. Это важно для юристов, но это не повод для инженерной эйфории.
Если вы работаете в энтерпрайзе, банке или госсекторе — для вас этот инструмент скоро станет стандартом де-факто. Он снимает головную боль с безопасников. Но вам нужно оценить его с позиции инженера: стабильно ли работает? Не тормозит? Все ли нужные плагины есть в их локальном маркетплейсе?
#интересное
Please open Telegram to view this post
VIEW IN TELEGRAM
openide.ru
OpenIDE – бесплатная IDE для Java, Python, Go и TypeScript
Бесплатная среда разработки на базе IntelliJ IDEA Community Edition с открытым исходным кодом и маркетплейсом с более чем 300 плагинами.
❤6👍2 2🔥1🤮1
Призыв к сообществу
Поделитесь найденными за последний год ОпенСорс инструментами, которые оказались полезны в работе по Data Engineering
Особо интересны
- BI, визуализация, доставка данных
- ETL
- No code / Low Code Pipeline
- Data Quality
Отдельная благодарность - кто поделится в коментах, как именно вы используете эти инструменты и как они изменили ваши подходы.
Поделитесь найденными за последний год ОпенСорс инструментами, которые оказались полезны в работе по Data Engineering
Особо интересны
- BI, визуализация, доставка данных
- ETL
- No code / Low Code Pipeline
- Data Quality
Отдельная благодарность - кто поделится в коментах, как именно вы используете эти инструменты и как они изменили ваши подходы.
Tips & Tricks - Apache Iceberg
Хозяйке на заметку или как я только сейчас понял, что произошло на вебинаре.
Сетап
Есть связка S3 + Iceberg JDBC Catalog + Trino. Облачная связка на платформенных сервисах. Рядом с этим есть Jupyter Notebook, который общаемся с данными в S3 через PyIceberg. JDBC каталог шерится между Trino и PyIceberg.
Кэтч
Я работаю с Трино и создаю несколько таблиц. Потом хочу подключиться к этим же таблицам в PyIceberg, что-то поменять (докинуть колонку) и сразу же увидеть изменения в Трино. Красивая история про мульти-агентный Zero-Copy ETL.
Подключаюсь питоном к каталогу и не вижу в нем таблиц. Хм, каталог-то (JDBC host, login, pass, dbname) точно правильный и ошибок никаких при подключении нет. Что за ерунда? Иду в S3, там объекты точно есть.
Окей, думаю, давай-ка попробуем создать новую таблицу и просто залить туда данные. Создаю питоном схему (Iceberg namespace), создаю табличку, лью туда рандомный датасет. Все замечательно работает. Иду смотреть в S3 - чудо, рядом с Трино схемами по тому же пути в бакете появились новые объекты, созданные из питона!
Иду смотреть в Трино - питонячьих объектов нет. Да что за ерунда тут происходит?
Разгадка
Что происходит, я понял, глядя на таблицы в JDBC Postgres - см. картинку в первом комменте.
В одной инсталляции JDBC каталога - в одной постгресовой БД, схеме, в одной и той же таблице лежат объекты с разными catalog_name! То есть у JDBC каталога фактически имеется слой логического разделения объектов.
Делая в питоне
можно увидеть только часть объектов которые есть на S3.
А сделав
вы приземлитесь в новый пустой каталог, и код вам ошибку не кинет! Я бы предпочел чтобы в этом месте мне кинули exception catalog not found, но сделано вот так.
Будьте внимательней и учитывайте при планировании работ
И подписывайтесь на канал в ВК, там в начале следующего года точно будут новые технические вебинары!
Хозяйке на заметку или как я только сейчас понял, что произошло на вебинаре.
Сетап
Есть связка S3 + Iceberg JDBC Catalog + Trino. Облачная связка на платформенных сервисах. Рядом с этим есть Jupyter Notebook, который общаемся с данными в S3 через PyIceberg. JDBC каталог шерится между Trino и PyIceberg.
Кэтч
Я работаю с Трино и создаю несколько таблиц. Потом хочу подключиться к этим же таблицам в PyIceberg, что-то поменять (докинуть колонку) и сразу же увидеть изменения в Трино. Красивая история про мульти-агентный Zero-Copy ETL.
Подключаюсь питоном к каталогу и не вижу в нем таблиц. Хм, каталог-то (JDBC host, login, pass, dbname) точно правильный и ошибок никаких при подключении нет. Что за ерунда? Иду в S3, там объекты точно есть.
Окей, думаю, давай-ка попробуем создать новую таблицу и просто залить туда данные. Создаю питоном схему (Iceberg namespace), создаю табличку, лью туда рандомный датасет. Все замечательно работает. Иду смотреть в S3 - чудо, рядом с Трино схемами по тому же пути в бакете появились новые объекты, созданные из питона!
Иду смотреть в Трино - питонячьих объектов нет. Да что за ерунда тут происходит?
Разгадка
Что происходит, я понял, глядя на таблицы в JDBC Postgres - см. картинку в первом комменте.
В одной инсталляции JDBC каталога - в одной постгресовой БД, схеме, в одной и той же таблице лежат объекты с разными catalog_name! То есть у JDBC каталога фактически имеется слой логического разделения объектов.
Делая в питоне
load_catalog(name='ice')
можно увидеть только часть объектов которые есть на S3.
А сделав
load_catalog(name='i_misprint_my_catalog_name')
вы приземлитесь в новый пустой каталог, и код вам ошибку не кинет! Я бы предпочел чтобы в этом месте мне кинули exception catalog not found, но сделано вот так.
Будьте внимательней и учитывайте при планировании работ
И подписывайтесь на канал в ВК, там в начале следующего года точно будут новые технические вебинары!
VK Видео
Больше, чем просто данные в S3: Iceberg как основа архитектуры Next-Gen КХД
Регистрируйтесь на вебинар, на котором мы разберем, как Apache Iceberg превращает Data Lake в полноценный Data Lakehouse — с ACID-транзакциями, эволюцией схем, time-travel, snapshot isolation (через Spark/Trino). Вас ждет теоретическая часть, воркшоп и ответы…
2👌7😨3⚡2❤2👍1
Картинка для сильных
Вот как датасет айсберга продвигается через 5 состояний сквозь вставки и удаления.
Картинка упрощенная, так как нет DELETE паркетов и манифестов к ним.
Потом во все это залетает конкурентная MVCC запись с помощью Catalog.
Рассказать все в деталях занимает примерно 1,5 часа с ответами на вопросы. Академическая пара.
Вот как датасет айсберга продвигается через 5 состояний сквозь вставки и удаления.
Картинка упрощенная, так как нет DELETE паркетов и манифестов к ним.
Потом во все это залетает конкурентная MVCC запись с помощью Catalog.
Рассказать все в деталях занимает примерно 1,5 часа с ответами на вопросы. Академическая пара.
1🔥10❤4🫡3👀2
Forwarded from topdatalab (Roman Zykov)
Прочитал, что в Авито работает 600 аналитиков. Какая жесть. Зачем столько?
Маленькие армии сеньоров-помидоров?
https://habr-com.cdn.ampproject.org/c/s/habr.com/ru/amp/publications/978496/
В век автоматизации AI звучит как оверхед
PS: В корпорациях есть одна тема, чем больше у тебя людей в подчинении, тем больше вес. Появляются маленькие императоры.
UK здесь не исключение
Маленькие армии сеньоров-помидоров?
https://habr-com.cdn.ampproject.org/c/s/habr.com/ru/amp/publications/978496/
В век автоматизации AI звучит как оверхед
PS: В корпорациях есть одна тема, чем больше у тебя людей в подчинении, тем больше вес. Появляются маленькие императоры.
UK здесь не исключение
🤔8💯2
Как посчитать нужное число аналитиков?
Берем среднюю цену аналитика. Допустим 10 млн. руб, считая все з/п, налоги, технику, место в офисе, съеденные печеньки и т.д.
Допустим аналитик растит эффективность своего БЮ +10% против его отсутствия.
Тогда эффективно держать 1 аналитика на каждый 100 млн. ЕБИДТы. Лучше на 150 потому что аналитики складываются в группы, группам нужны тимлиды, PM, и вообще с ростом хед-каунта предельная эффективность падает.
Получаем простое правило.
Каждому БЮ положен 1 фулл-тайм дата аналитик при достижении 100-150 млн. ЕБИДТы. Если ИТ компания, то можно брать выручку так как % маржинальность по ЕБИДТе высокая.
До того мелкие БЮ могут запрашивать аналитику как сервис из негоего общего котла дата-офиса - эта возможность также должна быть.
Если у Авито есть 60-90 млрд ЕБИДТы, то никаких вопросов большая цифра хедкаунта аналитиков не вызывает.
Ваш архитектор, отягощенный дипломом по экономике 😄
Берем среднюю цену аналитика. Допустим 10 млн. руб, считая все з/п, налоги, технику, место в офисе, съеденные печеньки и т.д.
Допустим аналитик растит эффективность своего БЮ +10% против его отсутствия.
Тогда эффективно держать 1 аналитика на каждый 100 млн. ЕБИДТы. Лучше на 150 потому что аналитики складываются в группы, группам нужны тимлиды, PM, и вообще с ростом хед-каунта предельная эффективность падает.
Получаем простое правило.
Каждому БЮ положен 1 фулл-тайм дата аналитик при достижении 100-150 млн. ЕБИДТы. Если ИТ компания, то можно брать выручку так как % маржинальность по ЕБИДТе высокая.
До того мелкие БЮ могут запрашивать аналитику как сервис из негоего общего котла дата-офиса - эта возможность также должна быть.
Если у Авито есть 60-90 млрд ЕБИДТы, то никаких вопросов большая цифра хедкаунта аналитиков не вызывает.
Ваш архитектор, отягощенный дипломом по экономике 😄
Telegram
Архитектор Данных
Прочитал, что в Авито работает 600 аналитиков. Какая жесть. Зачем столько?
Маленькие армии сеньоров-помидоров?
https://habr-com.cdn.ampproject.org/c/s/habr.com/ru/amp/publications/978496/
В век автоматизации AI звучит как оверхед
PS: В корпорациях есть…
Маленькие армии сеньоров-помидоров?
https://habr-com.cdn.ampproject.org/c/s/habr.com/ru/amp/publications/978496/
В век автоматизации AI звучит как оверхед
PS: В корпорациях есть…
👍12🔥3❤1💩1