CFS — сжатие на уровне страниц СУБД в Postgres Pro.
Сжатие данных на уровне блоков: механизм компрессии CFS и его особенности
Привет, Хабр! Меня зовут Антон Дорошкевич, я сертифицированный эксперт по PostgreSQL и архитектор многокластерных систем 1С. Это мой первый гостевой пост в блоге компании Postgres Professional. Многие мои выступления на PGConf.Russia были тепло приняты аудиторией в частности, в этом году доклад о тонкостях эксплуатации 1С и PostgreSQL вошёл в тройку лучших презентаций конференции. Сегодня мне хотелось бы рассказать о том, как сжатие данных на уровне блоков (страниц) влияет на работу баз 1С.
Механизмы сжатия на уровне блоков разработаны и успешно используются в таких СУБД, как MS SQL Server, Oracle, MySQL. В PostgreSQL сжатие на уровне страниц почему-то не было реализовано; лишь сравнительно недавно оно появилось в Postgres Pro Enterprise. Этот механизм называется CFS (Compressed File System, но файловой системой он не является, поэтому далее будет использоваться сокращение CFS).
Читать далееhttps://habr.com/ru/companies/postgrespro/articles/755818
Сжатие данных на уровне блоков: механизм компрессии CFS и его особенности
Привет, Хабр! Меня зовут Антон Дорошкевич, я сертифицированный эксперт по PostgreSQL и архитектор многокластерных систем 1С. Это мой первый гостевой пост в блоге компании Postgres Professional. Многие мои выступления на PGConf.Russia были тепло приняты аудиторией в частности, в этом году доклад о тонкостях эксплуатации 1С и PostgreSQL вошёл в тройку лучших презентаций конференции. Сегодня мне хотелось бы рассказать о том, как сжатие данных на уровне блоков (страниц) влияет на работу баз 1С.
Механизмы сжатия на уровне блоков разработаны и успешно используются в таких СУБД, как MS SQL Server, Oracle, MySQL. В PostgreSQL сжатие на уровне страниц почему-то не было реализовано; лишь сравнительно недавно оно появилось в Postgres Pro Enterprise. Этот механизм называется CFS (Compressed File System, но файловой системой он не является, поэтому далее будет использоваться сокращение CFS).
Читать далееhttps://habr.com/ru/companies/postgrespro/articles/755818
Хабр
CFS — сжатие на уровне страниц СУБД в Postgres Pro
Механизм компрессии CFS и его особенности Привет, Хабр! Меня зовут Антон Дорошкевич, я сертифицированный эксперт по PostgreSQL и архитектор многокластерных систем 1С. Это мой первый гостевой пост в...
Виды баз данных. Большой обзор типов СУБД.
Часто, в обзорах видов баз данных упоминают реляционные и “другие”, “NoSQL” и т.д., либо приводят самые основные типы СУБД (базы данных), забывая о редких. В данной статье я постараюсь описать максимально полно виды баз данных и привести примеры конкретных реализаций. Разумеется, статья не претендует на всеохватность и классифицировать базы данных можно по разному, в том числе по типам оптимальной нагрузки и т.д., но надеюсь, она даст базовое представление о видах СУБД и принципах их работы.
В статье мы рассмотрим следующие типы баз данных:
Читать далееhttps://habr.com/ru/companies/amvera/articles/754702
Часто, в обзорах видов баз данных упоминают реляционные и “другие”, “NoSQL” и т.д., либо приводят самые основные типы СУБД (базы данных), забывая о редких. В данной статье я постараюсь описать максимально полно виды баз данных и привести примеры конкретных реализаций. Разумеется, статья не претендует на всеохватность и классифицировать базы данных можно по разному, в том числе по типам оптимальной нагрузки и т.д., но надеюсь, она даст базовое представление о видах СУБД и принципах их работы.
В статье мы рассмотрим следующие типы баз данных:
Читать далееhttps://habr.com/ru/companies/amvera/articles/754702
Хабр
Виды баз данных. Большой обзор типов СУБД
Часто, в обзорах видов баз данных упоминают реляционные и “другие”, “NoSQL” и т.д., либо приводят самые основные типы СУБД (базы данных), забывая о редких. В данной статье я постараюсь описать...
Как миграция между базами данных работает в реальном мире?
https://dev.to/danielhe4rt/database-101-how-does-migration-between-databases-work-in-the-real-world-24dn
https://dev.to/danielhe4rt/database-101-how-does-migration-between-databases-work-in-the-real-world-24dn
DEV Community
Database 101: How does migration between databases work in the real world?
Recently my new task at ScyllaDB is to study how to Migrate data between Databases and as I promised...
Конфликты блокировок PostgreSQL
Этот инструмент показывает все команды и блокировки в postgres. https://pglocks.org/
Этот инструмент показывает все команды и блокировки в postgres. https://pglocks.org/
Упростите сложные SQL-запросы с помощью общих табличных выражений (CTE)
https://dev.to/karishmashukla/simplify-complex-sql-queries-with-common-table-expressions-ctes-3kf5
https://dev.to/karishmashukla/simplify-complex-sql-queries-with-common-table-expressions-ctes-3kf5
DEV Community
Simplify Complex SQL Queries with Common Table Expressions (CTEs)
What are Common Table Expressions? Common Table Expressions (CTEs) are a valuable feature...
Dataherald — это механизм преобразования естественного языка в SQL
https://github.com/Dataherald/dataherald
https://github.com/Dataherald/dataherald
GitHub
GitHub - Dataherald/dataherald: Interact with your SQL database, Natural Language to SQL using LLMs
Interact with your SQL database, Natural Language to SQL using LLMs - Dataherald/dataherald
Наполняем до краев: влияние порядка столбцов в таблицах на размеры баз данных PostgresQL
При оценке требований базы данных к оборудованию требуется учет многих факторов. И здесь у Postgres есть одна интересная особенность, которая почти всегда ускользает от внимания разработчиков, потому что она искусно спрятана между столбцами таблиц. https://habr.com/ru/articles/756074/
При оценке требований базы данных к оборудованию требуется учет многих факторов. И здесь у Postgres есть одна интересная особенность, которая почти всегда ускользает от внимания разработчиков, потому что она искусно спрятана между столбцами таблиц. https://habr.com/ru/articles/756074/
Хабр
Наполняем до краев: влияние порядка столбцов в таблицах на размеры баз данных PostgresQL
8 + 2 = 16 или откуда берутся лишние байты В языках низкого уровня, таких как C, на котором написан Postgres, для обращения к данным в памяти всегда используются...
Atlas — инструмент управления схемами миграций БД с открытым исходным кодом: наш опыт и ошибки создателей
Рассматриваемая утилита служит для управления схемами миграций баз данных и позволяет задействовать современные паттерны DevOps. Разработчики Atlas воспринимают свой инструмент как универсальный способ визуализировать, планировать и выстраивать миграции схем баз данных в соответствии с CI. https://habr.com/ru/companies/flant/articles/753122/
Рассматриваемая утилита служит для управления схемами миграций баз данных и позволяет задействовать современные паттерны DevOps. Разработчики Atlas воспринимают свой инструмент как универсальный способ визуализировать, планировать и выстраивать миграции схем баз данных в соответствии с CI. https://habr.com/ru/companies/flant/articles/753122/
Хабр
Atlas — инструмент управления схемами миграций БД с открытым исходным кодом: наш опыт и ошибки создателей
О дивный мир, Infrastructure as a Code! С каждым днём появляется всё больше инструментов для работы с гетерогенными инфраструктурами любой сложности. На каждом уровне абстракции — свои утилиты и...
В ЧЕМ ПРОБЛЕМА ЗАПРОСА N+1 И КАК ЕЕ ОБНАРУЖИТЬ?
В этой статье мы подробно рассмотрим проблему запросов N + 1 на практическом примере, ее влияние на производительность приложений и то, как инновационные решения могут помочь обнаружить и смягчить проблему запросов N + 1. https://digma.ai/blog/n1-query-problem-and-how-to-detect-it/
В этой статье мы подробно рассмотрим проблему запросов N + 1 на практическом примере, ее влияние на производительность приложений и то, как инновационные решения могут помочь обнаружить и смягчить проблему запросов N + 1. https://digma.ai/blog/n1-query-problem-and-how-to-detect-it/
Digma
What is the N+1 query problem and how to detect it?
What is the N+1 query problem? How to detect and mitigate its effects on application performance: using a practical example.
Путь 11 страданий: это не ДЗЕН и не ДАО — это выбор российского BI
Привет, Хабр! Мне, наконец, есть чем поделиться с вами. И это результаты практически годового процесса выбора BI-системы из числа российских разработок на замену одной из западных платформ. За это время мне стало очевидно, что примерно 50% действий, которые мы сделали, можно было и не делать, а 20% не стоило делать вовсе. В итоге получилась практически инструкция “как не надо” выбирать себе BI-систему, если вы хотите, чтобы она действительно начала приносить вам пользу ASAP.
https://habr.com/ru/articles/757954/
Привет, Хабр! Мне, наконец, есть чем поделиться с вами. И это результаты практически годового процесса выбора BI-системы из числа российских разработок на замену одной из западных платформ. За это время мне стало очевидно, что примерно 50% действий, которые мы сделали, можно было и не делать, а 20% не стоило делать вовсе. В итоге получилась практически инструкция “как не надо” выбирать себе BI-систему, если вы хотите, чтобы она действительно начала приносить вам пользу ASAP.
https://habr.com/ru/articles/757954/
Хабр
Путь 11 страданий: это не ДЗЕН и не ДАО — это выбор российского BI
Привет, Хабр! Мне, наконец, есть чем поделиться с вами. И это результаты практически годового процесса выбора BI-системы из числа российских разработок на замену одной из западных платформ. За это...
Точная настройка GPT-3.5-Turbo для естественного языка на SQL
На прошлой неделе OpenAI открыла GPT-3.5-turbo для тонкой настройки. В этом посте мы настроим нашу собственную модель NL-to-SQL и сравним ее производительность с современным подходом RAG. В качестве тестового эталона мы будем использовать набор данных Spider из Йельского университета. https://medium.com/dataherald/fine-tuning-gpt-3-5-turbo-for-natural-language-to-sql-4445c1d37f7c
На прошлой неделе OpenAI открыла GPT-3.5-turbo для тонкой настройки. В этом посте мы настроим нашу собственную модель NL-to-SQL и сравним ее производительность с современным подходом RAG. В качестве тестового эталона мы будем использовать набор данных Spider из Йельского университета. https://medium.com/dataherald/fine-tuning-gpt-3-5-turbo-for-natural-language-to-sql-4445c1d37f7c
Medium
Fine-tuning GPT-3.5-Turbo for Natural Language to SQL
Tutorial and comparison with RAG methods
JSONB и hstore: использование специальных типов данных PostgreSQL для работы с полуструктурированными данными
В современной разработке программного обеспечения, где данные играют ключевую роль, понятие "полуструктурированные данные" заняло особое место. Эти данные сочетают в себе гибкость документов и строгость таблиц, что позволяет эффективно моделировать сложные информационные потоки. Однако работа с такими данными требует специальных подходов и инструментов.
Полуструктурированные данные — это неотъемлемая часть современных приложений, работающих с разнообразной информацией. Они позволяют представить данные в формате, близком к человеческому восприятию, в то время как классические реляционные базы данных предоставляют ограниченные возможности для хранения и извлечения такого типа информации. Примерами могут быть структуры JSON, XML и другие форматы, которые могут содержать вложенные поля, дополнительные атрибуты и даже массивы данных.
https://habr.com/ru/articles/758010/
В современной разработке программного обеспечения, где данные играют ключевую роль, понятие "полуструктурированные данные" заняло особое место. Эти данные сочетают в себе гибкость документов и строгость таблиц, что позволяет эффективно моделировать сложные информационные потоки. Однако работа с такими данными требует специальных подходов и инструментов.
Полуструктурированные данные — это неотъемлемая часть современных приложений, работающих с разнообразной информацией. Они позволяют представить данные в формате, близком к человеческому восприятию, в то время как классические реляционные базы данных предоставляют ограниченные возможности для хранения и извлечения такого типа информации. Примерами могут быть структуры JSON, XML и другие форматы, которые могут содержать вложенные поля, дополнительные атрибуты и даже массивы данных.
https://habr.com/ru/articles/758010/
Хабр
JSONB и hstore: использование специальных типов данных PostgreSQL для работы с полуструктурированными данными
В современной разработке программного обеспечения, где данные играют ключевую роль, понятие "полуструктурированные данные" заняло особое место. Эти данные сочетают в себе гибкость документов и...
Представляем freeCodeCamp Press — бесплатные книги для разработчиков
Сообщество freeCodeCamp за годы опубликовало более 10 000 руководств. Но в последнее время мы сосредоточились на создании еще более объемных ресурсов для изучения математики, программирования и информатики.
Вот почему мы создали freeCodeCamp Press — подразделение freeCodeCamp, где мы публикуем полноформатные книги и справочники — все они доступны каждому бесплатно. https://www.freecodecamp.org/news/freecodecamp-press-books-handbooks/
Сообщество freeCodeCamp за годы опубликовало более 10 000 руководств. Но в последнее время мы сосредоточились на создании еще более объемных ресурсов для изучения математики, программирования и информатики.
Вот почему мы создали freeCodeCamp Press — подразделение freeCodeCamp, где мы публикуем полноформатные книги и справочники — все они доступны каждому бесплатно. https://www.freecodecamp.org/news/freecodecamp-press-books-handbooks/
freeCodeCamp.org
Introducing freeCodeCamp Press – Free Books for Developers
The freeCodeCamp community has published more than 10,000 tutorials on our publication over the years. But lately we've focused on creating even longer resources for learning math, programming, and computer science. This is why we've created freeCode...
Что происходит в СУБД при записи регистра накопления 1С?.
Данная публикация – результат попытки разобраться в механизмах записи регистра накопления. Как влияют вид и настройки регистра, режим записи? Что происходит, когда используются агрегаты?
В статье рассмотрены запросы, выполняемые на стороне СУБД при записи регистров накопления остатков и оборотов с разделением итогов и без.
Все примеры выполнены на платформе 1С 8.3.23 в связки с MSSQL.
Читать далее https://habr.com/ru/articles/759070/
Данная публикация – результат попытки разобраться в механизмах записи регистра накопления. Как влияют вид и настройки регистра, режим записи? Что происходит, когда используются агрегаты?
В статье рассмотрены запросы, выполняемые на стороне СУБД при записи регистров накопления остатков и оборотов с разделением итогов и без.
Все примеры выполнены на платформе 1С 8.3.23 в связки с MSSQL.
Читать далее https://habr.com/ru/articles/759070/
Хабр
Что происходит в СУБД при записи регистра накопления 1С?
Данная публикация – результат попытки разобраться в механизмах записи регистра накопления на стороне СУБД. Какие запросы генерирует платформа в зависимости от вида и настроек регистра, режима записи,...
Справочник по SQL — бесплатный курс для веб-разработчиков
SQL сегодня повсюду. Независимо от того, изучаете ли вы серверную разработку , инженерию данных, DevOps или науку о данных, SQL — это навык, который вам понадобится в вашем арсенале.
Это бесплатный и открытый текстовый справочник.https://www.freecodecamp.org/news/a-beginners-guide-to-sql/
SQL сегодня повсюду. Независимо от того, изучаете ли вы серверную разработку , инженерию данных, DevOps или науку о данных, SQL — это навык, который вам понадобится в вашем арсенале.
Это бесплатный и открытый текстовый справочник.https://www.freecodecamp.org/news/a-beginners-guide-to-sql/
freeCodeCamp.org
The SQL Handbook – A Free Course for Web Developers
SQL is everywhere these days. Whether you're learning backend development, data engineering, DevOps, or data science, SQL is a skill you'll want in your toolbelt. This a free and open text-based handbook. If you want to get started, just scroll down ...
Выбор идеальной базы данных для ваших микросервисов
Как выбрать лучшую базу данных для микросервиса?
Чтобы ответить на этот вопрос, вам необходимо понимать, что разные типы баз данных создаются для разных целей и требований.
Поэтому в процессе принятия решений вы должны учитывать такие факторы, как производительность, надежность и требования к моделированию данных, чтобы убедиться, что вы выбрали правильную базу данных. https://amplication.com/blog/picking-the-perfect-database-for-your-microservices
Как выбрать лучшую базу данных для микросервиса?
Чтобы ответить на этот вопрос, вам необходимо понимать, что разные типы баз данных создаются для разных целей и требований.
Поэтому в процессе принятия решений вы должны учитывать такие факторы, как производительность, надежность и требования к моделированию данных, чтобы убедиться, что вы выбрали правильную базу данных. https://amplication.com/blog/picking-the-perfect-database-for-your-microservices
Forwarded from Daily Dev Jokes. Юмор.
This media is not supported in your browser
VIEW IN TELEGRAM
Понимая, что я собираюсь удалить производственную базу данных
Настройка бэкапов Mssql с резервированием на s3 (Selectel).
Настройка резервного копирования с помощью плана обслуживания с загрузкой бэкапов на s3 ресурс selectel.
https://habr.com/ru/articles/759960
Настройка резервного копирования с помощью плана обслуживания с загрузкой бэкапов на s3 ресурс selectel.
https://habr.com/ru/articles/759960
Хабр
Настройка бэкапов Mssql с резервированием на s3 (Selectel)
Данная статья не относится к HOW-TO, но я все равно постараюсь подробно описать процесс создания/подключения бакета и настройки бэкапов напрямую с Mssql. Важно: поддержка загрузки на s3 описана для...
Forwarded from Шпаргалки для айтишников
Хранение паролей в базе данных открытым текстом - не самая лучшая идея.
Любой человек, имеющий внутренний доступ к базе данных, может их увидеть и получить.
Кроме того, хэширование паролей и хранение хэш-значений недостаточно, поскольку они могут быть взломаны.
Стандартным решением для защиты от таких атак является использование соли.
Соль - это случайно сгенерированная уникальная строка, которая добавляется к каждому паролю в процессе хэширования.
Выше приведен процесс хранения и проверки пароля с использованием соли:
1. Соль хранится в базе данных в виде обычного текста, что обеспечивает уникальность результата хэширования для каждого пароля.
2. Пароли хранятся в базе данных, хэшируются с помощью соли.
3. Клиент вводит свой пароль.
4. Система считывает соль из базы данных
5. Система комбинирует соль с паролем и хэширует его
6. Система сравнивает вычисленные значения хэша с теми, что хранятся в базе данных. Если они равны, то пароль действителен.
Любой человек, имеющий внутренний доступ к базе данных, может их увидеть и получить.
Кроме того, хэширование паролей и хранение хэш-значений недостаточно, поскольку они могут быть взломаны.
Стандартным решением для защиты от таких атак является использование соли.
Соль - это случайно сгенерированная уникальная строка, которая добавляется к каждому паролю в процессе хэширования.
Выше приведен процесс хранения и проверки пароля с использованием соли:
1. Соль хранится в базе данных в виде обычного текста, что обеспечивает уникальность результата хэширования для каждого пароля.
2. Пароли хранятся в базе данных, хэшируются с помощью соли.
3. Клиент вводит свой пароль.
4. Система считывает соль из базы данных
5. Система комбинирует соль с паролем и хэширует его
6. Система сравнивает вычисленные значения хэша с теми, что хранятся в базе данных. Если они равны, то пароль действителен.