Жизненный цикл данных под контролем: знакомство с ILM на примере расширения для Postgres Pro Enterprise 17
Если данные в БД растут как на дрожжах, а вместе с ними и расходы на хранение, то пора познакомиться с концепцией управления жизненным циклом информации (ILM). Мы уже внедрили в Postgres Pro Enterprise 17 возможность для внедрения автоматического переноса редко используемых данных в более дешёвые хранилища. Подробности в статье.
Читать: https://habr.com/ru/companies/postgrespro/articles/890238/
#ru
@database_design | Другие наши каналы
Если данные в БД растут как на дрожжах, а вместе с ними и расходы на хранение, то пора познакомиться с концепцией управления жизненным циклом информации (ILM). Мы уже внедрили в Postgres Pro Enterprise 17 возможность для внедрения автоматического переноса редко используемых данных в более дешёвые хранилища. Подробности в статье.
Читать: https://habr.com/ru/companies/postgrespro/articles/890238/
#ru
@database_design | Другие наши каналы
Жизненный цикл данных под контролем: знакомство с ILM на примере расширения для Postgres Pro Enterprise 17
Если данные в БД растут как на дрожжах, а вместе с ними и расходы на хранение, то пора познакомиться с концепцией управления жизненным циклом информации (ILM). Мы уже внедрили в Postgres Pro Enterprise 17 возможность для внедрения автоматического переноса редко используемых данных в более дешёвые хранилища. Подробности в статье.
Читать: https://habr.com/ru/companies/postgrespro/articles/890238/
#ru
@database_design | Другие наши каналы
Если данные в БД растут как на дрожжах, а вместе с ними и расходы на хранение, то пора познакомиться с концепцией управления жизненным циклом информации (ILM). Мы уже внедрили в Postgres Pro Enterprise 17 возможность для внедрения автоматического переноса редко используемых данных в более дешёвые хранилища. Подробности в статье.
Читать: https://habr.com/ru/companies/postgrespro/articles/890238/
#ru
@database_design | Другие наши каналы
Сжатые структуры данных
Введение
Несколько месяцев назад в поисках идей по ускорению кода я изучал множество научных статей по computer science. Не буду притворяться, что хорошо их понимал, но меня не пугает непонятное, и я готов признать своё невежество1. Я обнаружил статью, написанную пятнадцать лет назад2, в которой было множество новых для меня концепций. Мне никак не удавалось в них разобраться.
Что же делать дальше? Можно искать другие статьи, чтобы они заполнили мои пробелы. Это рискованное предприятие, потому что они могут запутать ещё больше, но избежать этого нельзя. Я нашёл статью с нужной структурой данных, в которой упоминался исходный код с веб-сайта. Код был написан на C++, а я работаю на Rust, но решил, что всё равно стоит на него взглянуть. Однако зайдя на сайт, я не обнаружил там ресурс, поэтому я написал владельцу веб-сайта, который оказался преподавателем computer science.
Этот преподаватель (Гонсало Наварро) очень тепло меня принял и сразу же ответил мне3 4. И только в процессе общения с ним я осознал, что видел его фамилию на множестве статей в этой области. Оказалось, я познакомился с одним из специалистов мирового уровня в области сжатых структур данных (succinct data structure). Невежество может завести очень далеко.
Что же такое сжатые структуры данных? Если вы изучали в последние десятилетия computer science, то могли сталкиваться с ними, но мне не доводилось встречаться с ними в процессе работы программистом, а если и доводилось, то я сразу же о них забыл. Но я считаю, что эти структуры данных обладают потрясающими свойствами.
Все мы пользуемся массивами и хэш-таблицами5, популярны также различные деревья. Нам не нужно полностью понимать их устройство, чтобы эффективно пользоваться их свойствами. А теперь я задаюсь вопросом, почему же люди не используют сжатые структуры данных чаще.
Я решил, что стоит немного о них рассказать.
Читать: https://habr.com/ru/companies/ruvds/articles/890232/
#ru
@database_design | Другие наши каналы
Введение
Несколько месяцев назад в поисках идей по ускорению кода я изучал множество научных статей по computer science. Не буду притворяться, что хорошо их понимал, но меня не пугает непонятное, и я готов признать своё невежество1. Я обнаружил статью, написанную пятнадцать лет назад2, в которой было множество новых для меня концепций. Мне никак не удавалось в них разобраться.
Что же делать дальше? Можно искать другие статьи, чтобы они заполнили мои пробелы. Это рискованное предприятие, потому что они могут запутать ещё больше, но избежать этого нельзя. Я нашёл статью с нужной структурой данных, в которой упоминался исходный код с веб-сайта. Код был написан на C++, а я работаю на Rust, но решил, что всё равно стоит на него взглянуть. Однако зайдя на сайт, я не обнаружил там ресурс, поэтому я написал владельцу веб-сайта, который оказался преподавателем computer science.
Этот преподаватель (Гонсало Наварро) очень тепло меня принял и сразу же ответил мне3 4. И только в процессе общения с ним я осознал, что видел его фамилию на множестве статей в этой области. Оказалось, я познакомился с одним из специалистов мирового уровня в области сжатых структур данных (succinct data structure). Невежество может завести очень далеко.
Что же такое сжатые структуры данных? Если вы изучали в последние десятилетия computer science, то могли сталкиваться с ними, но мне не доводилось встречаться с ними в процессе работы программистом, а если и доводилось, то я сразу же о них забыл. Но я считаю, что эти структуры данных обладают потрясающими свойствами.
Все мы пользуемся массивами и хэш-таблицами5, популярны также различные деревья. Нам не нужно полностью понимать их устройство, чтобы эффективно пользоваться их свойствами. А теперь я задаюсь вопросом, почему же люди не используют сжатые структуры данных чаще.
Я решил, что стоит немного о них рассказать.
Читать: https://habr.com/ru/companies/ruvds/articles/890232/
#ru
@database_design | Другие наши каналы
MongoDB: усиление ИИ-возможностей через партнёрства
В феврале MongoDB объявила о покупке Voyage AI, что улучшит качество извлечения данных для ИИ-приложений. Вместе с новыми партнёрами, такими как CopilotKit и Varonis, MongoDB стремится интегрировать передовые технологии, обеспечивая высокую точность и безопасность в работе с данными. Революция в ML: представляем ORiGAMi
ORiGAMi от MongoDB предлагает новое решение для классификации пользователей. Этот инструмент позволяет обучать модели прямо на необработанных документах, сохраняя их структуру, и автоматически предсказывать сегменты пользователей. Узнать больше можно на GitHub.
Читать подробнее
#en
@database_design | Другие наши каналы
В феврале MongoDB объявила о покупке Voyage AI, что улучшит качество извлечения данных для ИИ-приложений. Вместе с новыми партнёрами, такими как CopilotKit и Varonis, MongoDB стремится интегрировать передовые технологии, обеспечивая высокую точность и безопасность в работе с данными. Революция в ML: представляем ORiGAMi
ORiGAMi от MongoDB предлагает новое решение для классификации пользователей. Этот инструмент позволяет обучать модели прямо на необработанных документах, сохраняя их структуру, и автоматически предсказывать сегменты пользователей. Узнать больше можно на GitHub.
Читать подробнее
#en
@database_design | Другие наши каналы
Синхронизация файлов при запуске экземпляра PostgreSQL
Если экземпляр PostgreSQL был некорректно остановлен, то перед восстановлением файлов выполняется синхронизаций всех файлов кластера. Способ синхронизации определяется параметром конфигурации recovery_init_sync_method. В статье рассматривается, как ускорить запуск экземпляра и резервирование, если в директории PGDATA имеется много файлов.
Читать: https://habr.com/ru/articles/890354/
#ru
@database_design | Другие наши каналы
Если экземпляр PostgreSQL был некорректно остановлен, то перед восстановлением файлов выполняется синхронизаций всех файлов кластера. Способ синхронизации определяется параметром конфигурации recovery_init_sync_method. В статье рассматривается, как ускорить запуск экземпляра и резервирование, если в директории PGDATA имеется много файлов.
Читать: https://habr.com/ru/articles/890354/
#ru
@database_design | Другие наши каналы
Уменьшаем базу данных в 2000 раз при помощи Rust
Этот проект на выходные начался с изучения репозитория открытых данных сети общественного транспорта Парижа, содержащего различные API для выполнения в реальном времени запросов отправления транспорта, изменений в графике движения и так далее. Моё внимание привлёк раздел о многократном использовании данных, потому что в нём были приведены внешние проекты, использующие эти открытые данные. В частности веб-сайт статуса сети RATP предоставляет удобный интерфейс для визуализации истории нарушений на линиях движения метро, сети экспрессов/поездов и трамваев.
Обычный день нарушений на ratpstatus.fr.
В репозитории GitHub сайта ratpstatus.fr содержатся все файлы JSON, запрашиваемые из open-data API каждые две минуты. Данные сохраняются там уже почти год. Репозиторий с 188 тысячами коммитов и более чем 10 ГБ собранных данных всего лишь в одном последнем коммите (измерено при помощи git clone --depth=1) — это определённо интересный выбор для реализации базы данных! Уточню, что в этом посте я не собираюсь критиковать эту систему. Веб-сайт статуса сети RATP — превосходный веб-сайт, мгновенно и стабильно предоставляющий полезную информацию без обычного сегодня раздувания веб-сайтов. [И нет, сайт не написан на Rust. Веб-сайт на PHP тоже может быть невероятно быстрым!]
Тем не менее, размер базы данных (10 ГБ) заставил меня призадуматься: а можно ли сжать её лучше, потратив на это приемлемое количество времени (скажем выходные)? В этом подробном посте я расскажу, как использовал шаблон проектирования interning в Rust, чтобы сжать этот датасет в две тысячи раз! Мы посмотрим, как лучше структурировать сам интернер, как настроить схему данных для оптимальной работы с ним и как сделать так, чтобы сериализация использовала interning наилучшим образом.
Если у вас в хранилище накопилось множество файлов JSON, то вам стоит прочитать эту статью!
Читать: https://habr.com/ru/articles/889874/
#ru
@database_design | Другие наши каналы
Этот проект на выходные начался с изучения репозитория открытых данных сети общественного транспорта Парижа, содержащего различные API для выполнения в реальном времени запросов отправления транспорта, изменений в графике движения и так далее. Моё внимание привлёк раздел о многократном использовании данных, потому что в нём были приведены внешние проекты, использующие эти открытые данные. В частности веб-сайт статуса сети RATP предоставляет удобный интерфейс для визуализации истории нарушений на линиях движения метро, сети экспрессов/поездов и трамваев.
Обычный день нарушений на ratpstatus.fr.
В репозитории GitHub сайта ratpstatus.fr содержатся все файлы JSON, запрашиваемые из open-data API каждые две минуты. Данные сохраняются там уже почти год. Репозиторий с 188 тысячами коммитов и более чем 10 ГБ собранных данных всего лишь в одном последнем коммите (измерено при помощи git clone --depth=1) — это определённо интересный выбор для реализации базы данных! Уточню, что в этом посте я не собираюсь критиковать эту систему. Веб-сайт статуса сети RATP — превосходный веб-сайт, мгновенно и стабильно предоставляющий полезную информацию без обычного сегодня раздувания веб-сайтов. [И нет, сайт не написан на Rust. Веб-сайт на PHP тоже может быть невероятно быстрым!]
Тем не менее, размер базы данных (10 ГБ) заставил меня призадуматься: а можно ли сжать её лучше, потратив на это приемлемое количество времени (скажем выходные)? В этом подробном посте я расскажу, как использовал шаблон проектирования interning в Rust, чтобы сжать этот датасет в две тысячи раз! Мы посмотрим, как лучше структурировать сам интернер, как настроить схему данных для оптимальной работы с ним и как сделать так, чтобы сериализация использовала interning наилучшим образом.
Если у вас в хранилище накопилось множество файлов JSON, то вам стоит прочитать эту статью!
Читать: https://habr.com/ru/articles/889874/
#ru
@database_design | Другие наши каналы
Уменьшаем базу данных в 2000 раз при помощи Rust
Этот проект на выходные начался с изучения репозитория открытых данных сети общественного транспорта Парижа, содержащего различные API для выполнения в реальном времени запросов отправления транспорта, изменений в графике движения и так далее. Моё внимание привлёк раздел о многократном использовании данных, потому что в нём были приведены внешние проекты, использующие эти открытые данные. В частности веб-сайт статуса сети RATP предоставляет удобный интерфейс для визуализации истории нарушений на линиях движения метро, сети экспрессов/поездов и трамваев.
Обычный день нарушений на ratpstatus.fr.
В репозитории GitHub сайта ratpstatus.fr содержатся все файлы JSON, запрашиваемые из open-data API каждые две минуты. Данные сохраняются там уже почти год. Репозиторий с 188 тысячами коммитов и более чем 10 ГБ собранных данных всего лишь в одном последнем коммите (измерено при помощи git clone --depth=1) — это определённо интересный выбор для реализации базы данных! Уточню, что в этом посте я не собираюсь критиковать эту систему. Веб-сайт статуса сети RATP — превосходный веб-сайт, мгновенно и стабильно предоставляющий полезную информацию без обычного сегодня раздувания веб-сайтов. [И нет, сайт не написан на Rust. Веб-сайт на PHP тоже может быть невероятно быстрым!]
Тем не менее, размер базы данных (10 ГБ) заставил меня призадуматься: а можно ли сжать её лучше, потратив на это приемлемое количество времени (скажем выходные)? В этом подробном посте я расскажу, как использовал шаблон проектирования interning в Rust, чтобы сжать этот датасет в две тысячи раз! Мы посмотрим, как лучше структурировать сам интернер, как настроить схему данных для оптимальной работы с ним и как сделать так, чтобы сериализация использовала interning наилучшим образом.
Если у вас в хранилище накопилось множество файлов JSON, то вам стоит прочитать эту статью!
Читать: https://habr.com/ru/articles/889874/
#ru
@database_design | Другие наши каналы
Этот проект на выходные начался с изучения репозитория открытых данных сети общественного транспорта Парижа, содержащего различные API для выполнения в реальном времени запросов отправления транспорта, изменений в графике движения и так далее. Моё внимание привлёк раздел о многократном использовании данных, потому что в нём были приведены внешние проекты, использующие эти открытые данные. В частности веб-сайт статуса сети RATP предоставляет удобный интерфейс для визуализации истории нарушений на линиях движения метро, сети экспрессов/поездов и трамваев.
Обычный день нарушений на ratpstatus.fr.
В репозитории GitHub сайта ratpstatus.fr содержатся все файлы JSON, запрашиваемые из open-data API каждые две минуты. Данные сохраняются там уже почти год. Репозиторий с 188 тысячами коммитов и более чем 10 ГБ собранных данных всего лишь в одном последнем коммите (измерено при помощи git clone --depth=1) — это определённо интересный выбор для реализации базы данных! Уточню, что в этом посте я не собираюсь критиковать эту систему. Веб-сайт статуса сети RATP — превосходный веб-сайт, мгновенно и стабильно предоставляющий полезную информацию без обычного сегодня раздувания веб-сайтов. [И нет, сайт не написан на Rust. Веб-сайт на PHP тоже может быть невероятно быстрым!]
Тем не менее, размер базы данных (10 ГБ) заставил меня призадуматься: а можно ли сжать её лучше, потратив на это приемлемое количество времени (скажем выходные)? В этом подробном посте я расскажу, как использовал шаблон проектирования interning в Rust, чтобы сжать этот датасет в две тысячи раз! Мы посмотрим, как лучше структурировать сам интернер, как настроить схему данных для оптимальной работы с ним и как сделать так, чтобы сериализация использовала interning наилучшим образом.
Если у вас в хранилище накопилось множество файлов JSON, то вам стоит прочитать эту статью!
Читать: https://habr.com/ru/articles/889874/
#ru
@database_design | Другие наши каналы
ETL-потоки «VACUUM FULL», или Как учесть особенности жизненного цикла данных в условиях высоконагруженных хранилищ
Привет, Хабр! Наша команда работает в Сбере и отвечает за развитие аналитического хранилища данных (АХД), а также обеспечение финансово‑аналитической информацией ключевых подразделений. В нашем технологическом стеке используются Greenplum на основе PostgreSQL и Hadoop, что позволяет эффективно обрабатывать большие объёмы данных, гарантируя их надёжное хранение и своевременную доступность для потребителей.
В этой статье мы расскажем об использовании ETL-потоков
Читать: https://habr.com/ru/companies/sberbank/articles/890496/
#ru
@database_design | Другие наши каналы
Привет, Хабр! Наша команда работает в Сбере и отвечает за развитие аналитического хранилища данных (АХД), а также обеспечение финансово‑аналитической информацией ключевых подразделений. В нашем технологическом стеке используются Greenplum на основе PostgreSQL и Hadoop, что позволяет эффективно обрабатывать большие объёмы данных, гарантируя их надёжное хранение и своевременную доступность для потребителей.
В этой статье мы расскажем об использовании ETL-потоков
AUTOVACUUM в наших СУБД.Читать: https://habr.com/ru/companies/sberbank/articles/890496/
#ru
@database_design | Другие наши каналы
Лучшие SATA SSD-накопители 2025: полное сравнение моделей и характеристик
Несмотря на активное развитие интерфейса NVMe и появление SSD PCIe Gen 5, твердотельные накопители 2,5” по-прежнему остаются востребованным решением для широкого спектра задач. Ограничение пропускной способности интерфейса SATA III компенсируется высокой совместимостью, стабильностью работы и невысокой стоимостью хранения данных в пересчете на гигабайт. Поэтому не стоит списывать их со счетов. Особенно, когда рабочие сценарии не предполагают сверхвысоких скоростей чтения и записи SSD.
Читать: https://habr.com/ru/companies/x-com/articles/890566/
#ru
@database_design | Другие наши каналы
Несмотря на активное развитие интерфейса NVMe и появление SSD PCIe Gen 5, твердотельные накопители 2,5” по-прежнему остаются востребованным решением для широкого спектра задач. Ограничение пропускной способности интерфейса SATA III компенсируется высокой совместимостью, стабильностью работы и невысокой стоимостью хранения данных в пересчете на гигабайт. Поэтому не стоит списывать их со счетов. Особенно, когда рабочие сценарии не предполагают сверхвысоких скоростей чтения и записи SSD.
Читать: https://habr.com/ru/companies/x-com/articles/890566/
#ru
@database_design | Другие наши каналы
Obsidian: все что нужно знать о Callout
В этой статье я подробно расскажу о возможностях использования Callout в Obsidian, покажу существующие решения, а также объясню, как создавать свои собственные, индивидуальные типы Callout-блоков.
Рассмотрим при чем здесь цитаты (Blackquotes).
Дополнительно поделюсь полезными надстройками и шаблонами
Читать: https://habr.com/ru/articles/890598/
#ru
@database_design | Другие наши каналы
В этой статье я подробно расскажу о возможностях использования Callout в Obsidian, покажу существующие решения, а также объясню, как создавать свои собственные, индивидуальные типы Callout-блоков.
Рассмотрим при чем здесь цитаты (Blackquotes).
Дополнительно поделюсь полезными надстройками и шаблонами
Читать: https://habr.com/ru/articles/890598/
#ru
@database_design | Другие наши каналы
Как удалось сделать флешку в Linux-е с UEFI и UniversalAMDFormBrowser
Наверняка Вы знакомы с загрузочными флэшками usb. Тех самых, с которых устанавливали Windows, или же запускали UniversalAMDFormBrowser. Речь пойдет как раз о usb с типом EFI. Эти флэшки вставляются в выключенный компьютер. При включении, они загружаются через Boot Menu. На ноутбуках это меню может быть доступно по кнопкам "F12" ИЛИ "F10".
В Windows же есть программа Rufus для форматирования таких флэшек, а что насчёт Linux-а? Для Linux-а же, как всегда, придётся читать дольше, чтобы найти что-то стоящее. Хотите узнать, что же это? Вам сюда.
Мануал
Читать: https://habr.com/ru/articles/890632/
#ru
@database_design | Другие наши каналы
Наверняка Вы знакомы с загрузочными флэшками usb. Тех самых, с которых устанавливали Windows, или же запускали UniversalAMDFormBrowser. Речь пойдет как раз о usb с типом EFI. Эти флэшки вставляются в выключенный компьютер. При включении, они загружаются через Boot Menu. На ноутбуках это меню может быть доступно по кнопкам "F12" ИЛИ "F10".
В Windows же есть программа Rufus для форматирования таких флэшек, а что насчёт Linux-а? Для Linux-а же, как всегда, придётся читать дольше, чтобы найти что-то стоящее. Хотите узнать, что же это? Вам сюда.
Мануал
Читать: https://habr.com/ru/articles/890632/
#ru
@database_design | Другие наши каналы
Использование JSONB-полей вместо EAV в PostgreSQL
На одной из конференций PGConf мы обнаружили, что комьюнити с большой опаской относится к использованию JSONB-полей в своих системах. Интернет при этом не столь радикален. Наша же команда в это время вовсю использует JSONB у себя в проекте. Мы решили поделиться нашим вполне успешным кейсом в реальной нагруженной системе с сотнями миллионов строк в таблицах, где эти поля используются.
Читать: https://habr.com/ru/companies/sigma/articles/890668/
#ru
@database_design | Другие наши каналы
На одной из конференций PGConf мы обнаружили, что комьюнити с большой опаской относится к использованию JSONB-полей в своих системах. Интернет при этом не столь радикален. Наша же команда в это время вовсю использует JSONB у себя в проекте. Мы решили поделиться нашим вполне успешным кейсом в реальной нагруженной системе с сотнями миллионов строк в таблицах, где эти поля используются.
Читать: https://habr.com/ru/companies/sigma/articles/890668/
#ru
@database_design | Другие наши каналы
Использование JSONB-полей вместо EAV в PostgreSQL
На одной из конференций PGConf мы обнаружили, что комьюнити с большой опаской относится к использованию JSONB-полей в своих системах. Интернет при этом не столь радикален. Наша же команда в это время вовсю использует JSONB у себя в проекте. Мы решили поделиться нашим вполне успешным кейсом в реальной нагруженной системе с сотнями миллионов строк в таблицах, где эти поля используются.
Читать: https://habr.com/ru/companies/sigma/articles/890668/
#ru
@database_design | Другие наши каналы
На одной из конференций PGConf мы обнаружили, что комьюнити с большой опаской относится к использованию JSONB-полей в своих системах. Интернет при этом не столь радикален. Наша же команда в это время вовсю использует JSONB у себя в проекте. Мы решили поделиться нашим вполне успешным кейсом в реальной нагруженной системе с сотнями миллионов строк в таблицах, где эти поля используются.
Читать: https://habr.com/ru/companies/sigma/articles/890668/
#ru
@database_design | Другие наши каналы
DATABASE DESIGN
Photo
Высокодоступная база данных с MariaDB на AWS: Как это работает
Хотите надежную и масштабируемую базу данных на AWS? Статья рассматривает развёртывание кластера MariaDB Galera и MaxScale для обеспечения высокой доступности. Узнайте, как избежать медленных переключений и обеспечить автоматическое распределение нагрузки с помощью AWS EC2. Подключение и настройка MariaDB MaxScale
В статье рассказывают, как установить и настроить MariaDB MaxScale для управления серверным кластером базы данных. Пошагово показывается создание пользователей и настройка приоритетов серверов. Также объясняется, как реализовать отказоустойчивость с помощью второй копии MaxScale и проверяются подключения через новый маршрутизатор. Преимущества MariaDB на EC2 перед AWS RDS
Переход на MariaDB на EC2 вместо AWS RDS может обеспечить лучшую доступность и не увеличивает расходы. Решение с использованием MariaDB Galera Cluster и MaxScale дает масштабируемость и быструю переключаемость в случае сбоев. Это минимальная настройка, которую вы можете оптимизировать для повышения производительности.
Читать подробнее
#en
@database_design | Другие наши каналы
Хотите надежную и масштабируемую базу данных на AWS? Статья рассматривает развёртывание кластера MariaDB Galera и MaxScale для обеспечения высокой доступности. Узнайте, как избежать медленных переключений и обеспечить автоматическое распределение нагрузки с помощью AWS EC2. Подключение и настройка MariaDB MaxScale
В статье рассказывают, как установить и настроить MariaDB MaxScale для управления серверным кластером базы данных. Пошагово показывается создание пользователей и настройка приоритетов серверов. Также объясняется, как реализовать отказоустойчивость с помощью второй копии MaxScale и проверяются подключения через новый маршрутизатор. Преимущества MariaDB на EC2 перед AWS RDS
Переход на MariaDB на EC2 вместо AWS RDS может обеспечить лучшую доступность и не увеличивает расходы. Решение с использованием MariaDB Galera Cluster и MaxScale дает масштабируемость и быструю переключаемость в случае сбоев. Это минимальная настройка, которую вы можете оптимизировать для повышения производительности.
Читать подробнее
#en
@database_design | Другие наши каналы
5 основополагающих советов по управлению базами данных Greenplum
Greenplum — это массивно‑параллельная (MPP) база данных с открытым исходным кодом, предназначенная для организации хранилищ данных и высокопроизводительной аналитики. Как и в случае с другими MPP‑СУБД, она требует регулярной оптимизации запросов, корректировки распределения ресурсов и защиты данных. В этой статье мы рассмотрим пять рекомендаций, обязательных для эффективного управления Greenplum.
Читать: https://habr.com/ru/companies/otus/articles/890706/
#ru
@database_design | Другие наши каналы
Greenplum — это массивно‑параллельная (MPP) база данных с открытым исходным кодом, предназначенная для организации хранилищ данных и высокопроизводительной аналитики. Как и в случае с другими MPP‑СУБД, она требует регулярной оптимизации запросов, корректировки распределения ресурсов и защиты данных. В этой статье мы рассмотрим пять рекомендаций, обязательных для эффективного управления Greenplum.
Читать: https://habr.com/ru/companies/otus/articles/890706/
#ru
@database_design | Другие наши каналы
Уменьшаем базу данных в 2000 раз при помощи Rust (завершение)
Сериализация
По сути, мы получили косвенную базу данных в памяти. Далее нам нужно сериализовать её, чтобы проверить, как interning влияет на её постоянное хранение. Кроме того, сериализация — это важный шаг для проверки реальности заявленной экономии места. И, наконец, это ещё одна возможность для дальнейшего сжатия данных.
В Rust для сериализации стандартно используется крейт serde, который мы уже использовали для импортирования входных данных в JSON. Serde изначально имеет поддержку множества форматов благодаря крейтам расширений, поэтому я решил попробовать несколько из них.
Читать: https://habr.com/ru/articles/890250/
#ru
@database_design | Другие наши каналы
Сериализация
По сути, мы получили косвенную базу данных в памяти. Далее нам нужно сериализовать её, чтобы проверить, как interning влияет на её постоянное хранение. Кроме того, сериализация — это важный шаг для проверки реальности заявленной экономии места. И, наконец, это ещё одна возможность для дальнейшего сжатия данных.
В Rust для сериализации стандартно используется крейт serde, который мы уже использовали для импортирования входных данных в JSON. Serde изначально имеет поддержку множества форматов благодаря крейтам расширений, поэтому я решил попробовать несколько из них.
Читать: https://habr.com/ru/articles/890250/
#ru
@database_design | Другие наши каналы
👍1
Уменьшаем базу данных в 2000 раз при помощи Rust (завершение)
Сериализация
По сути, мы получили косвенную базу данных в памяти. Далее нам нужно сериализовать её, чтобы проверить, как interning влияет на её постоянное хранение. Кроме того, сериализация — это важный шаг для проверки реальности заявленной экономии места. И, наконец, это ещё одна возможность для дальнейшего сжатия данных.
В Rust для сериализации стандартно используется крейт serde, который мы уже использовали для импортирования входных данных в JSON. Serde изначально имеет поддержку множества форматов благодаря крейтам расширений, поэтому я решил попробовать несколько из них.
Читать: https://habr.com/ru/articles/890250/
#ru
@database_design | Другие наши каналы
Сериализация
По сути, мы получили косвенную базу данных в памяти. Далее нам нужно сериализовать её, чтобы проверить, как interning влияет на её постоянное хранение. Кроме того, сериализация — это важный шаг для проверки реальности заявленной экономии места. И, наконец, это ещё одна возможность для дальнейшего сжатия данных.
В Rust для сериализации стандартно используется крейт serde, который мы уже использовали для импортирования входных данных в JSON. Serde изначально имеет поддержку множества форматов благодаря крейтам расширений, поэтому я решил попробовать несколько из них.
Читать: https://habr.com/ru/articles/890250/
#ru
@database_design | Другие наши каналы
Хакеры взломали Минфин США с помощью Unicode. Как это вообще стало возможным?
Китайские хакеры взломали Минфин США через уязвимость PostgreSQL, связанную с Unicode. SQL-инъекция оставалась незамеченной 9 лет и позволила атакующим захватить контроль над сервером
Читать: «Хакеры взломали Минфин США с помощью Unicode. Как это вообще стало возможным?»
#ru
@database_design | Другие наши каналы
Китайские хакеры взломали Минфин США через уязвимость PostgreSQL, связанную с Unicode. SQL-инъекция оставалась незамеченной 9 лет и позволила атакующим захватить контроль над сервером
Читать: «Хакеры взломали Минфин США с помощью Unicode. Как это вообще стало возможным?»
#ru
@database_design | Другие наши каналы
Меньше кода, больше результата: применяем sqlc для работы с БД
Привет, Хабр! Инструмент, который генерирует производительный и безопасный код для работы с базой данных — миф или реальность? В этой статье обсудим, что такое sqlc, откуда он появился и какие идеи в него заложены. Разберём его возможности и ограничения, а также кейсы, когда он подходит лучше всего.
Читать: https://habr.com/ru/companies/uzum/articles/890654/
#ru
@database_design | Другие наши каналы
Привет, Хабр! Инструмент, который генерирует производительный и безопасный код для работы с базой данных — миф или реальность? В этой статье обсудим, что такое sqlc, откуда он появился и какие идеи в него заложены. Разберём его возможности и ограничения, а также кейсы, когда он подходит лучше всего.
Читать: https://habr.com/ru/companies/uzum/articles/890654/
#ru
@database_design | Другие наши каналы
Меньше кода, больше результата: применяем sqlc для работы с БД
Привет, Хабр! Инструмент, который генерирует производительный и безопасный код для работы с базой данных — миф или реальность? В этой статье обсудим, что такое sqlc, откуда он появился и какие идеи в него заложены. Разберём его возможности и ограничения, а также кейсы, когда он подходит лучше всего.
Читать: https://habr.com/ru/companies/oleg-bunin/articles/890654/
#ru
@database_design | Другие наши каналы
Привет, Хабр! Инструмент, который генерирует производительный и безопасный код для работы с базой данных — миф или реальность? В этой статье обсудим, что такое sqlc, откуда он появился и какие идеи в него заложены. Разберём его возможности и ограничения, а также кейсы, когда он подходит лучше всего.
Читать: https://habr.com/ru/companies/oleg-bunin/articles/890654/
#ru
@database_design | Другие наши каналы