Друзья, вопрос!
Во-первых, давайте перечислим всех людей, кто мне завидует. Ладно, это шутка. Не обижайтесь. И по мне стреляли и я упал в лужу и лежал там…
У кого есть опыт работы вот в таких вот теплых местах?
Например вы сидите на балконе и работаете за компьютером? Или с таким климатом только бездельничать?
Я точно знаю, что какая-то часть людей либо переехали, либо уезжают на зимовку в теплый край. Причем необязательно на БАЛИ, ага ок, РЕАЛЬНО, остров меня принял, я дышу маткой. Возможно Сочи, например.
Интересно именно работа ДЕшников или аналитиков, где надо иногда реально сосредоточиться и прям вникать в код. Насколько теплая, жаркая погода на это влияет?
Кто где живет? Почему не хотите вернуться, цкатины в офис? Вместе со всеми ездить в метро на работу в 8 утра? А? Запретить улыбаться!
Я сейчас в отпуске, комп не брал. Но очень интересно, насколько это ок?
И я не про переезд навсегда. А например про зимовку. Ну или на год, два. Никакой политики, исключительно про отсутствие холода и наличии огромного кол-ва зеленого цвета в листьях.
Во-первых, давайте перечислим всех людей, кто мне завидует. Ладно, это шутка. Не обижайтесь. И по мне стреляли и я упал в лужу и лежал там…
У кого есть опыт работы вот в таких вот теплых местах?
Например вы сидите на балконе и работаете за компьютером? Или с таким климатом только бездельничать?
Я точно знаю, что какая-то часть людей либо переехали, либо уезжают на зимовку в теплый край. Причем необязательно на БАЛИ, ага ок, РЕАЛЬНО, остров меня принял, я дышу маткой. Возможно Сочи, например.
Интересно именно работа ДЕшников или аналитиков, где надо иногда реально сосредоточиться и прям вникать в код. Насколько теплая, жаркая погода на это влияет?
Кто где живет? Почему не хотите вернуться, цкатины в офис? Вместе со всеми ездить в метро на работу в 8 утра? А? Запретить улыбаться!
Я сейчас в отпуске, комп не брал. Но очень интересно, насколько это ок?
И я не про переезд навсегда. А например про зимовку. Ну или на год, два. Никакой политики, исключительно про отсутствие холода и наличии огромного кол-ва зеленого цвета в листьях.
❤16🔥11👏4😁3
Плоти Налоги!
Пишет мне рекрутер. Сколько хотите зарабатывать?
НДС, утильсбор, прогрессивная шкала налогов. Тех людей, у которых не было денег это коснется косвенно. Как говорится, продукты марки «каждый день» как покупали, так и покупают. А вот если вы уже богач, то скоро опять станете бедным. Недолго песенка играла. Это все мои эмоции.
Для тех, кто до сих пор не понимает, о чем речь. У нас теперь прогрессивная шкала налогов. Чем больше зарабатываешь, тем больший процент налогов платишь государству. Вот источник
Пока что я впервые встретился с таким вопросом по налогам. HR мне объяснил, что надо глянуть в НДФЛ и посмотреть процент налога. И от него уже считать ГРОСС (Гросс — значит до вычета налогов). Безусловно, для вас ничего не поменяется. Налог платит за вас работодатель, поэтому ему надо знать сколько вы уже заработали за этот год.
Как сказано на сайте ФНС, налог сверху накидывается постепенно, а не сразу. Т.е. если у вас зарплата 500к, но вы в этом году еще нифига не работали, то для вас будет считаться пока 13 процентов. И как только вы перепрыгните 2.5млн дохода, тогда и будет повышение.
Кстати, если у вас параллельно открыто ИП или СЗ, то доход с них не распространяется на трудовой доход по ТК РФ. Поэтому выдохните. Хотя бы тут ок.
И сколько компаниям теперь за нас платить?
Ставка 15% — для части годового дохода выше 2,4 млн руб. и до 5 млн руб. включительно (в среднем выше 200 тыс. руб. и до 416,7 тыс. руб. включительно в месяц).
Ставка 18% — для части годового дохода выше 5 млн руб. и до 20 млн руб. включительно (в среднем выше 416,7 тыс. руб. и до 1,670 тыс. руб. включительно в месяц).
Ставка 20% — для части годового дохода выше 20 млн руб. и до 50 млн руб. включительно (в среднем выше 1,670 тыс. руб. и до 4,170 тыс. руб. включительно в месяц).
Ставка 22% — для части дохода выше 50 млн руб. в год, или выше 4,170 тыс. руб. в месяц.
У кого есть какие мысли на этот счет?
Пишет мне рекрутер. Сколько хотите зарабатывать?
Я: 350к на руки!
HR: ок, а сколько в гросс?
Я: Ну сами посчитайте, я не знаю.
HR: Але, дядя, включи мозг, ЦКАТИНА! Прогрессивная шкала налогов
Я: Ой, я забыл, у меня лапки, мне надо посчитать.
НДС, утильсбор, прогрессивная шкала налогов. Тех людей, у которых не было денег это коснется косвенно. Как говорится, продукты марки «каждый день» как покупали, так и покупают. А вот если вы уже богач, то скоро опять станете бедным. Недолго песенка играла. Это все мои эмоции.
Для тех, кто до сих пор не понимает, о чем речь. У нас теперь прогрессивная шкала налогов. Чем больше зарабатываешь, тем больший процент налогов платишь государству. Вот источник
Пока что я впервые встретился с таким вопросом по налогам. HR мне объяснил, что надо глянуть в НДФЛ и посмотреть процент налога. И от него уже считать ГРОСС (Гросс — значит до вычета налогов). Безусловно, для вас ничего не поменяется. Налог платит за вас работодатель, поэтому ему надо знать сколько вы уже заработали за этот год.
Как сказано на сайте ФНС, налог сверху накидывается постепенно, а не сразу. Т.е. если у вас зарплата 500к, но вы в этом году еще нифига не работали, то для вас будет считаться пока 13 процентов. И как только вы перепрыгните 2.5млн дохода, тогда и будет повышение.
Кстати, если у вас параллельно открыто ИП или СЗ, то доход с них не распространяется на трудовой доход по ТК РФ. Поэтому выдохните. Хотя бы тут ок.
И сколько компаниям теперь за нас платить?
Ставка 15% — для части годового дохода выше 2,4 млн руб. и до 5 млн руб. включительно (в среднем выше 200 тыс. руб. и до 416,7 тыс. руб. включительно в месяц).
Ставка 18% — для части годового дохода выше 5 млн руб. и до 20 млн руб. включительно (в среднем выше 416,7 тыс. руб. и до 1,670 тыс. руб. включительно в месяц).
Ставка 20% — для части годового дохода выше 20 млн руб. и до 50 млн руб. включительно (в среднем выше 1,670 тыс. руб. и до 4,170 тыс. руб. включительно в месяц).
Ставка 22% — для части дохода выше 50 млн руб. в год, или выше 4,170 тыс. руб. в месяц.
У кого есть какие мысли на этот счет?
👍7😱6❤5🔥2😁1
This media is not supported in your browser
VIEW IN TELEGRAM
Стрим будет в Yandex Телемост
О чем стрим?
Расскажем про BootCamp! Стартует уже 4 поток!
Покажем, как у нас все устроено, инструменты, пайплайны, а также ответим на вопросы.
Ребят, у нас уже много заявок на Буткемп Январь, но рекомендую все равно записаться в @roadmappers_bot, если еще не записались.
Может повести и мы возьмем и вас!
Запись стрима будет
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥15😁7❤5👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Стрим будет в Yandex Телемост
Заходим! Рассказываем и показываем про наш BootCamp
Please open Telegram to view this post
VIEW IN TELEGRAM
😁14🔥8❤2👍2
Запись стрима уже на Youtube!
Всем спасибо, кто был на стриме!
➡️ YOUTUBE
Наш чат для общение и там же можете задать вопрос
Всем спасибо, кто был на стриме!
Наш чат для общение и там же можете задать вопрос
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤4🔥2
XLTable - OLAP Cервер для нового стека данных
Работайте с ClickHouse, BigQuery, Snowflake из сводной таблицы Excel.
Предоставьте пользователям возможность самостоятельно работать с данными, с помощью знакомого инструмента.
📈Ключевые возможности XLTable:
• Аналог MS OLAP (SSAS) для больших данных
• Интеграция с MS Excel по протоколу XMLA
• Поддержка ClickHouse, BigQuery, Snowflake
• Скоро: YDB, Greenplum
• Множество групп мер, иерархий и измерений в одном кубе
• Гибкие настройки кэширования
• Развёртывание внутри вашей инфраструктуры или в облаке
🔒Безопасность:
• Интеграция с LDAP
• Разграничение доступа на уровне мер, измерений и их членов
⚙️Производительность:
• Безлимитное количество мер и измерений
• Работа из Excel c миллиардами строк данных
• Все расчеты производятся на уровне ClickHouse
• Отличные возможности для масштабирования
Хочешь получить бесплатную пробную версию на 30 дней?
👉🏻Напиши «OLAP» - покажем демо и поможем с настройкой
Контакт: https://t.me/vorobiova_anastasia
Сайт с информацией о продукте: https://xltable.com/
Работайте с ClickHouse, BigQuery, Snowflake из сводной таблицы Excel.
Предоставьте пользователям возможность самостоятельно работать с данными, с помощью знакомого инструмента.
📈Ключевые возможности XLTable:
• Аналог MS OLAP (SSAS) для больших данных
• Интеграция с MS Excel по протоколу XMLA
• Поддержка ClickHouse, BigQuery, Snowflake
• Скоро: YDB, Greenplum
• Множество групп мер, иерархий и измерений в одном кубе
• Гибкие настройки кэширования
• Развёртывание внутри вашей инфраструктуры или в облаке
🔒Безопасность:
• Интеграция с LDAP
• Разграничение доступа на уровне мер, измерений и их членов
⚙️Производительность:
• Безлимитное количество мер и измерений
• Работа из Excel c миллиардами строк данных
• Все расчеты производятся на уровне ClickHouse
• Отличные возможности для масштабирования
Хочешь получить бесплатную пробную версию на 30 дней?
👉🏻Напиши «OLAP» - покажем демо и поможем с настройкой
Контакт: https://t.me/vorobiova_anastasia
Сайт с информацией о продукте: https://xltable.com/
🔥11❤8😁2👍1👏1
Как я написал свой AI?
Я не знал, как правильно назвать заголовок для поста, потому что, написав LLM + RAG вызвало бы много вопросов. А че это? А?
Короче, я захотел написать бота, который помогал бы нам отвечать на вопросы людей по поводу bootcamp, роадмаперс, ценах, расписаниях и так далее. И, как вы понимаете, бот должен держать контекст у себя в голове + отвечать, как человек.
➡️ Кстати о том, как он работает я буду рассказывать и показывать у нас в Роадмаперах! (Скидка 30% до 15 января)
А зачем и почему?
Потому что мы заколебались отвечать на одни и те же вопросы по 100 000 раз. Это реально тяжело. Вас много, мы одни.
И что ты придумал?
Все очень просто. Берем python, дальше добавляем подключение к API DeepSeek и все это оборачиваем в aiogram (библиотека для телеграм).
Но тут сразу вопрос: ОКЭЙ, ЭТО ПРОСТО ЧАТ ГПТ, В ЧЕМ РАЗНИЦА?
Фишка в том, что если вы хотите, чтобы бот выдавал вам только конкретную информацию о вашем магазине, компании, личном расписании на бальные танцы или документации, то НАДО ВАШУ ЛЛМ ОГРАНИЧИТЬ!
Т.е. написать такой текст в промпт, чтобы нейронка отдавала в конкретном стиле и очень конкретную инфу. Это можно сделать при передаче промпта в API по умолчанию. Ну т.е. например вы отправили сообщение в телеграм бота, а вместе с ним внутри в бекенде отправляется заготовленный промпт со всей информацией. И ЛЛМка просто перестраивает вам текст из полученных данных.
И в чем сложность?
Если боту каждый раз отправлять огромный кусок информации, то он в один момент перестанет это тянуть + могут начаться галюцинации + он будет тормозить. Короче говоря, каждый раз отправлять Войну и Мир не выйдет, а хотелось бы, чтобы он ее знал.
Как это решается?
Если кто не понял, то в Роадмаперах! (Скидка 30% до 15 января) я прям покажу код. Он открыт и научу каждого собирать себе помощника.
В кратце, нам нужен json или файл markdown, в котором будет вся информация. Я кстати загружал даже целый Roadmap. Потом эту информацию надо векторизовать и сложить в векторную БД. И уже из нее искать похожие на вопрос кусочки и отправлять в LLM.
Кто не понял, я еще раз повторю, я лично покажу, как это включать, запускать и так далее в Роадмаперах
🍟 Роадмаперах! (Скидка 30% до 15 января)
Я не знал, как правильно назвать заголовок для поста, потому что, написав LLM + RAG вызвало бы много вопросов. А че это? А?
Короче, я захотел написать бота, который помогал бы нам отвечать на вопросы людей по поводу bootcamp, роадмаперс, ценах, расписаниях и так далее. И, как вы понимаете, бот должен держать контекст у себя в голове + отвечать, как человек.
А зачем и почему?
Потому что мы заколебались отвечать на одни и те же вопросы по 100 000 раз. Это реально тяжело. Вас много, мы одни.
И что ты придумал?
Все очень просто. Берем python, дальше добавляем подключение к API DeepSeek и все это оборачиваем в aiogram (библиотека для телеграм).
Но тут сразу вопрос: ОКЭЙ, ЭТО ПРОСТО ЧАТ ГПТ, В ЧЕМ РАЗНИЦА?
Фишка в том, что если вы хотите, чтобы бот выдавал вам только конкретную информацию о вашем магазине, компании, личном расписании на бальные танцы или документации, то НАДО ВАШУ ЛЛМ ОГРАНИЧИТЬ!
Т.е. написать такой текст в промпт, чтобы нейронка отдавала в конкретном стиле и очень конкретную инфу. Это можно сделать при передаче промпта в API по умолчанию. Ну т.е. например вы отправили сообщение в телеграм бота, а вместе с ним внутри в бекенде отправляется заготовленный промпт со всей информацией. И ЛЛМка просто перестраивает вам текст из полученных данных.
И в чем сложность?
Если боту каждый раз отправлять огромный кусок информации, то он в один момент перестанет это тянуть + могут начаться галюцинации + он будет тормозить. Короче говоря, каждый раз отправлять Войну и Мир не выйдет, а хотелось бы, чтобы он ее знал.
Как это решается?
Если кто не понял, то в Роадмаперах! (Скидка 30% до 15 января) я прям покажу код. Он открыт и научу каждого собирать себе помощника.
В кратце, нам нужен json или файл markdown, в котором будет вся информация. Я кстати загружал даже целый Roadmap. Потом эту информацию надо векторизовать и сложить в векторную БД. И уже из нее искать похожие на вопрос кусочки и отправлять в LLM.
Кто не понял, я еще раз повторю, я лично покажу, как это включать, запускать и так далее в Роадмаперах
🍟 Роадмаперах! (Скидка 30% до 15 января)
Please open Telegram to view this post
VIEW IN TELEGRAM
❤11🔥7👍5
Мне писать объяснительную?
Бывают разные комменты на ютубе, но некоторыми хочется делиться.
Человеку непонятно, НА КАКОМ ОСНОВАНИИ на превью видео про ДАТА ИНЖЕНЕРОВ изображен АВТОМОБИЛЬ, кстати НЕМЕЦКОЙ МАРКИ!
Все, что можно поделать в этой ситуации — ЗАПРЕТИТЬ!
Вот реально, кого блин волнует это вообще. Ну захотел я так. НЕТ! ТЫ ДОЛЖЕН БЫЛ СДЕЛАТЬ УМЕРЕННУЮ ОБЛОЖКУ. НЕЛЬЗЯ ВЫДЕЛЯТЬСЯ.
коммент тут
Бывают разные комменты на ютубе, но некоторыми хочется делиться.
Человеку непонятно, НА КАКОМ ОСНОВАНИИ на превью видео про ДАТА ИНЖЕНЕРОВ изображен АВТОМОБИЛЬ, кстати НЕМЕЦКОЙ МАРКИ!
Все, что можно поделать в этой ситуации — ЗАПРЕТИТЬ!
Вот реально, кого блин волнует это вообще. Ну захотел я так. НЕТ! ТЫ ДОЛЖЕН БЫЛ СДЕЛАТЬ УМЕРЕННУЮ ОБЛОЖКУ. НЕЛЬЗЯ ВЫДЕЛЯТЬСЯ.
коммент тут
😁37🤯6😱2❤1
Как ответить на собесе, если не знаешь?
На мой взгляд так: "Не приходилось работать, не было необходимости. Могу рассказать только то, что знаю об этом."
Все. Иначе если начинать выдумывать, мы себя закапываем, потому что начинается уже смешивание всего со всем. Либо вообще сказать, что минимально работали с этим инструментом или технологией и сильно не погружены в тему.
Знаете, вот приходим мы в компанию, вас там начинают гонять по тому, как выделяется память, как внутри компа фиксики бегают, как связана теория струн с перебалансировкой Кафки. А потом нам дают задачу кубики перекладывать. Я образно, безусловно. Ну не всегда вопросы с собесов совпадают с реальными задачами. Зачем спрашивать про индексы в постгресе, если в команде их никто не использует и может быть даже постгреса нет))
Или зачем давать задачи по алгосам, если сто процентов все разрабы будут писать код через Cursor, Codex или Copilot — ВОТ РАНЬШЕ БЫЛО ЛУЧШЕ! ПИСАЛИ САМИ РУКАМИ! Хотя стоп, если вы забыли, то профессор Савельев (он там за мозг шарит) вообще в одном из интервью сказал, что ПИТОН — это вообще не язык программирования...Вот ассемблер да.
Если что, я могу в комменты скинуть этот видос, я не придумываю. Каждые 5 лет люди стареют и не желают принимать новые технологии и еще свой возраст. Ой, это вообще вечная тема...
Мне нравится, когда на собесах происходит так:
- Привет, сейчас мы расскажем о наших задачах и архитектуре, а ты постарайся потом о себе поведать так, чтобы это максимально пересекалось с нашим стеком.
Все. Никаких теорем, определений и так далее. Услышал, что у них Greenplum, сразу перестраивай свой рассказ под него. Можно сказать о том, какие задачи были с ним и сразу показать глубину знаний. Причем необязательно шарить за него прям до исходного кода. Команде может достаточно понимать за партиции, настройки дистрибуции, да и внешние таблицы. В целом может им это уже ок. Не всем же нужен ОЛИМПИАДНИК!
По поводу Кафки.
- Скажите, пожалуйста, как перебалансировать Кафку
- Про балансировку не подскажу, не сталкивался, не было такой необходимости
- Ну все же, вот у вас есть несколько партиций в Кафке
- Послушайте, я же сказал, что не сталкивался, поэтому не смогу ответить
Я принципиально отказываюсь даже разгонять логически, потому что это тупо додумывание. Причем совершенно точно не в ту сторону. И мне потом собеседующий поставит не один минус, а 5 минусов. Очевидно, если не шаришь, то намешаешь вообще все понятия и термины.
Поэтому я стал просто отказывать от вопросов, если не знаю. И честно об этом говорю. А если знаю только какие-то основы, то могу предложить просто рассказать все, с чем сталкивался с этим инструментом.
Я думаю, что эта проблема с тем, чтобы ответить на все вопросы идет из универа, где на экзамене ты хочешь безупречно ответить на все вопросы. Но на мой взгляд на собесах лучше придерживаться тактики сдерживания. А то скажешь лишнее слово и тебе накинут еще 100 вопросов по этой ерунде, которую ты случайно выкинул.
Вот знаете, я несколько раз смотрел видосы по индексам, по кластеризованным индексам, как работает внутри все это и благополучно уже все забыл. А ПОЧЕМУ? Потому что я так ни разу и не столкнулся с ними в задачах. И вот я буду сейчас выдумывать, что такое GIST индекс или как работает некластеризванный индекс. Да я не помню уже че это такое. Ну есть и есть.
Инфа, которую мы не используем явно стирается, как ненужная. А видос про то, что питон это ерунда, а не программирование, сейчас скину)
На мой взгляд так: "Не приходилось работать, не было необходимости. Могу рассказать только то, что знаю об этом."
Все. Иначе если начинать выдумывать, мы себя закапываем, потому что начинается уже смешивание всего со всем. Либо вообще сказать, что минимально работали с этим инструментом или технологией и сильно не погружены в тему.
Знаете, вот приходим мы в компанию, вас там начинают гонять по тому, как выделяется память, как внутри компа фиксики бегают, как связана теория струн с перебалансировкой Кафки. А потом нам дают задачу кубики перекладывать. Я образно, безусловно. Ну не всегда вопросы с собесов совпадают с реальными задачами. Зачем спрашивать про индексы в постгресе, если в команде их никто не использует и может быть даже постгреса нет))
Или зачем давать задачи по алгосам, если сто процентов все разрабы будут писать код через Cursor, Codex или Copilot — ВОТ РАНЬШЕ БЫЛО ЛУЧШЕ! ПИСАЛИ САМИ РУКАМИ! Хотя стоп, если вы забыли, то профессор Савельев (он там за мозг шарит) вообще в одном из интервью сказал, что ПИТОН — это вообще не язык программирования...Вот ассемблер да.
Если что, я могу в комменты скинуть этот видос, я не придумываю. Каждые 5 лет люди стареют и не желают принимать новые технологии и еще свой возраст. Ой, это вообще вечная тема...
Мне нравится, когда на собесах происходит так:
- Привет, сейчас мы расскажем о наших задачах и архитектуре, а ты постарайся потом о себе поведать так, чтобы это максимально пересекалось с нашим стеком.
Все. Никаких теорем, определений и так далее. Услышал, что у них Greenplum, сразу перестраивай свой рассказ под него. Можно сказать о том, какие задачи были с ним и сразу показать глубину знаний. Причем необязательно шарить за него прям до исходного кода. Команде может достаточно понимать за партиции, настройки дистрибуции, да и внешние таблицы. В целом может им это уже ок. Не всем же нужен ОЛИМПИАДНИК!
По поводу Кафки.
- Скажите, пожалуйста, как перебалансировать Кафку
- Про балансировку не подскажу, не сталкивался, не было такой необходимости
- Ну все же, вот у вас есть несколько партиций в Кафке
- Послушайте, я же сказал, что не сталкивался, поэтому не смогу ответить
Я принципиально отказываюсь даже разгонять логически, потому что это тупо додумывание. Причем совершенно точно не в ту сторону. И мне потом собеседующий поставит не один минус, а 5 минусов. Очевидно, если не шаришь, то намешаешь вообще все понятия и термины.
Поэтому я стал просто отказывать от вопросов, если не знаю. И честно об этом говорю. А если знаю только какие-то основы, то могу предложить просто рассказать все, с чем сталкивался с этим инструментом.
Я думаю, что эта проблема с тем, чтобы ответить на все вопросы идет из универа, где на экзамене ты хочешь безупречно ответить на все вопросы. Но на мой взгляд на собесах лучше придерживаться тактики сдерживания. А то скажешь лишнее слово и тебе накинут еще 100 вопросов по этой ерунде, которую ты случайно выкинул.
Вот знаете, я несколько раз смотрел видосы по индексам, по кластеризованным индексам, как работает внутри все это и благополучно уже все забыл. А ПОЧЕМУ? Потому что я так ни разу и не столкнулся с ними в задачах. И вот я буду сейчас выдумывать, что такое GIST индекс или как работает некластеризванный индекс. Да я не помню уже че это такое. Ну есть и есть.
Инфа, которую мы не используем явно стирается, как ненужная. А видос про то, что питон это ерунда, а не программирование, сейчас скину)
👍24❤19🔥8😁5🤔1
Титаник не умеет читать Iceberg
Что имеем?
Есть PowerBI. Да, это программа для дашбордов. Там можно смотреть метрики, строить графики. PowerBI подключается к вашей БД —> дальше к табличке —> SQL запрос —> график! И также есть S3 (тут храним данные).
Данные у нас грузятся каждый день за 7 дней назад (Каждый день грузим неделю). Почему? Потому, что они могут долетать обновленные + иногда нужно сделать ручной запуск РЕТРО (прогрузить конкретный диапазон дат из прошлого)
Что требуется?
PowerBI должен обращаться к этим данным и строить по ним дашборд.
Как будем решать?
Во-первых мы БИГДАТА, значит мы наверняка данные партицируем (разбиваем по папкам по бизнес дате). Да, это круто. Потом можно удалять конкретные партиции-папки в момент, когда грузим 7 дней назад. Нам же надо обновлять данные за прошлый период. Но PowerBI по какой-то причине не может читать в S3 партиции. Ну вот не получается и все! Только если все лежит в одной ПАПКЕ (Душнилы: это не папки, а объекты..так нельзя говорить...СТАЛИНА НА ВАС НЕТ)
Ну ок, тогда не будем партицировать. Складываем все в одну папку. Но как мы будем обновлять наши данные, мы же получается просто APPEND в одно место и оно начинает дублироваться!
Давайте применим Delta таблицы! Это типа штука, которая позволяется удалять данные в S3. Типа пишешь DELETE и оно прям удаляет. Но у меня не получается, потому что версия Spark Scala и Delta не подходят друг к другу. Короче спарк я обновить сам не могу, а версию Delta мне тоже подходящую не найти.
Давайте применим Iceberg! У меня получилось сделать DELETE! Все четко удалилось из .parquet. Напомню, что из файла формата parquet как бы удалить нельзя ничего. Его можно либо дропнуть полностью и перезаписать, либо дозаписать рядом. А Iceberg — это типа надстройка, которая позволяет DELETE, UPDATE, MERGE + еще можно ходить по разным версиям таблиц, типа как в прошлое!
Вроде все круто! Но теперь PowerBI не умеет читать Iceberg. Короче у нас нет этого коннектора.
Че теперь делать?
⚠️ Делаем 3 таблицы:
source_table - это инкремент (например 7 дней или ретро. Каждый раз overwrite)
tmp_table - это временная таблица (в нее будут стекать финальные данные)
target_table - это таблица витрина, с которой читает PowerBI
Прилетел инкремент в source_table, дальше узнаем в нем min и max бизнес дат. Потому читаем target_table и фильтруем из него все данные, кроме найденных min и max. Дальше делаем source_table.union(filtered_target_table) и записываем в tmp_table.
Последний шаг. Удаляем target_table и переименовываем tmp_table в target_table.
В чем плохо?
Каждый раз мы будем тянуть все больше и больше данных, перетаскивая их из одной таблицы в другую + сама табличка растет и не партицированая. Но пока решение такое и в целом рабочее.
Че думаете?
Ничего не понятно, но очень интересно.
Что имеем?
Есть PowerBI. Да, это программа для дашбордов. Там можно смотреть метрики, строить графики. PowerBI подключается к вашей БД —> дальше к табличке —> SQL запрос —> график! И также есть S3 (тут храним данные).
Данные у нас грузятся каждый день за 7 дней назад (Каждый день грузим неделю). Почему? Потому, что они могут долетать обновленные + иногда нужно сделать ручной запуск РЕТРО (прогрузить конкретный диапазон дат из прошлого)
Что требуется?
PowerBI должен обращаться к этим данным и строить по ним дашборд.
Как будем решать?
Во-первых мы БИГДАТА, значит мы наверняка данные партицируем (разбиваем по папкам по бизнес дате). Да, это круто. Потом можно удалять конкретные партиции-папки в момент, когда грузим 7 дней назад. Нам же надо обновлять данные за прошлый период. Но PowerBI по какой-то причине не может читать в S3 партиции. Ну вот не получается и все! Только если все лежит в одной ПАПКЕ (Душнилы: это не папки, а объекты..так нельзя говорить...СТАЛИНА НА ВАС НЕТ)
Ну ок, тогда не будем партицировать. Складываем все в одну папку. Но как мы будем обновлять наши данные, мы же получается просто APPEND в одно место и оно начинает дублироваться!
Давайте применим Delta таблицы! Это типа штука, которая позволяется удалять данные в S3. Типа пишешь DELETE и оно прям удаляет. Но у меня не получается, потому что версия Spark Scala и Delta не подходят друг к другу. Короче спарк я обновить сам не могу, а версию Delta мне тоже подходящую не найти.
Давайте применим Iceberg! У меня получилось сделать DELETE! Все четко удалилось из .parquet. Напомню, что из файла формата parquet как бы удалить нельзя ничего. Его можно либо дропнуть полностью и перезаписать, либо дозаписать рядом. А Iceberg — это типа надстройка, которая позволяет DELETE, UPDATE, MERGE + еще можно ходить по разным версиям таблиц, типа как в прошлое!
Вроде все круто! Но теперь PowerBI не умеет читать Iceberg. Короче у нас нет этого коннектора.
Че теперь делать?
⚠️ Делаем 3 таблицы:
source_table - это инкремент (например 7 дней или ретро. Каждый раз overwrite)
tmp_table - это временная таблица (в нее будут стекать финальные данные)
target_table - это таблица витрина, с которой читает PowerBI
Прилетел инкремент в source_table, дальше узнаем в нем min и max бизнес дат. Потому читаем target_table и фильтруем из него все данные, кроме найденных min и max. Дальше делаем source_table.union(filtered_target_table) и записываем в tmp_table.
Последний шаг. Удаляем target_table и переименовываем tmp_table в target_table.
В чем плохо?
Каждый раз мы будем тянуть все больше и больше данных, перетаскивая их из одной таблицы в другую + сама табличка растет и не партицированая. Но пока решение такое и в целом рабочее.
Че думаете?
❤11🔥9👍5
Снял видос для тех, кто только думает, стоит ли ему вкатывать в IT или менять направление, а может и в целом не понимает, куда двигаться дальше.
Короче, в первую очередь хочется просто дать людям уверенности и волшебный пинок!
https://youtu.be/TyC8V7agRjw
https://youtu.be/TyC8V7agRjw
https://youtu.be/TyC8V7agRjw
наш чат для общения
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19🔥13❤11
Forwarded from Инженерообязанный🫡 | Владимир Шустиков | Инженер Данных
#выход_в_прод 🚀
На этих выходных случилось то, ради чего стоило потратить месяц жизни —
DBT официально заехал в прод💪
Если коротко: оно того стоило!
Мы ушли от матвью к таблицам — и это сразу почувствовала вся команда. Работа с витринами стала проще, прозрачнее и быстрее. Появилось нормальное логирование обновлений. А главное — часть рутины просто исчезла.👀
Но самое интересное началось не в SQL🙂
Связка Airflow + DBT через airflow-dbt-python оказалась тем ещё квестом.
В какой-то момент стало понятно: «по документации» не получится — пришлось лезть в исходники библиотеки, разбираться уже там.
Если честно, в какой-то момент хотелось всё это просто свернуть. Почти всю работу приходилось тащить в одиночку, а сложность росла с каждой новой фичей.
Но каждый раз, когда мой лид(Оль тебе спасибо) после очередного внедрения говорил:
«Блин, это реально круто», —
это становилось лучшей моттивацией не останавливаться и идти дальше.(но в следующий раз лучше деньгами!😁 )
И вот тут я окончательно понял одну вещь:
именно такие задачи и формируют настоящий инженерный опыт.
Тот, который не купишь ни на одном курсе и не выучишь по туториалам.
И именно про такие кейсы нас потом спрашивают на собеседованиях. Не про то, как ты повторил готовый алгоритм, а про то, как ты смог разобраться в хаосе, принять решения, ускорить процессы и реально улучшить работу команды.
Такие задачи показывают, что ты не просто исполнитель, а инженер, который умеет думать, влиять на систему и менять её к лучшему.
И да — теперь у меня появилась строчка в резюме, которой я реально горжусь 😎
Самое приятное — этот опыт не останется только в проде. Часть решений уже добавлена в Буткемп, а дальше они появятся и в Инфрашеринге. То есть всё это можно будет потрогать руками — не в теории, а в максимально приближенных к продакшену условиях.
На ближайшем созвоне с Roadmapерами я подробно разберу:
📌 как мы внедряли DBT в прод,
📌 какие грабли собрали,
📌 какие архитектурные решения реально работают,
📌 и что бы я сделал иначе, если бы начинал заново.
Наши ссылки:
📍 Сайт Roadmapper.ru
💬 Телеграмм-чат Roadmappers.ru
💙 ВК
📺 YouTube(Инженерообязанный)
📺 YouTube(Евгений Виндюков)
💬 Телеграмм-канал(Инженерообязанный)
💬 Телеграмм-канал(Я - Дата Инженер)
🖤 Сетка
На этих выходных случилось то, ради чего стоило потратить месяц жизни —
DBT официально заехал в прод
Если коротко: оно того стоило!
Мы ушли от матвью к таблицам — и это сразу почувствовала вся команда. Работа с витринами стала проще, прозрачнее и быстрее. Появилось нормальное логирование обновлений. А главное — часть рутины просто исчезла.
Но самое интересное началось не в SQL
Связка Airflow + DBT через airflow-dbt-python оказалась тем ещё квестом.
В какой-то момент стало понятно: «по документации» не получится — пришлось лезть в исходники библиотеки, разбираться уже там.
Если честно, в какой-то момент хотелось всё это просто свернуть. Почти всю работу приходилось тащить в одиночку, а сложность росла с каждой новой фичей.
Но каждый раз, когда мой лид(Оль тебе спасибо) после очередного внедрения говорил:
«Блин, это реально круто», —
это становилось лучшей моттивацией не останавливаться и идти дальше.(но в следующий раз лучше деньгами!
И вот тут я окончательно понял одну вещь:
именно такие задачи и формируют настоящий инженерный опыт.
Тот, который не купишь ни на одном курсе и не выучишь по туториалам.
И именно про такие кейсы нас потом спрашивают на собеседованиях. Не про то, как ты повторил готовый алгоритм, а про то, как ты смог разобраться в хаосе, принять решения, ускорить процессы и реально улучшить работу команды.
Такие задачи показывают, что ты не просто исполнитель, а инженер, который умеет думать, влиять на систему и менять её к лучшему.
И да — теперь у меня появилась строчка в резюме, которой я реально горжусь 😎
Самое приятное — этот опыт не останется только в проде. Часть решений уже добавлена в Буткемп, а дальше они появятся и в Инфрашеринге. То есть всё это можно будет потрогать руками — не в теории, а в максимально приближенных к продакшену условиях.
На ближайшем созвоне с Roadmapерами я подробно разберу:
Наши ссылки:
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥27👍11❤9👏1
Channel name was changed to «Я – Дата Инженер | Евгений Виндюков»
Forwarded from Инженерообязанный🫡 | Владимир Шустиков | Инженер Данных
Всем привет!👋
Сразу хочу перед всеми вами извиниться😳 — давно ничего нормального не писал, не выкладывал ролики и всё такое.
После того как я начал заниматься предпринимательской деятельностью, на меня лёг вообще не лёгкий груз🙀 . Постоянное улучшение продуктов, разборки с банками и налоговой, составление публичных оферт, подача данных в РНК, договоры оказания услуг, политики обработки данных и многое-многое другое.
Я никогда в жизни не думал, что буду постоянно общаться с юристами и бухгалтерами на темы вроде: «а где на сайте или в телеграм-боте поставить кнопку согласия на обработку персональных данных?» или «а почему возврат денежных средств является операцией прямого перевода со счёта ИП на физлицо?»
Я теперь начинаю понимать, почему курсы стоят по 100к, а менторство по 5–7к за 1 час. Не потому что, там проведена офигенная работа, а в первую очередь — потому что ты подставляешь свою пятую точку: за любой проёб, вплоть до уголовки. И без шуток — это иногда реально пугает!🤢
И всё это проходит параллельно с основной работой. А там тоже своих задач хватает.
В итоге времени просто подумать, о чём написать пост, нет от слова совсем.
Нооооо! Помимо всей этой банковско-налоговой движухи, мы продолжаем улучшать продукты. И я ПОЛНОСТЬЮ переписал статью по Airflow в роадмапе.
Ребята с буткемпа, роадмаперов и инфрашеринга уже успели заценить — они её обкатывали, чтобы для всех вас сделать только лучшее. Формат простой: берёшь, читаешь, копируешь код и реально понимаешь, как оно работает. Расписал на столько понятно, на сколько смог, но подобного ни где не находил. Да и в целом не просто статья, а полноценный курс, за который обычно берут нехилые деньги. А для Вас он бесплатен буден всегда.
Единсвенная просьба, буду рад любому распространению среди друзей, коллег, знакомых — это даст безумный буст и поможет находить время, чтобы клепать для вас что-то новое🙌
В любом случае — не прощаемся и не теряемся. Надеюсь, в этом месяце разберусь со всей бюрократией и пойдём дальше клепать контент 🚀
Наши ссылки:
📍 Сайт Roadmapper.ru
💬 Телеграмм-чат Roadmappers.ru
💙 ВК
📺 YouTube(Инженерообязанный)
📺 YouTube(Евгений Виндюков)
💬 Телеграмм-канал(Инженерообязанный)
💬 Телеграмм-канал(Я - Дата Инженер)
🖤 Сетка
Сразу хочу перед всеми вами извиниться
После того как я начал заниматься предпринимательской деятельностью, на меня лёг вообще не лёгкий груз
Я никогда в жизни не думал, что буду постоянно общаться с юристами и бухгалтерами на темы вроде: «а где на сайте или в телеграм-боте поставить кнопку согласия на обработку персональных данных?» или «а почему возврат денежных средств является операцией прямого перевода со счёта ИП на физлицо?»
Я теперь начинаю понимать, почему курсы стоят по 100к, а менторство по 5–7к за 1 час. Не потому что, там проведена офигенная работа, а в первую очередь — потому что ты подставляешь свою пятую точку: за любой проёб, вплоть до уголовки. И без шуток — это иногда реально пугает!
И всё это проходит параллельно с основной работой. А там тоже своих задач хватает.
В итоге времени просто подумать, о чём написать пост, нет от слова совсем.
Нооооо! Помимо всей этой банковско-налоговой движухи, мы продолжаем улучшать продукты. И я ПОЛНОСТЬЮ переписал статью по Airflow в роадмапе.
Ребята с буткемпа, роадмаперов и инфрашеринга уже успели заценить — они её обкатывали, чтобы для всех вас сделать только лучшее. Формат простой: берёшь, читаешь, копируешь код и реально понимаешь, как оно работает. Расписал на столько понятно, на сколько смог, но подобного ни где не находил. Да и в целом не просто статья, а полноценный курс, за который обычно берут нехилые деньги. А для Вас он бесплатен буден всегда.
Единсвенная просьба, буду рад любому распространению среди друзей, коллег, знакомых — это даст безумный буст и поможет находить время, чтобы клепать для вас что-то новое
В любом случае — не прощаемся и не теряемся. Надеюсь, в этом месяце разберусь со всей бюрократией и пойдём дальше клепать контент 🚀
Наши ссылки:
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥24❤13👍8😁2😱1
🚫 Чёрные списки кандидатов в IT — тупиковая идея
Люди спрашивают: «А что если меня занесут в черный список?!»
Типа накрутил опыт или плохо ответил на собесе и на тебя поставили черную метку.
Давайте разберемся, почему сегодня черный список спасет Тим Лида от обманщика, но уже завтра станет предметом его шантажа.
Любые черные списки, где можно идентифицировать человека, являются источниками перс данных. Тут сразу 152 ФЗ, статья 88 ТК РФ. Коротко это о том, что нельзя хранить, обрабатывать или передавать перс данные третьим лицам без согласия человека. Иначе штраф, исправительные работы и далее по списку.
Плюс ко всему, если делается какой-то общий сервис неугодных, то он становится оператором перс данных. Дальше должны быть выполнены условия по хранению этих данных, безопасности и прочее. Короче говоря, там бюрократии еще больше, чем данных.
Теперь прикинем минусы таких BLACK LIST:
🔹Инструмент субъективизма.
Груб на собесе, сомнительное резюме, странный цвет глаз. Либо нужны правила, по которым человек может быть внесен или это будет чистая субъективщина.
🔹 Сегодня убили джуна, завтра не нашли сеньора
Человек плохо прошел собес, списал или накосячил - на него ставят черную метку. Через 2-3-100 лет он(а) вырастает в хорошего спеца для рынка, но компания уже не может взять его, так как черный список. Опять же, нужны правила выхода из черного списка. Это уже какой-то срок давности уголовного дела.
🔹 Шантаж
Захочешь уволиться раньше времени, мы тебя в черный список занесем! Ходишь параллельно на собесы, в черный список!
🔹 Коррупция
Надо человечка одного из черного списка убрать. Вопрос как будем решать: тихо мирно по телефону или моих псов подогнать? И наоборот. Надо человечка одного закинуть в бан лист, чтобы уже никогда не смог выбраться. Сколько будет стоить данный вопрос.
Ну т.е. простое эмоциональное желание подгадить другим людям, придумывая репрессивные методы, создает огромные риски вообще для всех. Плюс это еще одно увеличение очередных фильтров. Года опыта, возраст, а теперь еще и черный список.
В итоге по-настоящему идеальный кандидат у нас будет существовать только в книжке, как и какое-нибудь идеальное DWH.
Люди спрашивают: «А что если меня занесут в черный список?!»
Типа накрутил опыт или плохо ответил на собесе и на тебя поставили черную метку.
Давайте разберемся, почему сегодня черный список спасет Тим Лида от обманщика, но уже завтра станет предметом его шантажа.
Любые черные списки, где можно идентифицировать человека, являются источниками перс данных. Тут сразу 152 ФЗ, статья 88 ТК РФ. Коротко это о том, что нельзя хранить, обрабатывать или передавать перс данные третьим лицам без согласия человека. Иначе штраф, исправительные работы и далее по списку.
Плюс ко всему, если делается какой-то общий сервис неугодных, то он становится оператором перс данных. Дальше должны быть выполнены условия по хранению этих данных, безопасности и прочее. Короче говоря, там бюрократии еще больше, чем данных.
Теперь прикинем минусы таких BLACK LIST:
🔹Инструмент субъективизма.
Груб на собесе, сомнительное резюме, странный цвет глаз. Либо нужны правила, по которым человек может быть внесен или это будет чистая субъективщина.
🔹 Сегодня убили джуна, завтра не нашли сеньора
Человек плохо прошел собес, списал или накосячил - на него ставят черную метку. Через 2-3-100 лет он(а) вырастает в хорошего спеца для рынка, но компания уже не может взять его, так как черный список. Опять же, нужны правила выхода из черного списка. Это уже какой-то срок давности уголовного дела.
🔹 Шантаж
Захочешь уволиться раньше времени, мы тебя в черный список занесем! Ходишь параллельно на собесы, в черный список!
🔹 Коррупция
Надо человечка одного из черного списка убрать. Вопрос как будем решать: тихо мирно по телефону или моих псов подогнать? И наоборот. Надо человечка одного закинуть в бан лист, чтобы уже никогда не смог выбраться. Сколько будет стоить данный вопрос.
Ну т.е. простое эмоциональное желание подгадить другим людям, придумывая репрессивные методы, создает огромные риски вообще для всех. Плюс это еще одно увеличение очередных фильтров. Года опыта, возраст, а теперь еще и черный список.
В итоге по-настоящему идеальный кандидат у нас будет существовать только в книжке, как и какое-нибудь идеальное DWH.
🔥13❤9👍3👏1
Нашего Roadmap скоро не станет!
На самом деле мы скоро будем закрывать текущую версию и перекатывать всех на новую обновленную, где есть светлая-темная тема, оптимизация под мобильные устройства и так далее.
Если зайдете и полистаете, то увидите, что дизайн реально стал круче и удобнее. Плюс добавлена функция копирования блоков кода - это прям удобно. И хостится это все теперь на нашем РОССИЙСКОМ сервере, а не на ОМЕРИКАНСКОМ ГИТХАБЕ! Уууу американцы
➡️ Можно прямо сейчас получить ссылку на новый роадмап в боте @bootcampych_bot
И кстати там же записаться на ближайший поток в BootCamp или купить InfraSharing.
Роадмап будет также доступен всем и абсолютно бесплатно. Более того, мы сконцентрировались на материале для ДЕ и постоянно обновляем его.
На самом деле мы скоро будем закрывать текущую версию и перекатывать всех на новую обновленную, где есть светлая-темная тема, оптимизация под мобильные устройства и так далее.
Если зайдете и полистаете, то увидите, что дизайн реально стал круче и удобнее. Плюс добавлена функция копирования блоков кода - это прям удобно. И хостится это все теперь на нашем РОССИЙСКОМ сервере, а не на ОМЕРИКАНСКОМ ГИТХАБЕ! Уууу американцы
И кстати там же записаться на ближайший поток в BootCamp или купить InfraSharing.
Роадмап будет также доступен всем и абсолютно бесплатно. Более того, мы сконцентрировались на материале для ДЕ и постоянно обновляем его.
Please open Telegram to view this post
VIEW IN TELEGRAM
1👏28❤12😁9👍6🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Когда засиделся на своей обычной работе и решил поменять свою жизнь…
p.s. записывайся на наш ближайший поток буткемпа - @bootcampych_bot
Наши ссылки:
📍 Сайт Roadmappers.ru
💬 Телеграмм-чат Roadmappers.ru
💙 ВК
📺 YouTube(Инженерообязанный)
📺 YouTube(Евгений Виндюков)
💬 Телеграмм-канал(Инженерообязанный)
💬 Телеграмм-канал(Я - Дата Инженер)
p.s. записывайся на наш ближайший поток буткемпа - @bootcampych_bot
Наши ссылки:
Please open Telegram to view this post
VIEW IN TELEGRAM
😁15❤11🔥8👍1