Пересказ статьи AGEDB. Query Processing in PostgreSQL
Введение
Как энтузиаст и разработчик ПО я очарован внутренней работой PostgreSQL. Способ, с помощью которого обрабатываются все клиентские запросы в едином серверном процессе, и его сложные подсистемы для обработки запросов действительно изумляют меня. Я захотел выяснить, как работают запросы в PostgreSQL. Я провел некоторое исследование и нашел то, что происходит внутри кода PostgreSQL. Этот краткий обзор объясняет процесс выполнения запроса и то, как PostgreSQL делает это, чтобы гарантировать вам лучшую производительность его выполнения. Конечно, производительность в значительной степени зависит от того, как спроектирована база данных, поэтому обратитесь к
советам по основам моделирования базы данных от AGEDB.
Continue reading "Обработка запроса в PostgreSQL"
Пересказ статьи Henrietta Dombrovskaya. Exploring PostgreSQL Indexes
В этом блоге мы продолжим наше изучение индексов в PostgreSQL, которое начали
здесь. В той статье мы узнали, что такое индекс и как индексы могут помочь при выполнении запроса. Но здесь мы узнаем намного больше об индексах! В этом блоге мы будем рассматривать индексы B-Tree. Мы выясним, действительно ли (и как) ограничения базы данных связаны с индексами (или нет), как точно работает сканирование битовой карты индекса, и узнаем некоторые дополнительные варианты индексов, доступные в PostgreSQL.
Continue reading "Изучение индексов в PostgreSQL"
Пересказ статьи Sobin Sunny. Database Mastery: Deleting 4 Million Records from PostgreSQL, the Smart Way!
Представьте себе оживленную платформу электронной торговли, где миллионы пользователей оформляют поставки с журналами слежения за перемещением объектов. Теперь рассмотрим сценарий, когда спустя время накапливается значительный объем устаревших или ненужных данных, засоряя базы данных и влияя на производительность системы.
Continue reading "Мастерство работы с базами данных: умное удаление 4 миллионов записей из PostgreSQL!"
Пересказ статьи Rasiksuhail. Python and SQL. Up Your Database Game!
Python & SQL - экстраординарная пара
Сочетание Python и SQL является исключительно мощным и широко используемым в области управления данными, анализа и разработки приложений.
Читабельность Python и обширная экосистема в сочетании со стандартом SQL для реляционных баз данных создает мощную синергию. Ценность этой пары особенно проявляется в науке о данных, машинном обучении и веб-разработке, где богатые библиотеки Python бесшовно интегрируются с SQL для эффективной манипуляции данными и анализа. Более того, простота Python дает преимущество для создания сценариев, автоматизации и текущего обслуживания баз данных SQL.
Continue reading "Python и SQL. Улучшите свою игру с базой данных!"
Пересказ статьи Askin TAMANLI. Fastest Methods to Bulk Insert a Pandas Dataframe into PostgreSQL
Имеется множество методов загрузки данных (фрейма данных pandas) в базы данных. Мы собираемся сравнить различные методы загрузки. В качестве базы данных будет использоваться PostgreSQL (версия 16.1, установленная локально).
Continue reading "Самые быстрые методы массовой вставки фрейма данных Pandas в PostgreSQL"
Пересказ статьи Valentine Blaze. PostgreSQL Functions: Unlocking the Power of User-Defined Functions
В мире реляционных баз данных PosgtreSQL является мощной, богатой возможностями системой. Одной из наиболее гибких особенностей является возможность создавать и использовать определяемые пользователем функции. Функции в PostgreSQL позволяют расширить функциональность SQL, встраивая ряд операторов SQL в повторно используемый блок кода. В этой статье мы исследуем мир пользовательских функций в PostgreSQL, и к концу ее вы сможете овладеть их мощью для решения ваших задач в базе данных.
Continue reading "Функции PostgreSQL: сила функций пользователя"
Пересказ статьи Shailesh Kumar Mishra. Find slow queries in PostgreSQL
Медленные запросы могут оказывать значительное влияние на производительность базы данных PostgreSQL. Обнаруживая и оптимизируя медленные запросы, вы можете улучшить общую производительность базы данных и обеспечить лучшие условия для ваших пользователей.
Существует много способов трассировки медленных запросов в PostgreSQL, включая следующие:
Continue reading "Поиск медленных запросов в PostgreSQL"
Пересказ статьи Suffyan Asad. An introduction to working with JSON data in PostgreSQL
PostgreSQL позволяет хранить и манипулировать данными JavaScript Object Notation (JSON). JSON является популярным форматом хранения данных и обычно используется для передачи данных в виде наборов ключ-значение.
Ссылка на стандарт JSON.
Эта статья является введением в возможности PostgreSQL по хранению и манипуляции данными JSON. Рассматриваются типы данных json и jsonb для столбцов JSON, запросы данных JSON, индексы JSON, сопровождаемые примерами.
Continue reading "Введение в работу с данными JSON в PostgreSQL"
Пересказ статьи Rasiksuhail. Guide to PostgreSQL Table Partitioning
PostgreSQL является мощной системой управления реляционными базами данных с открытыми кодами, которая предоставляет различные продвинутые средства для обслуживания больших и сложных наборов данных. Одним из таких средств является секционирование таблиц, позволяющее разделить большую таблицу на меньшие, лучше управляемые части, называемые секциями.
В этом руководстве объясняется концепция секционирования в PostgreSQL и обсуждается, как это способствует улучшению производительности запросов и эффективному управлению данными.
Continue reading "Руководство по секционированию таблиц в PostgreSQL "
Пересказ статьи Denis Magda. Sample Data Generation With Built-In Database Capabilities
Имеется много способов генерации фиктивных данных для базы данных. Вы можете создать генератор данных, используя Mock-сервисы для тестирования, или получить подмножество собственных производственных данных. Помимо этого многие базы данных предлагают встроенные возможности для создания синтетических данных.
В этой статье вы узнаете, как использовать специальные функции базы данных, иерархические запросы и
рекурсивные общие табличные выражения (CTE) для генерации тестового набора данных в PostgreSQL, MySQL, Oracle и SQL Server.
Continue reading "Генерация тестовых данных с помощью встроенных возможностей базы данных"
Пересказ статьи Nathan Rosidi. Ranking in Python and SQL
Мы обсуждали основы ранжирования в Python в нашем руководстве
“Methods for Ranking in Pandas”, где рассматривались наиболее употребимые параметры функции ранжирования в Pandas. В частности, мы изучали различные методы ранжирования, которые имеют решающее значение в борьбе с родственными значениями. Помимо методов ранжирования функция ранжирования в Pandas обладает и другими параметрами, которые позволяют выполнить дальнейшую настройку и уточнение способа определения рангов. Понимание этих параметров важно при работе с наборами данных, которые требуют более таких сложных методов ранжирования, как процентильное ранжирование или работа с недостающими данными.
Continue reading "Ранжирование в Python и SQL"
Пересказ статьи Crafting-Code. Tools and Techniques for Profiling and Debugging Slow-Running SQL Queries
Производительность базы данных является ключевым аспектом любого приложения, и когда запросы SQL начинают тормозить, это может оказать значительное влияние на производительность всей системы.
Профилирование и отладка медленно выполняющихся запросов SQL являются важными навыками администраторов баз данных, разработчиков и всех тех, кто отвечает за обслуживание приложений на основе базы данных.
В этой статье мы рассмотрим различные инструменты и методы для обнаружения, анализа и оптимизации медленно выполняющихся SQL-запросов, включая практические примеры кода.
Continue reading "Инструменты и методы для профилирования и отладки медленно выполняющихся SQL-запросов"
Пересказ статьи Muhammad Ali. Understand Explain Plans in PostgreSQL
В
предыдущей статье мы обсуждали утилиту pg_stat_statements - инструмент для идентификации запросов, интенсивно использующих ресурсы - памяти, ЦП или ввода/вывода.
Теперь предположим, что вы определились с запросами, которые хотите исследовать дальше. Команда EXPLAIN используется для генерации планов выполнения. Она включает:
Continue reading "Понимание планов в PostgreSQL"
Пересказ статьи Adam Furmanek. How Does Partitioning Work in PostgreSQL and Why Should You Care?
Секционирование позволяет разделить логически одну большую таблицу на физические таблицы меньших размеров. Это может улучшить производительность запросов, обеспечивая доступ к меньшему числу строк, оптимизируя чтения со случайным доступом и используя очень таргетированные индексы. Давайте посмотрим, как это работает в PostgreSQL и как Metis их обрабатывает.
Continue reading "Как работает секционирование в PostgreSQL и почему вас это должно беспокоить?"
Пересказ статьи Henrietta Dombrovskaya. PostgreSQL Indexes: What They Are and How They Help
В
предыдущей статье этой серии мы узнали, как произвести, прочитать и интерпретировать планы выполнения. Мы узнали, что план выполнения предоставляет информацию о методах доступа, которые PostgreSQL использует для выборки записей из базы данных. В частности, мы видели, что в некоторых случаях PostgreSQL использовал последовательное сканирование, а в некоторых - доступ на основе индекса.
Кажется, что было бы неплохо поговорить об индексах до обсуждения планов выполнения, но планы запросов - это хорошее место для начала движения в сторону решения проблем производительности! Здесь мы собираемся поговорить об индексах, зачем они нам нужны, как они могут нам помочь, и как они могут усугубить ситуацию.
Continue reading "Индексы PostgreSQL: что это такое и как они могут помочь"