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 | Другие наши каналы
Что такое снапшоты в СХД и как мы их реализовали в TATLIN.BACKUP
Еще год назад мы считали, что снапшоты без репликации не являются приоритетом для нашей команды. Но практика показала обратное: вирусы-шифровальщики, сбои и ошибки могут повредить резервные копии и нарушить их целостность. Чтобы защитить данные и дать возможность быстро восстановить их в неизменном виде, мы реализовали поддержку снапшотов в TATLIN.BACKUP. Новый функционал уже доказал свою эффективность и получил положительные отзывы клиентов.
Меня зовут Ростислав, я эксперт по разработке ПО отдела систем обработки данных в YADRO. Сегодня разберемся, как устроены наши снапшоты и какие у них особенности. Для этого совершим экскурс в мир систем хранения данных (СХД) и рассмотрим их устройство.
Читать: https://habr.com/ru/companies/yadro/articles/941358/
#ru
@database_design | Другие наши каналы
Еще год назад мы считали, что снапшоты без репликации не являются приоритетом для нашей команды. Но практика показала обратное: вирусы-шифровальщики, сбои и ошибки могут повредить резервные копии и нарушить их целостность. Чтобы защитить данные и дать возможность быстро восстановить их в неизменном виде, мы реализовали поддержку снапшотов в TATLIN.BACKUP. Новый функционал уже доказал свою эффективность и получил положительные отзывы клиентов.
Меня зовут Ростислав, я эксперт по разработке ПО отдела систем обработки данных в YADRO. Сегодня разберемся, как устроены наши снапшоты и какие у них особенности. Для этого совершим экскурс в мир систем хранения данных (СХД) и рассмотрим их устройство.
Читать: https://habr.com/ru/companies/yadro/articles/941358/
#ru
@database_design | Другие наши каналы
Django MongoDB Backend: новая эра для разработчиков Django
Теперь интеграция MongoDB с Django доступна в стабильной версии. Это решает задачи гибкости документной модели MongoDB и привычного ORM Django, позволяя масштабировать приложения на любой облачной платформе. Как AI и MongoDB меняют редакционные процессы
Комбинация генеративного ИИ и гибких баз данных MongoDB помогает редакциям быстро находить тренды и создавать качественный контент. Такой подход снижает творческую усталость и ускоряет процесс от идеи до готовой статьи, обеспечивая надежность источников.
Читать подробнее
#en
@database_design | Другие наши каналы
Теперь интеграция MongoDB с Django доступна в стабильной версии. Это решает задачи гибкости документной модели MongoDB и привычного ORM Django, позволяя масштабировать приложения на любой облачной платформе. Как AI и MongoDB меняют редакционные процессы
Комбинация генеративного ИИ и гибких баз данных MongoDB помогает редакциям быстро находить тренды и создавать качественный контент. Такой подход снижает творческую усталость и ускоряет процесс от идеи до готовой статьи, обеспечивая надежность источников.
Читать подробнее
#en
@database_design | Другие наши каналы
Проекции в Vertica: что это, как использовать и почему не стоит создавать их под каждый запрос
Иван Якунин, продуктовый аналитик команды Fintech Marketplace, рассказал про то, как в Авито работают с Vertica, и на примерах объяснил, что такое проекции, и когда их стоит использовать.
Читать: «Проекции в Vertica: что это, как использовать и почему не стоит создавать их под каждый запрос»
#ru
@database_design | Другие наши каналы
Иван Якунин, продуктовый аналитик команды Fintech Marketplace, рассказал про то, как в Авито работают с Vertica, и на примерах объяснил, что такое проекции, и когда их стоит использовать.
Читать: «Проекции в Vertica: что это, как использовать и почему не стоит создавать их под каждый запрос»
#ru
@database_design | Другие наши каналы
Пять возможностей PostgreSQL, о которых редко вспоминают
Привет, Хабр!
Постгрес – не просто реляционная БД, а настоящий кладезь фич, о которых начинающий разработчик может и не догадываться. Всё началось с того, что PostgreSQL изначально писался на С/C++ и всегда тянуло к расширению стандартного SQL набора возможностей. Так однажды разработчики решили добавить в него JSONB, логику на уровне запросов и многое другое – что в итоге сделало его не хуже NoSQL-систем. Но вернёмся к малоизвестным фичам. Ниже – пять приёмов и возможностей, которые неожиданно полезны в повседневной работе.
Читать: https://habr.com/ru/companies/otus/articles/941456/
#ru
@database_design | Другие наши каналы
Привет, Хабр!
Постгрес – не просто реляционная БД, а настоящий кладезь фич, о которых начинающий разработчик может и не догадываться. Всё началось с того, что PostgreSQL изначально писался на С/C++ и всегда тянуло к расширению стандартного SQL набора возможностей. Так однажды разработчики решили добавить в него JSONB, логику на уровне запросов и многое другое – что в итоге сделало его не хуже NoSQL-систем. Но вернёмся к малоизвестным фичам. Ниже – пять приёмов и возможностей, которые неожиданно полезны в повседневной работе.
Читать: https://habr.com/ru/companies/otus/articles/941456/
#ru
@database_design | Другие наши каналы
Новый федеральный закон в США открывает путь для выпуска стейблкоинов банками и интеграции с платёжными системами. MongoDB помогает создавать масштабируемые и безопасные банковские решения для работы с цифровыми активами, обеспечивая гибкость и соответствие новым требованиям. Новый Django MongoDB Backend объединяет удобство Django с гибкой документной моделью MongoDB. Это решение поддерживает знакомый ORM и масштабируется на облаках AWS, Google и Azure, упрощая разработку AI-приложений и быстрый выпуск продуктов без потери производительности.
Читать подробнее
#en
@database_design | Другие наши каналы
Читать подробнее
#en
@database_design | Другие наши каналы
SPDK в публичном облаке: лезем внутрь дисковой подсистемы в user-space
Всем привет! Меня зовут Василий Иванов, я ведущий разработчик в команде Data Storage в MWS Cloud Platform, занимаюсь тем, чтобы диски наших виртуальных машин были надёжные и быстрые.
В этой статье я расскажу, как данные попадают из виртуальной машины в хранилище. Рассмотрим, как мы используем SPDK, зачем мы вообще взялись за этот низкоуровневый фреймворк, а также почему просто «заиспользовать» не получилось и пришлось копать, как всё устроено в самой глубине. Также мы увидим, как high performance фреймворка при нашем количестве устройств не хватало и какие доработки пришлось сделать.
Эта статья выходит по следам моего доклада на летнем Highload 2025 года.
Читать: https://habr.com/ru/companies/mws/articles/943206/
#ru
@database_design | Другие наши каналы
Всем привет! Меня зовут Василий Иванов, я ведущий разработчик в команде Data Storage в MWS Cloud Platform, занимаюсь тем, чтобы диски наших виртуальных машин были надёжные и быстрые.
В этой статье я расскажу, как данные попадают из виртуальной машины в хранилище. Рассмотрим, как мы используем SPDK, зачем мы вообще взялись за этот низкоуровневый фреймворк, а также почему просто «заиспользовать» не получилось и пришлось копать, как всё устроено в самой глубине. Также мы увидим, как high performance фреймворка при нашем количестве устройств не хватало и какие доработки пришлось сделать.
Эта статья выходит по следам моего доклада на летнем Highload 2025 года.
Читать: https://habr.com/ru/companies/mws/articles/943206/
#ru
@database_design | Другие наши каналы
Новая эра разработки с AI и MongoDB
Партнёрство MongoDB и Hope AI представляет мощный инструмент для создания и масштабирования приложений. Hope AI помогает планировать архитектуру, генерировать код и обеспечивает полное управление и безопасность, ускоряя процесс разработки без потери контроля. Как MongoDB помогает банкам внедрять стабильные криптовалюты. Гибкость и масштабируемость MongoDB позволяют эффективно управлять сложными данными, обеспечивать безопасность и быстро интегрироваться с блокчейном. Это ключ к успешному развитию цифровых активов и стабильныхcoin-платформ.
Читать подробнее
#en
@database_design | Другие наши каналы
Партнёрство MongoDB и Hope AI представляет мощный инструмент для создания и масштабирования приложений. Hope AI помогает планировать архитектуру, генерировать код и обеспечивает полное управление и безопасность, ускоряя процесс разработки без потери контроля. Как MongoDB помогает банкам внедрять стабильные криптовалюты. Гибкость и масштабируемость MongoDB позволяют эффективно управлять сложными данными, обеспечивать безопасность и быстро интегрироваться с блокчейном. Это ключ к успешному развитию цифровых активов и стабильныхcoin-платформ.
Читать подробнее
#en
@database_design | Другие наши каналы
Новый инструмент MongoDB — Chatbot Demo Builder — позволяет без кода создать чатбота на основе PDF. Пример — интерактивный гид по Манхэттену с рекомендациями и прозрачной работой в браузере. Идеально для быстрого прототипирования и экспериментов с ИИ. MongoDB и Hope AI: новая эра разработки приложений
Текст: Партнёрство MongoDB и Hope AI ускоряет создание приложений за счёт AI-планирования архитектуры и генерации кода, сохраняя полный контроль разработчиков. Совместная работа и безопасность кода выходят на новый уровень, открывая перспективы для быстрого и гибкого развития проектов.
Читать подробнее
#en
@database_design | Другие наши каналы
Текст: Партнёрство MongoDB и Hope AI ускоряет создание приложений за счёт AI-планирования архитектуры и генерации кода, сохраняя полный контроль разработчиков. Совместная работа и безопасность кода выходят на новый уровень, открывая перспективы для быстрого и гибкого развития проектов.
Читать подробнее
#en
@database_design | Другие наши каналы
Как оптимизация полей в MongoDB повышает скорость работы приложений. В статье раскрывают, как сокращение названий и замена пустых строк на null уменьшают размер документов, что улучшает кеширование и производительность баз данных без потери данных.
Читать подробнее
#en
@database_design | Другие наши каналы
Читать подробнее
#en
@database_design | Другие наши каналы
Реализация Outbox паттерна в разных языках программирования
Привет, Хабр!
Сегодня мы рассмотрим реализацию Outbox паттерна в разных ЯП. Цель простая: одним атомарным действием обновлять бизнес-данные и фиксировать факт события, а затем надежно доставлять его в брокер. Разберем общую схему, конкуренцию воркеров, ретраи, дедупликацию, метрики и покажу, как это собрать на C#, Java, Go, Python и Node.js.
Читать: https://habr.com/ru/companies/otus/articles/942122/
#ru
@database_design | Другие наши каналы
Привет, Хабр!
Сегодня мы рассмотрим реализацию Outbox паттерна в разных ЯП. Цель простая: одним атомарным действием обновлять бизнес-данные и фиксировать факт события, а затем надежно доставлять его в брокер. Разберем общую схему, конкуренцию воркеров, ретраи, дедупликацию, метрики и покажу, как это собрать на C#, Java, Go, Python и Node.js.
Читать: https://habr.com/ru/companies/otus/articles/942122/
#ru
@database_design | Другие наши каналы
Глобальные индексы для секций в Postgres Pro: глобальная уникальность без костылей
Когда фильтра по ключу секционирования нет, локальные индексы превращаются в марафон по секциям. Новый gbtree держит единый каталог ключей и прыгает к строке по PK; покажем алгоритм, реальные цифры и ограничения (PK обязателен, ON CONFLICT не работает) — и где это решает боль в CRM/биллинге.
Читать: https://habr.com/ru/companies/postgrespro/articles/941008/
#ru
@database_design | Другие наши каналы
Когда фильтра по ключу секционирования нет, локальные индексы превращаются в марафон по секциям. Новый gbtree держит единый каталог ключей и прыгает к строке по PK; покажем алгоритм, реальные цифры и ограничения (PK обязателен, ON CONFLICT не работает) — и где это решает боль в CRM/биллинге.
Читать: https://habr.com/ru/companies/postgrespro/articles/941008/
#ru
@database_design | Другие наши каналы
SQL для всех: от новичка до профи. Полный гид по тренажерам, курсам и песочницам
Привет, Хабр! Часто ли вам приходилось часами смотреть на сложный JOIN, пытаясь понять, почему он работает не так, как надо? Или, может, вы только начинаете свой путь в IT и слышите со всех сторон, что без SQL никуда? Вы правы, так и есть. SQL – это не просто строчки кода, это ваш ключ к данным, настоящий швейцарский нож для любого тестировщика, аналитика или разработчика.
Все мы знаем, что можно прочитать тонну теории, но без реальной практики она быстро выветривается из головы. Именно поэтому я решил поделиться своей коллекцией проверенных тренажеров и ресурсов. Здесь есть все, чтобы вы могли уверенно «заговорить» на языке данных: от уютных песочниц для новичков до хардкорных задачек с реальных собеседований в ведущих IT-компаниях. Так что устраивайтесь поудобнее, добавляйте в закладки и поехали тренироваться!
Читать: https://habr.com/ru/articles/943924/
#ru
@database_design | Другие наши каналы
Привет, Хабр! Часто ли вам приходилось часами смотреть на сложный JOIN, пытаясь понять, почему он работает не так, как надо? Или, может, вы только начинаете свой путь в IT и слышите со всех сторон, что без SQL никуда? Вы правы, так и есть. SQL – это не просто строчки кода, это ваш ключ к данным, настоящий швейцарский нож для любого тестировщика, аналитика или разработчика.
Все мы знаем, что можно прочитать тонну теории, но без реальной практики она быстро выветривается из головы. Именно поэтому я решил поделиться своей коллекцией проверенных тренажеров и ресурсов. Здесь есть все, чтобы вы могли уверенно «заговорить» на языке данных: от уютных песочниц для новичков до хардкорных задачек с реальных собеседований в ведущих IT-компаниях. Так что устраивайтесь поудобнее, добавляйте в закладки и поехали тренироваться!
Читать: https://habr.com/ru/articles/943924/
#ru
@database_design | Другие наши каналы
MongoDB расширяет центр разработок в Торонто, создавая команды для инновационных проектов. Исследование показало, что оптимизация структуры документов — отказ от пустых строк и короткие имена полей — значительно повышает производительность базы данных.
Читать подробнее
#en
@database_design | Другие наши каналы
Читать подробнее
#en
@database_design | Другие наши каналы
❤1
Как система Документы помогает документообороту в отделе кадров
В предыдущей статье мы рассмотрели, как система Документы способствует выстраиванию процесса управления документацией в административно-хозяйственном отделе (АХО). На этот раз мы рассмотрим отдел кадров.
Читать: https://habr.com/ru/companies/T1Holding/articles/938966/
#ru
@database_design | Другие наши каналы
В предыдущей статье мы рассмотрели, как система Документы способствует выстраиванию процесса управления документацией в административно-хозяйственном отделе (АХО). На этот раз мы рассмотрим отдел кадров.
Читать: https://habr.com/ru/companies/T1Holding/articles/938966/
#ru
@database_design | Другие наши каналы
Оптимизация MongoDB для банков и технологий
В статье рассказывается о многоагентной системе на базе MongoDB и Confluent, которая ускоряет обработку жалоб в банках. Обсуждаются методы оптимизации структуры документов для повышения производительности и расширение команды MongoDB в Торонто.
Читать подробнее
#en
@database_design | Другие наши каналы
В статье рассказывается о многоагентной системе на базе MongoDB и Confluent, которая ускоряет обработку жалоб в банках. Обсуждаются методы оптимизации структуры документов для повышения производительности и расширение команды MongoDB в Торонто.
Читать подробнее
#en
@database_design | Другие наши каналы
Обновления безопасности для Audit Vault и Database Firewall доступны. Рекомендуется установить версию AVDF 20.15, чтобы обеспечить защиту и соответствие систем актуальным требованиям безопасности. Не пропустите важный апдейт для вашего ПО.
Читать подробнее
#en
@database_design | Другие наши каналы
Читать подробнее
#en
@database_design | Другие наши каналы