Почти ультимативный обзор Criteria API с продвинутыми возможностями Hibernate
Вам нужно создать сложный запрос к реляционной БД с изменяющимися параметрами?
В этой статье рассмотрим основные возможности Criteria API. Также рассмотрим более продвинутые вещи, например создание CTE и оконных функций, которые есть у Hibernate Criteria API. В статье много примеров, которые смогут помочь при написании запросов Criteria API на практике.
Читать: https://habr.com/ru/articles/941130/
#ru
@database_design | Другие наши каналы
Вам нужно создать сложный запрос к реляционной БД с изменяющимися параметрами?
В этой статье рассмотрим основные возможности Criteria API. Также рассмотрим более продвинутые вещи, например создание CTE и оконных функций, которые есть у Hibernate Criteria API. В статье много примеров, которые смогут помочь при написании запросов Criteria API на практике.
Читать: https://habr.com/ru/articles/941130/
#ru
@database_design | Другие наши каналы
Свежее судебное дело о не подаче уведомления в Роскомнадзор
До начала обработки персональных данных оператор должен подать уведомление в Роскомнадзор. В сегодняшних реалиях по факту 99.9% самозанятых, ИП и организаций являются операторами и должны подать уведомление.
За неподачу или за несвоевременную подачу уведомления о намерении осуществлять обработку персональных данных предусмотрены штрафы.
И вот первые судебные ласточки по этому поводу...
Читать: https://habr.com/ru/articles/941280/
#ru
@database_design | Другие наши каналы
До начала обработки персональных данных оператор должен подать уведомление в Роскомнадзор. В сегодняшних реалиях по факту 99.9% самозанятых, ИП и организаций являются операторами и должны подать уведомление.
За неподачу или за несвоевременную подачу уведомления о намерении осуществлять обработку персональных данных предусмотрены штрафы.
И вот первые судебные ласточки по этому поводу...
Читать: https://habr.com/ru/articles/941280/
#ru
@database_design | Другие наши каналы
Автоматизация аналитических процессов с помощью GitHub Actions: практический гайд
Привет, Хабр! Хочу поделиться своей историей того, как я пришла к GitHub Actions в попытках автоматизировать сбор аналитики для личного использования.
Статья будет полезна аналитикам, которые хотят автоматизировать сбор и анализ данных для своих небольших пет‑проектов.
Читать: https://habr.com/ru/articles/941444/
#ru
@database_design | Другие наши каналы
Привет, Хабр! Хочу поделиться своей историей того, как я пришла к GitHub Actions в попытках автоматизировать сбор аналитики для личного использования.
Статья будет полезна аналитикам, которые хотят автоматизировать сбор и анализ данных для своих небольших пет‑проектов.
Читать: https://habr.com/ru/articles/941444/
#ru
@database_design | Другие наши каналы
Оптимизация БД начинается в пятницу
Всем привет, меня зовут Денис Лимарев, я руковожу разработкой в одной из продуктовых команд Uzum Tezkor. В этой статье разберу несколько оптимизаций запросов к БД, которыми наша команда пользуется при разработке своих сервисов, и опишу подход к оптимизациям запросов в целом. В своих проектах мы используем PostgreSQL версии 14.15, поэтому все запросы я проанализировал на ней, и ваши результаты могут отличаться в зависимости от вашей версии.
Читать: https://habr.com/ru/companies/uzum/articles/940624/
#ru
@database_design | Другие наши каналы
Всем привет, меня зовут Денис Лимарев, я руковожу разработкой в одной из продуктовых команд Uzum Tezkor. В этой статье разберу несколько оптимизаций запросов к БД, которыми наша команда пользуется при разработке своих сервисов, и опишу подход к оптимизациям запросов в целом. В своих проектах мы используем PostgreSQL версии 14.15, поэтому все запросы я проанализировал на ней, и ваши результаты могут отличаться в зависимости от вашей версии.
Читать: https://habr.com/ru/companies/uzum/articles/940624/
#ru
@database_design | Другие наши каналы
Переосмысление материализованных представлений: высокопроизводительный инструмент для единого lakehouse
Материализованные представления в StarRocks упрощают моделирование данных, ускоряют запросы и повышают актуальность данных в lakehouse‑архитектуре. Разбираем базовые возможности MV, три практических сценария — моделирование, прозрачное ускорение и «lake + warehouse» — и даём ссылки на актуальные рекомендации для StarRocks 3.5.
Читать: https://habr.com/ru/articles/941588/
#ru
@database_design | Другие наши каналы
Материализованные представления в StarRocks упрощают моделирование данных, ускоряют запросы и повышают актуальность данных в lakehouse‑архитектуре. Разбираем базовые возможности MV, три практических сценария — моделирование, прозрачное ускорение и «lake + warehouse» — и даём ссылки на актуальные рекомендации для StarRocks 3.5.
Читать: https://habr.com/ru/articles/941588/
#ru
@database_design | Другие наши каналы
Как мы устроили эпический BI Challenge: 80 героев, 1000 дашбордов и море данных в FineBI
Привет, Хабр! 👋 Меня зовут Семён Юников, я Head of BI в банке Уралсиб. Сегодня расскажу о том, как наш отдел собственными силами превратил масштабную задачу по улучшению аналитических артефактов в захватывающее и геймифицированное приключение под названием BI Challenge. Более 80 участников (внутренних разработчиков нашего Банка), свыше 1000 дашбордов, десятки внутренних обновлений и одно большое профессиональное сообщество.
😎
Читать: https://habr.com/ru/companies/uralsib/articles/941614/
#ru
@database_design | Другие наши каналы
Привет, Хабр! 👋 Меня зовут Семён Юников, я Head of BI в банке Уралсиб. Сегодня расскажу о том, как наш отдел собственными силами превратил масштабную задачу по улучшению аналитических артефактов в захватывающее и геймифицированное приключение под названием BI Challenge. Более 80 участников (внутренних разработчиков нашего Банка), свыше 1000 дашбордов, десятки внутренних обновлений и одно большое профессиональное сообщество.
😎
Читать: https://habr.com/ru/companies/uralsib/articles/941614/
#ru
@database_design | Другие наши каналы
Как успешно мигрировать с Oracle на Postgres Pro Enterprise
Миграция с Oracle в «ванильный» PostgreSQL ломается на пакетах, автономных транзакциях и коллекциях — там их просто нет. Разбираем, почему ora2pg спотыкается, что дает нативная реализация этих механизмов в Postgres Pro Enterprise и как ora2pgpro переводит PL/SQL семантически точно, без костылей и регулярок.
Читать: https://habr.com/ru/companies/postgrespro/articles/940836/
#ru
@database_design | Другие наши каналы
Миграция с Oracle в «ванильный» PostgreSQL ломается на пакетах, автономных транзакциях и коллекциях — там их просто нет. Разбираем, почему ora2pg спотыкается, что дает нативная реализация этих механизмов в Postgres Pro Enterprise и как ora2pgpro переводит PL/SQL семантически точно, без костылей и регулярок.
Читать: https://habr.com/ru/companies/postgrespro/articles/940836/
#ru
@database_design | Другие наши каналы
Записки оптимизатора 1С (ч.13). Что не так в журнале регистрации 1С в формате SQLite?
Хочу вернуться к старой проблеме с хранением журнала регистрации 1С в формате SQLite. История стара как мир, но мы нет-нет, а продолжаем с ней сталкиваться, поскольку очень часто большие информационные системы работают далеко не на самых свежих версиях платформы 1С, а администраторы системы не уследили за форматом хранения журнала регистрации (ЖР).
Наглядно посмотрим к чему может приводить ЖР в формате SQLite в многопользовательской нагруженной системе, а также выясним как администраторам и разработчикам понять, что проблема просадки производительности связана с чтением ЖР.
Читать: https://habr.com/ru/companies/softpoint/articles/941666/
#ru
@database_design | Другие наши каналы
Хочу вернуться к старой проблеме с хранением журнала регистрации 1С в формате SQLite. История стара как мир, но мы нет-нет, а продолжаем с ней сталкиваться, поскольку очень часто большие информационные системы работают далеко не на самых свежих версиях платформы 1С, а администраторы системы не уследили за форматом хранения журнала регистрации (ЖР).
Наглядно посмотрим к чему может приводить ЖР в формате SQLite в многопользовательской нагруженной системе, а также выясним как администраторам и разработчикам понять, что проблема просадки производительности связана с чтением ЖР.
Читать: https://habr.com/ru/companies/softpoint/articles/941666/
#ru
@database_design | Другие наши каналы
Разбираемся с ReplacingMergeTree в ClickHouse
В мире систем обработки данных редко встречаются инструменты, которые одновременно просты в использовании и решают болезненные задачи архитекторов и инженеров. ReplacingMergeTree в ClickHouse — один из таких случаев. Этот движок берёт на себя рутину по дедупликации и обновлению строк, позволяя хранить только актуальные версии данных без лишних костылей. Как он работает на практике, зачем нужен
Читать: https://habr.com/ru/companies/otus/articles/940894/
#ru
@database_design | Другие наши каналы
В мире систем обработки данных редко встречаются инструменты, которые одновременно просты в использовании и решают болезненные задачи архитекторов и инженеров. ReplacingMergeTree в ClickHouse — один из таких случаев. Этот движок берёт на себя рутину по дедупликации и обновлению строк, позволяя хранить только актуальные версии данных без лишних костылей. Как он работает на практике, зачем нужен
ORDER BY, чем помогает столбец version и какие подводные камни могут ждать при проектировании — разбираем в статье.Читать: https://habr.com/ru/companies/otus/articles/940894/
#ru
@database_design | Другие наши каналы
Новый релиз MariaDB Enterprise Kubernetes Operator автоматизирует управление базами данных в Kubernetes, упрощая задачи резервного копирования и восстановления. Это делает работу с данными более надежной и эффективной, ускоряя разработку приложений. Подробнее по ссылке.
Читать подробнее
#en
@database_design | Другие наши каналы
Читать подробнее
#en
@database_design | Другие наши каналы
MariaDB
MariaDB Enterprise Kubernetes Operator 25.08: Next-Level Disaster Recovery and Expanded Platform Support | MariaDB
New version of MariaDB Enterprise Kubernetes Operator brings next-level disaster recovery and expanded Platform support.
Сравнение транзакционных систем Oracle и PostgreSQL
Механизм реализации транзакций - основная часть реляционных баз данных. Он упрощает разработку приложений, в которых гарантируется целостность данных. Стандарт SQL регламентирует, часть свойств по поддержке транзакций, но многие детали не стандартизованы. Как следствие, реализация поддержки транзакций в разных базах данных может существенно различаться. В настоящее время, многие пытаются перейти с Oracle на PostgreSQL. Для миграции приложений важно понимать различия в реализации работы транзакций, иначе можно столкнуться с неприятными сюрпризами, которые могут поставить под угрозу производительность и целостность данных. Поэтому я решил, что полезно сравнить реализацию работы транзакций в Oracle и PostgreSQL и свести различия в одной статье.
Читать: https://habr.com/ru/articles/942242/
#ru
@database_design | Другие наши каналы
Механизм реализации транзакций - основная часть реляционных баз данных. Он упрощает разработку приложений, в которых гарантируется целостность данных. Стандарт SQL регламентирует, часть свойств по поддержке транзакций, но многие детали не стандартизованы. Как следствие, реализация поддержки транзакций в разных базах данных может существенно различаться. В настоящее время, многие пытаются перейти с Oracle на PostgreSQL. Для миграции приложений важно понимать различия в реализации работы транзакций, иначе можно столкнуться с неприятными сюрпризами, которые могут поставить под угрозу производительность и целостность данных. Поэтому я решил, что полезно сравнить реализацию работы транзакций в Oracle и PostgreSQL и свести различия в одной статье.
Читать: https://habr.com/ru/articles/942242/
#ru
@database_design | Другие наши каналы
Уровни изоляции транзакций для собеседования и работы
Уровни изоляции транзакций – один из частых вопросов на собеседовании. Есть мнение, что один раз настроил и не вмешиваешься, но на практике не всегда так. Участвовал в нескольких проектах, где не знание уровней изоляции привело к трудноуловимым ошибкам и искажениям данных. В какой ситуации какой уровень изоляции лучше - разбираем в статье.
Читать: https://habr.com/ru/articles/942394/
#ru
@database_design | Другие наши каналы
Уровни изоляции транзакций – один из частых вопросов на собеседовании. Есть мнение, что один раз настроил и не вмешиваешься, но на практике не всегда так. Участвовал в нескольких проектах, где не знание уровней изоляции привело к трудноуловимым ошибкам и искажениям данных. В какой ситуации какой уровень изоляции лучше - разбираем в статье.
Читать: https://habr.com/ru/articles/942394/
#ru
@database_design | Другие наши каналы
Уровни изоляции транзакций для собеседования и работы
Уровни изоляции транзакций – один из частых вопросов на собеседовании. Есть мнение, что один раз настроил и не вмешиваешься, но на практике не всегда так. Участвовал в нескольких проектах, где не знание уровней изоляции привело к трудноуловимым ошибкам и искажениям данных. В какой ситуации какой уровень изоляции лучше - разбираем в статье.
Читать: https://habr.com/ru/articles/942394/
#ru
@database_design | Другие наши каналы
Уровни изоляции транзакций – один из частых вопросов на собеседовании. Есть мнение, что один раз настроил и не вмешиваешься, но на практике не всегда так. Участвовал в нескольких проектах, где не знание уровней изоляции привело к трудноуловимым ошибкам и искажениям данных. В какой ситуации какой уровень изоляции лучше - разбираем в статье.
Читать: https://habr.com/ru/articles/942394/
#ru
@database_design | Другие наши каналы
От многопоточности в ОС до «простукивания портов»: избранное у нас на DIY-площадке
Мы в Beeline Cloud развиваем площадку для обмена опытом между ИТ-специалистами — «вАЙТИ». Делимся техническими материалами, которые могут быть полезны хабражителям: как перекинуть два терабайта данных между дата-центрами за шесть часов, как перевести почту на локальный сервер Postfix, а также — какие SQL-запросы могли бы помочь Остапу Бендеру найти заветные стулья... (и другие материалы).
Читать: https://habr.com/ru/companies/beeline_cloud/articles/942446/
#ru
@database_design | Другие наши каналы
Мы в Beeline Cloud развиваем площадку для обмена опытом между ИТ-специалистами — «вАЙТИ». Делимся техническими материалами, которые могут быть полезны хабражителям: как перекинуть два терабайта данных между дата-центрами за шесть часов, как перевести почту на локальный сервер Postfix, а также — какие SQL-запросы могли бы помочь Остапу Бендеру найти заветные стулья... (и другие материалы).
Читать: https://habr.com/ru/companies/beeline_cloud/articles/942446/
#ru
@database_design | Другие наши каналы
От многопоточности в ОС до «простукивания портов»: избранные материалы у нас на DIY-площадке
Мы в Beeline Cloud развиваем площадку для обмена опытом между ИТ-специалистами — «вАЙТИ». Делимся техническими материалами, которые могут быть полезны хабражителям: как перекинуть два терабайта данных между дата-центрами за шесть часов, как перевести почту на локальный сервер Postfix, а также — какие SQL-запросы могли бы помочь Остапу Бендеру найти заветные стулья... (и другие материалы).
Читать: https://habr.com/ru/companies/beeline_cloud/articles/942446/
#ru
@database_design | Другие наши каналы
Мы в Beeline Cloud развиваем площадку для обмена опытом между ИТ-специалистами — «вАЙТИ». Делимся техническими материалами, которые могут быть полезны хабражителям: как перекинуть два терабайта данных между дата-центрами за шесть часов, как перевести почту на локальный сервер Postfix, а также — какие SQL-запросы могли бы помочь Остапу Бендеру найти заветные стулья... (и другие материалы).
Читать: https://habr.com/ru/companies/beeline_cloud/articles/942446/
#ru
@database_design | Другие наши каналы
UltraRAM: память, которая меняет правила игры
Память в компьютерах и гаджетах много лет делится на два направления. DRAM — быстрая, но требует постоянного питания. NAND-флеш — надежная и долговечная, зато ощутимо медленнее. Инженеры десятилетиями мечтали о «золотой середине», которая объединит лучшее из обоих подходов.
И похоже, такая технология наконец появилась. UltraRAM обещает скорость на уровне DRAM, энергонезависимость и долговечность, в разы превосходящую NAND, причем с расчетным сроком хранения данных до тысячи лет. Давайте разбираться, как она устроена, какие возможности открывает и почему способна перевернуть рынок вычислений.
Читать: https://habr.com/ru/companies/ru_mts/articles/942150/
#ru
@database_design | Другие наши каналы
Память в компьютерах и гаджетах много лет делится на два направления. DRAM — быстрая, но требует постоянного питания. NAND-флеш — надежная и долговечная, зато ощутимо медленнее. Инженеры десятилетиями мечтали о «золотой середине», которая объединит лучшее из обоих подходов.
И похоже, такая технология наконец появилась. UltraRAM обещает скорость на уровне DRAM, энергонезависимость и долговечность, в разы превосходящую NAND, причем с расчетным сроком хранения данных до тысячи лет. Давайте разбираться, как она устроена, какие возможности открывает и почему способна перевернуть рынок вычислений.
Читать: https://habr.com/ru/companies/ru_mts/articles/942150/
#ru
@database_design | Другие наши каналы
YDB в мире Java: от нативного клиента до ORM’ов за 1 год
Популярность баз данных и языков программирования определяется не только их собственными характеристиками, но и ассортиментом доступных для разработчиков библиотек и фреймворков.
Меня зовут Кирилл Курдюков, в 2024 году я выступил в Питере на Joker — конференции для Java-разработчиков — с историей о том, как мы с командой делаем СУБД Яндекса удобной для джавистов.
Под катом статья, написанная по мотивам доклада. Это история о том, как маленькими шагами пройти путь от нативного клиента на Java до поддержки Hibernate, Liquibase, jOOQ и других популярных в мире Java-разработки решений.
Читать: https://habr.com/ru/companies/ydb/articles/942672/
#ru
@database_design | Другие наши каналы
Популярность баз данных и языков программирования определяется не только их собственными характеристиками, но и ассортиментом доступных для разработчиков библиотек и фреймворков.
Меня зовут Кирилл Курдюков, в 2024 году я выступил в Питере на Joker — конференции для Java-разработчиков — с историей о том, как мы с командой делаем СУБД Яндекса удобной для джавистов.
Под катом статья, написанная по мотивам доклада. Это история о том, как маленькими шагами пройти путь от нативного клиента на Java до поддержки Hibernate, Liquibase, jOOQ и других популярных в мире Java-разработки решений.
Читать: https://habr.com/ru/companies/ydb/articles/942672/
#ru
@database_design | Другие наши каналы
Устраиваем свой Data QA с PyTest и фикстурами
Рабочий подход к тестированию трансформации данных в ETL-процессах. На примере Python-проекта с pytest, allure и psycopg2 демонстрируется, как автоматизировать создание и наполнение таблиц, хранить схемы и данные, а затем сравнивать результат.
Читать: «Устраиваем свой Data QA с PyTest и фикстурами»
#ru
@database_design | Другие наши каналы
Рабочий подход к тестированию трансформации данных в ETL-процессах. На примере Python-проекта с pytest, allure и psycopg2 демонстрируется, как автоматизировать создание и наполнение таблиц, хранить схемы и данные, а затем сравнивать результат.
Читать: «Устраиваем свой Data QA с PyTest и фикстурами»
#ru
@database_design | Другие наши каналы
Новая версия Oracle Data Masking в Enterprise Manager 24ai включает более 150 новых типов чувствительных данных и автоматически задаёт формат маскировки. Это значительно снижает трудозатраты при создании правил защиты данных. Подробности в статье.
Читать подробнее
#en
@database_design | Другие наши каналы
Читать подробнее
#en
@database_design | Другие наши каналы
Telegram
DATABASE DESIGN
Лучшие материалы по работе с хранилищами данных на русском и английском языке
Разместить рекламу: @tproger_sales_bot
Правила общения: https://tprg.ru/rules
Другие каналы: @tproger_channels
Другие наши проекты: https://tprg.ru/media
Разместить рекламу: @tproger_sales_bot
Правила общения: https://tprg.ru/rules
Другие каналы: @tproger_channels
Другие наши проекты: https://tprg.ru/media
Как мониторить сотни инстансов PostgreSQL и не сойти с ума
Если вы инженер в крупной компании, а особенно если ваша организация поставляет свои услуги в виде SaaS-решений, то вам так или иначе придется решать задачу мониторинга работы всех ваших баз PostgreSQL. На них часто бывает завязан функционал, важный для компании с точки зрения финансовых рисков, поэтому крайне желательно организовать не только мониторинг, но и получение уведомлений, когда что-то идет не по плану (или пойдет в ближайшем будущем). В рамках статьи мы рассмотрим несколько способов, как это можно сделать: самостоятельно, с использованием уже привычного стека Prometheus + Grafana, либо подключая сторонние open-source специализированные решения для мониторинга PostgreSQL, либо же используя специализированные платные решения. По каждому варианту поймем все плюсы и минусы, чтобы вы cмогли более уверенно выбрать свой путь.
Читать: https://habr.com/ru/companies/tantor/articles/940752/
#ru
@database_design | Другие наши каналы
Если вы инженер в крупной компании, а особенно если ваша организация поставляет свои услуги в виде SaaS-решений, то вам так или иначе придется решать задачу мониторинга работы всех ваших баз PostgreSQL. На них часто бывает завязан функционал, важный для компании с точки зрения финансовых рисков, поэтому крайне желательно организовать не только мониторинг, но и получение уведомлений, когда что-то идет не по плану (или пойдет в ближайшем будущем). В рамках статьи мы рассмотрим несколько способов, как это можно сделать: самостоятельно, с использованием уже привычного стека Prometheus + Grafana, либо подключая сторонние open-source специализированные решения для мониторинга PostgreSQL, либо же используя специализированные платные решения. По каждому варианту поймем все плюсы и минусы, чтобы вы cмогли более уверенно выбрать свой путь.
Читать: https://habr.com/ru/companies/tantor/articles/940752/
#ru
@database_design | Другие наши каналы
Сравнение транзакционных систем Oracle и PostgreSQL
Механизм реализации транзакций - основная часть реляционных баз данных. Он упрощает разработку приложений, в которых гарантируется целостность данных. Стандарт SQL регламентирует, часть свойств по поддержке транзакций, но многие детали не стандартизованы. Как следствие, реализация поддержки транзакций в разных базах данных может существенно различаться. В настоящее время, многие пытаются перейти с Oracle на PostgreSQL. Для миграции приложений важно понимать различия в реализации работы транзакций, иначе можно столкнуться с неприятными сюрпризами, которые могут поставить под угрозу производительность и целостность данных. Поэтому Лоренс Альбе решил, что полезно сравнить реализацию работы транзакций в Oracle и PostgreSQL и свести различия в одной статье.
Читать: https://habr.com/ru/companies/tantor/articles/942242/
#ru
@database_design | Другие наши каналы
Механизм реализации транзакций - основная часть реляционных баз данных. Он упрощает разработку приложений, в которых гарантируется целостность данных. Стандарт SQL регламентирует, часть свойств по поддержке транзакций, но многие детали не стандартизованы. Как следствие, реализация поддержки транзакций в разных базах данных может существенно различаться. В настоящее время, многие пытаются перейти с Oracle на PostgreSQL. Для миграции приложений важно понимать различия в реализации работы транзакций, иначе можно столкнуться с неприятными сюрпризами, которые могут поставить под угрозу производительность и целостность данных. Поэтому Лоренс Альбе решил, что полезно сравнить реализацию работы транзакций в Oracle и PostgreSQL и свести различия в одной статье.
Читать: https://habr.com/ru/companies/tantor/articles/942242/
#ru
@database_design | Другие наши каналы