Выбор идеальной базы данных для ваших микросервисов
Как выбрать лучшую базу данных для микросервиса?
Чтобы ответить на этот вопрос, вам необходимо понимать, что разные типы баз данных создаются для разных целей и требований.
Поэтому в процессе принятия решений вы должны учитывать такие факторы, как производительность, надежность и требования к моделированию данных, чтобы убедиться, что вы выбрали правильную базу данных. 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. Система сравнивает вычисленные значения хэша с теми, что хранятся в базе данных. Если они равны, то пароль действителен.
7 аргументов почему UUID лучше, чем автоинкрементные идентификаторы
В мире баз данных идентификаторы имеют решающее значение для уникальной идентификации записей. Традиционно многие разработчики предпочитали автоматически увеличивающиеся целочисленные идентификаторы. Однако есть еще один вариант, который набирает популярность: универсально уникальные идентификаторы (UUID). В этой статье мы рассмотрим, почему UUID часто являются лучшим выбором по сравнению с автоматически увеличивающимися идентификаторами.
https://habr.com/ru/articles/760272/
В мире баз данных идентификаторы имеют решающее значение для уникальной идентификации записей. Традиционно многие разработчики предпочитали автоматически увеличивающиеся целочисленные идентификаторы. Однако есть еще один вариант, который набирает популярность: универсально уникальные идентификаторы (UUID). В этой статье мы рассмотрим, почему UUID часто являются лучшим выбором по сравнению с автоматически увеличивающимися идентификаторами.
https://habr.com/ru/articles/760272/
Хабр
7 аргументов почему UUID лучше, чем автоинкрементные идентификаторы
В мире баз данных идентификаторы имеют решающее значение для уникальной идентификации записей. Традиционно многие разработчики предпочитали автоматически увеличивающиеся целочисленные идентификаторы....
Sqlite и Rails в производстве
При развертывании приложения Rails в рабочей среде редко кто подвергает сомнению идею использования базы данных Postgres или MySQL для сохранения данных и Redis для кэширования, фоновой обработки заданий и WebSockets, но что, если все это можно было бы сделать без запуска этих сервисов? https://fly.io/ruby-dispatch/sqlite-and-rails-in-production/
При развертывании приложения Rails в рабочей среде редко кто подвергает сомнению идею использования базы данных Postgres или MySQL для сохранения данных и Redis для кэширования, фоновой обработки заданий и WebSockets, но что, если все это можно было бы сделать без запуска этих сервисов? https://fly.io/ruby-dispatch/sqlite-and-rails-in-production/
Fly
SQLite & Rails in Production
Documentation and guides from the team at Fly.io.
Django ORM: полное руководство по оптимизированному взаимодействию с базой данных
В этой статье мы углубимся в Django ORM, изучим его функции, преимущества и лучшие практики взаимодействия с базами данных в ваших веб-приложениях. https://python.plainenglish.io/django-orm-a-definitive-handbook-for-streamlined-database-interaction-303df2228712
В этой статье мы углубимся в Django ORM, изучим его функции, преимущества и лучшие практики взаимодействия с базами данных в ваших веб-приложениях. https://python.plainenglish.io/django-orm-a-definitive-handbook-for-streamlined-database-interaction-303df2228712
Medium
Django ORM: A Definitive Handbook for Streamlined Database Interaction
Django, a high-level Python web framework, has gained immense popularity among developers for its efficiency and ease of use. One of the…
Выпущена PostgreSQL 16!
PostgreSQL 16 повышает свою производительность благодаря заметным улучшениям в параллелизме запросов, массовой загрузке данных и логической репликации. В этом выпуске имеется множество функций как для разработчиков, так и для администраторов, в том числе расширенный синтаксис SQL/JSON, новая статистика мониторинга ... https://www.postgresql.org/about/news/postgresql-16-released-2715/
PostgreSQL 16 повышает свою производительность благодаря заметным улучшениям в параллелизме запросов, массовой загрузке данных и логической репликации. В этом выпуске имеется множество функций как для разработчиков, так и для администраторов, в том числе расширенный синтаксис SQL/JSON, новая статистика мониторинга ... https://www.postgresql.org/about/news/postgresql-16-released-2715/
PostgreSQL News
PostgreSQL 16 Released!
September 14, 2023 - The PostgreSQL Global Development Group today announced the release of PostgreSQL 16, the latest version of …
Варианты соединения SQL
SQL-соединения — это нечто большее, чем вы думаете. Давайте их немного изучим. https://antonz.org/sql-join/
SQL-соединения — это нечто большее, чем вы думаете. Давайте их немного изучим. https://antonz.org/sql-join/
antonz.org
SQL join flavors
The many faces of JOIN in SQL.
Возможности индексации в базах данных
В мире баз данных эффективность имеет ключевое значение. Независимо от того, работаете ли вы с небольшим приложением или с массивной корпоративной системой, производительность вашей базы данных может улучшить или разрушить ваше приложение. Одним из самых мощных инструментов в вашем распоряжении для оптимизации производительности базы данных является индексирование. https://towardsdev.com/the-power-of-indexing-in-databases-a52c26c11d86
Откажитесь от SQL — пусть этим займётся Ванна!
Пользователи SQL будут заменены этим инструментом искусственного интеллекта в кратчайшие сроки. Вот как.
https://levelup.gitconnected.com/ditch-sql-let-vanna-handle-it-f14289d0a32f
Настройка производительности PostgreSQL, часть I: как определить размер базы данных
https://www.timescale.com/blog/postgresql-performance-tuning-part-i-how-to-size-your-database/
В мире баз данных эффективность имеет ключевое значение. Независимо от того, работаете ли вы с небольшим приложением или с массивной корпоративной системой, производительность вашей базы данных может улучшить или разрушить ваше приложение. Одним из самых мощных инструментов в вашем распоряжении для оптимизации производительности базы данных является индексирование. https://towardsdev.com/the-power-of-indexing-in-databases-a52c26c11d86
Откажитесь от SQL — пусть этим займётся Ванна!
Пользователи SQL будут заменены этим инструментом искусственного интеллекта в кратчайшие сроки. Вот как.
https://levelup.gitconnected.com/ditch-sql-let-vanna-handle-it-f14289d0a32f
Настройка производительности PostgreSQL, часть I: как определить размер базы данных
https://www.timescale.com/blog/postgresql-performance-tuning-part-i-how-to-size-your-database/
Medium
The Power of Indexing in Databases
In the world of databases, efficiency is key. Whether you’re working with a small application or a massive enterprise system, the…
Как не потерять производительность при секционировании в MS SQL.
Рассмотрим достаточно распространенную ситуацию. Имеется огромная таблица примерно следующей структуры:
Читать далее https://habr.com/ru/articles/762674
Рассмотрим достаточно распространенную ситуацию. Имеется огромная таблица примерно следующей структуры:
Читать далее https://habr.com/ru/articles/762674
Хабр
Как не потерять производительность при секционировании в MS SQL
Постановка задачи Рассмотрим достаточно распространенную ситуацию. Имеется огромная таблица примерно следующей структуры: CREATE TABLE SomeOperations ( OperationId bigint NOT NULL, OperDate datetime...
📝Как в базах данных выполняются выражения?
_______________
https://notes.eatonphil.com/2023-09-21-how-do-databases-execute-expressions.html
_______________
https://notes.eatonphil.com/2023-09-21-how-do-databases-execute-expressions.html
[Перевод] Выберите технологию очередей Postgres.
Очереди в Postgres — вещь красивая, но далекая от мейнстрима. Его относительная безвестность частично объясняется карго-культом «масштабируемости». Культ масштабируемости постановил, что существует несколько технологий очередей с большей «масштабируемостью», чем Postgres, и только по этой причине Postgres недостаточно масштабируем для чьих-либо потребностей в работе с очередями.
Читать далее https://habr.com/ru/articles/763188
Очереди в Postgres — вещь красивая, но далекая от мейнстрима. Его относительная безвестность частично объясняется карго-культом «масштабируемости». Культ масштабируемости постановил, что существует несколько технологий очередей с большей «масштабируемостью», чем Postgres, и только по этой причине Postgres недостаточно масштабируем для чьих-либо потребностей в работе с очередями.
Читать далее https://habr.com/ru/articles/763188
Обновление в SQL
Upsert — это операция, которая ➊ вставляет новые записи в базу данных и ➋ обновляет существующие. Давайте посмотрим, как это работает в разных СУБД. Примеры интерактивны, поэтому вы можете читать и практиковаться
https://antonz.org/sql-upsert
Upsert — это операция, которая ➊ вставляет новые записи в базу данных и ➋ обновляет существующие. Давайте посмотрим, как это работает в разных СУБД. Примеры интерактивны, поэтому вы можете читать и практиковаться
https://antonz.org/sql-upsert
antonz.org
Upsert in SQL
Inserting and updating data with a single query.
Арлекин
Harlequin — это новая замена DuckDB CLI с открытым исходным кодом. Он предлагает функции, которые вы ожидаете от IDE, работающие прямо в вашем терминале. Запускается где угодно: в любой оболочке, в любом терминале, на любой машине. https://harlequin.sh/
Harlequin — это новая замена DuckDB CLI с открытым исходным кодом. Он предлагает функции, которые вы ожидаете от IDE, работающие прямо в вашем терминале. Запускается где угодно: в любой оболочке, в любом терминале, на любой машине. https://harlequin.sh/
harlequin.sh
Harlequin: The SQL IDE for Your Terminal.
Harlequin is a drop-in replacement for the DuckDB CLI, SQLite CLI, psql, etc. that brings SQL IDE features to your terminal.
Погружаемся в базы данных и SQL: полезные материалы и инструменты от сотрудников Selectel.
Новичку нужно перебрать много сайтов, чтобы научиться работать с базами данных. Это усложняется тем, что в открытом доступе мало действительно полезных материалов, которые могут закрыть все пробелы в знаниях.
Мы попросили наших коллег порекомендовать полезные ресурсы, которые помогут сделать первые шаги в работе с базами данных и SQL. Сохраняйте подборку в закладки, чтобы сэкономить время на изучение темы, и делитесь своими вариантами в комментариях.
Почему программисты SQL так плохо шутят? Потому что их юмор — это всегда "SELECT * FROM jokes WHERE is_funny = 1". Читать дальше →https://habr.com/ru/companies/selectel/articles/763772
Новичку нужно перебрать много сайтов, чтобы научиться работать с базами данных. Это усложняется тем, что в открытом доступе мало действительно полезных материалов, которые могут закрыть все пробелы в знаниях.
Мы попросили наших коллег порекомендовать полезные ресурсы, которые помогут сделать первые шаги в работе с базами данных и SQL. Сохраняйте подборку в закладки, чтобы сэкономить время на изучение темы, и делитесь своими вариантами в комментариях.
Почему программисты SQL так плохо шутят? Потому что их юмор — это всегда "SELECT * FROM jokes WHERE is_funny = 1". Читать дальше →https://habr.com/ru/companies/selectel/articles/763772
Хабр
Погружаемся в базы данных и SQL: полезные материалы и инструменты от сотрудников Selectel
Почему программисты SQL так плохо шутят? Потому что их юмор — это всегда "SELECT * FROM jokes WHERE is_funny = 1" . Новичку нужно перебрать много сайтов, чтобы научиться работать с базами...
PostgreSQL и временные таблицы.
Мы много лет уже используем в качестве основной базы данных PostgreSQL. За это время он зарекомендовал себя быстрой и надежной СУБД. Однако, есть в PostgreSQL одна проблема, с которой приходится сталкиваться достаточно часто. К сожалению, реализация логики временных таблиц в нем имеет ряд недостатков, которые отрицательно сказываются на производительности системы.
Одним из свидетельств наличия проблемы является то, что для временных таблиц в Postgres Pro была добавлена специальная функция fasttrun, а в Postgres Pro Enterprise существенно доработана работа с ними (см. пункт 4).
Наиболее активно временные таблицы используют платформы, в которых разработчик не работает напрямую с базой данных, а таблицы и запросы генерируются непосредственно самой платформой. В частности, к ним относится платформа 1С или ее открытый и бесплатный аналог - платформа lsFusion.
В этой статье я опишу почему приходится использовать временные таблицы, в чем суть проблемы, и как улучшить производительность путем настроек операционной системы и PostgreSQL.
Читать далее https://habr.com/ru/articles/754476
Мы много лет уже используем в качестве основной базы данных PostgreSQL. За это время он зарекомендовал себя быстрой и надежной СУБД. Однако, есть в PostgreSQL одна проблема, с которой приходится сталкиваться достаточно часто. К сожалению, реализация логики временных таблиц в нем имеет ряд недостатков, которые отрицательно сказываются на производительности системы.
Одним из свидетельств наличия проблемы является то, что для временных таблиц в Postgres Pro была добавлена специальная функция fasttrun, а в Postgres Pro Enterprise существенно доработана работа с ними (см. пункт 4).
Наиболее активно временные таблицы используют платформы, в которых разработчик не работает напрямую с базой данных, а таблицы и запросы генерируются непосредственно самой платформой. В частности, к ним относится платформа 1С или ее открытый и бесплатный аналог - платформа lsFusion.
В этой статье я опишу почему приходится использовать временные таблицы, в чем суть проблемы, и как улучшить производительность путем настроек операционной системы и PostgreSQL.
Читать далее https://habr.com/ru/articles/754476
Хабр
PostgreSQL и временные таблицы
Мы много лет уже используем в качестве основной базы данных PostgreSQL. За это время он зарекомендовал себя быстрой и надежной СУБД. Однако, есть в PostgreSQL одна проблема, с которой приходится...