Goose - это инструмент для миграции баз данных. Управляйте схемой базы данных, создавая инкрементные изменения SQL или функции Go.
Site: https://pressly.github.io/goose/
GitHub: https://github.com/pressly/goose
#db
👉 @database_info
Site: https://pressly.github.io/goose/
GitHub: https://github.com/pressly/goose
#db
👉 @database_info
👍3
Clickhouse — непростая жизнь в продакшене
Около двух лет назад вышла небольшая статья Kafka Streams — непростая жизнь в production, в которой я описывал сложности, с которыми наша команда столкнулась при попытке решить задачи проекта с помощью kafka-streams. Эксперимент вышел неудачным, и мы в итоге совсем отказались от этой технологии. Вместо нее решили попробовать Clickhouse (CH), и сейчас уже можно сказать, что эта база нам очень хорошо подошла и отлично решает почти все задачи, которые нам ставит бизнес. В этой статье я расскажу об особенностях использования CH.
https://habr.com/ru/companies/maxilect/articles/761258/
#db
👉 @database_info
Около двух лет назад вышла небольшая статья Kafka Streams — непростая жизнь в production, в которой я описывал сложности, с которыми наша команда столкнулась при попытке решить задачи проекта с помощью kafka-streams. Эксперимент вышел неудачным, и мы в итоге совсем отказались от этой технологии. Вместо нее решили попробовать Clickhouse (CH), и сейчас уже можно сказать, что эта база нам очень хорошо подошла и отлично решает почти все задачи, которые нам ставит бизнес. В этой статье я расскажу об особенностях использования CH.
https://habr.com/ru/companies/maxilect/articles/761258/
#db
👉 @database_info
👍6
Одна из возможных версий переезда с MySQL на PostgreSQL
Всем привет! Меня зовут Станислав, я Java-разработчик в Rocket Science, outsource-компании, специализирующейся преимущественно на финтех-проектах. С 2019 года я веду проект бэкенда для внутренних мобильных приложений (которыми пользуются сотрудники) одного крупного банка. Когда мы начинали проект, у DBA были компетенции только в Oracle и MySQL, а в последние пару лет, наоборот, фокус в организации сместился в сторону PostgreSQL и появилась тенденция по переезду в него разных внутренних сервисов. Нашей команде было вполне комфортно на MySQL, но мы прикинули, что переезд в PostgreSQL позволит нам решить ряд попутных технических вопросов, и ввязались в эту авантюру.
В этой статье я расскажу, какие подводные камни ждали нас на этом пути.
https://habr.com/ru/articles/742552/
#db
👉 @database_info
Всем привет! Меня зовут Станислав, я Java-разработчик в Rocket Science, outsource-компании, специализирующейся преимущественно на финтех-проектах. С 2019 года я веду проект бэкенда для внутренних мобильных приложений (которыми пользуются сотрудники) одного крупного банка. Когда мы начинали проект, у DBA были компетенции только в Oracle и MySQL, а в последние пару лет, наоборот, фокус в организации сместился в сторону PostgreSQL и появилась тенденция по переезду в него разных внутренних сервисов. Нашей команде было вполне комфортно на MySQL, но мы прикинули, что переезд в PostgreSQL позволит нам решить ряд попутных технических вопросов, и ввязались в эту авантюру.
В этой статье я расскажу, какие подводные камни ждали нас на этом пути.
https://habr.com/ru/articles/742552/
#db
👉 @database_info
👍4
Expert Oracle Database Architecture: Techniques and Solutions for High Performance and Productivity
Автор: Darl Kuhn (2021)
Теперь в четвертом издании, охватывающем Oracle Database 21c, эта книга-бестселлер продолжает знакомить вас с лучшими мыслями о том, как применять Oracle Database для создания масштабируемых приложений, которые хорошо работают и дают правильные результаты. Авторы разделяют простую философию: "Вы можете относиться к Oracle как к черному ящику и просто засовывать в него данные, а можете понять, как он работает, и использовать его как мощную вычислительную среду". Если вы выберете последнее, то обнаружите, что существует мало проблем управления информацией, которые вы не сможете решить быстро и элегантно.
#db
👉 @database_info
Автор: Darl Kuhn (2021)
Теперь в четвертом издании, охватывающем Oracle Database 21c, эта книга-бестселлер продолжает знакомить вас с лучшими мыслями о том, как применять Oracle Database для создания масштабируемых приложений, которые хорошо работают и дают правильные результаты. Авторы разделяют простую философию: "Вы можете относиться к Oracle как к черному ящику и просто засовывать в него данные, а можете понять, как он работает, и использовать его как мощную вычислительную среду". Если вы выберете последнее, то обнаружите, что существует мало проблем управления информацией, которые вы не сможете решить быстро и элегантно.
#db
👉 @database_info
👍4
Пять факторов, которые влияют на выбор базы данных
При выборе баз данных для текущего проекта (или при замене тех, которые не отвечают вашим текущим потребностям) количество возможных вариантов очень велико. Это и хорошо, и плохо, ведь нужны какие-то критерии фильтрации.
Сегодня есть гораздо больше баз данных, чем когда-либо. В декабре 2012 года, когда DB-Engines.com впервые начал ранжировать базы данных, у него получился список из 73 систем (существенный рост по сравнению с самым первым списком из 18 систем). Спустя десять лет, на декабрь 2022 года в списке было уже почти четыреста систем. За последнее десятилетие произошёл настоящий кембрийский взрыв технологий баз данных. Нужно ориентироваться в обширном пространстве вариантов: SQL, NoSQL, множество «многомодельных» баз данных, которые могут быть сочетанием SQL и NoSQL, или множественные модели данных NoSQL (сочетающие две или более опций: документы, ключи-значения, широкие столбцы, графы и так далее).
Rus https://habr.com/ru/companies/ruvds/articles/713892/
Eng https://dzone.com/articles/5-factors-when-selecting-a-database
#db
👉 @database_info
При выборе баз данных для текущего проекта (или при замене тех, которые не отвечают вашим текущим потребностям) количество возможных вариантов очень велико. Это и хорошо, и плохо, ведь нужны какие-то критерии фильтрации.
Сегодня есть гораздо больше баз данных, чем когда-либо. В декабре 2012 года, когда DB-Engines.com впервые начал ранжировать базы данных, у него получился список из 73 систем (существенный рост по сравнению с самым первым списком из 18 систем). Спустя десять лет, на декабрь 2022 года в списке было уже почти четыреста систем. За последнее десятилетие произошёл настоящий кембрийский взрыв технологий баз данных. Нужно ориентироваться в обширном пространстве вариантов: SQL, NoSQL, множество «многомодельных» баз данных, которые могут быть сочетанием SQL и NoSQL, или множественные модели данных NoSQL (сочетающие две или более опций: документы, ключи-значения, широкие столбцы, графы и так далее).
Rus https://habr.com/ru/companies/ruvds/articles/713892/
Eng https://dzone.com/articles/5-factors-when-selecting-a-database
#db
👉 @database_info
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Уроки по SQL
1 - Введение
2 - Что может SQL?
3 - Состав базы данных
4 - SELECT
5 - SELECT DISTINCT
6 - WHERE (first attempt)
7 - AND, OR and NOT
8 - ORDER BY
9 - INSERT INTO
10 - SQL NULL VALUES
источник
#db
👉 @database_info
1 - Введение
2 - Что может SQL?
3 - Состав базы данных
4 - SELECT
5 - SELECT DISTINCT
6 - WHERE (first attempt)
7 - AND, OR and NOT
8 - ORDER BY
9 - INSERT INTO
10 - SQL NULL VALUES
источник
#db
👉 @database_info
👍2
PostgreSQL Antipatterns: простой(?) INSERT… VALUES
Представим, что у вас есть некоторая табличка статистики, куда вы периодически скидываете таймстамп последнего "текущего" состояния в паре координат - например, (ID организации, ID сотрудника).
Как больно наступить на грабли в совсем простом, казалось бы, запросе?
https://habr.com/ru/company/tensor/blog/702902/
#PostgreSQL
👉 @database_info
Представим, что у вас есть некоторая табличка статистики, куда вы периодически скидываете таймстамп последнего "текущего" состояния в паре координат - например, (ID организации, ID сотрудника).
Как больно наступить на грабли в совсем простом, казалось бы, запросе?
https://habr.com/ru/company/tensor/blog/702902/
#PostgreSQL
👉 @database_info
👍3
Pro SQL Server 2022 Wait Statistics: A Practical Guide to Analyzing Performance in SQL Server and Azure SQL Database, 3rd Edition
Автор: Enrico van de Laar (2023)
Используйте это практическое руководство для анализа и устранения неполадок в работе SQL Server с помощью статистики ожидания. Вы научитесь точно определять, почему ваши запросы выполняются медленно. Вы будете знать, как измерить количество времени, затрачиваемое каждым узким местом, чтобы сосредоточить внимание на самых значительных улучшениях.
Книга не ограничивается рассмотрением наиболее распространенных типов ожиданий, а переходит к более сложным и угрожающим производительности типам ожиданий. Вы узнаете о статистике ожидания по запросам и статистике ожидания на основе сеансов, а также о типах проблем, которые они могут помочь вам решить.
#db
👉 @database_info
Автор: Enrico van de Laar (2023)
Используйте это практическое руководство для анализа и устранения неполадок в работе SQL Server с помощью статистики ожидания. Вы научитесь точно определять, почему ваши запросы выполняются медленно. Вы будете знать, как измерить количество времени, затрачиваемое каждым узким местом, чтобы сосредоточить внимание на самых значительных улучшениях.
Книга не ограничивается рассмотрением наиболее распространенных типов ожиданий, а переходит к более сложным и угрожающим производительности типам ожиданий. Вы узнаете о статистике ожидания по запросам и статистике ожидания на основе сеансов, а также о типах проблем, которые они могут помочь вам решить.
#db
👉 @database_info
👍2
Как найти дубликат записи? Опишите процесс для дублирования записей с одним и несколькими полями.
Дублирование записей с одним полем:
Дублирование записей с несколькими полями:
#db
👉 @database_info
Дублирование записей с одним полем:
SELECT name, COUNT(email)
FROM users
GROUP BY email
HAVING COUNT(email) > 1Дублирование записей с несколькими полями:
SELECT name, email, COUNT(*)
FROM users
GROUP BY name, email
HAVING COUNT(*) > 1 #db
👉 @database_info
👍9