SQL-Ex @sqlexercises Channel on Telegram

SQL-Ex

@sqlexercises


Канал посвящён событиям на сайте "Упражнения SQL"
The channel is dedicated to the events on the site "SQL Exercises"
www.sql-ex.ru

SQL-Ex (Russian)

Добро пожаловать в канал SQL-Ex! Этот канал посвящён событиям на сайте "Упражнения SQL". Здесь вы найдете самые свежие новости, обновления и интересные статьи, связанные с SQL Exercises. Заходите на наш сайт www.sql-ex.ru, чтобы углубить знания в области SQL и пройти увлекательные упражнения. Наш канал обладает огромным количеством полезной информации, которая поможет как начинающим, так и опытным специалистам в области баз данных. Не пропустите возможность быть в курсе всех событий и делитесь своими впечатлениями с другими участниками канала SQL-Ex. Присоединяйтесь к нам прямо сейчас и станьте частью нашего обширного сообщества SQL-экспертов!

SQL-Ex

18 Jan, 07:53


Краткое руководство по PostgreSQL CLI
https://sql-ex.ru/blogs/?/Kratkoe_rukovodstvo_po_PostgreSQL_CLI.html

Пересказ статьи Kasper Junge. A Brief Guide to the PostgreSQL CLI (https://medium.com/@kasperjuunge/a-brief-guide-to-using-postgresql-cli-0f5ebb79fc44%22)

Использование интерфейса командной строки PostgreSQL (CLI) в первую очередь включает взаимодействие с двумя главными утилитами: psql, интерактивный терминал для работы с PostgreSQL, и различные инструменты командной строки типа pg_dump для резервных копий базы данных. Вот руководство, с которого можно начать:

Начнем с psql

Доступ к CLI:

Откройте ваш интерфейс командной строки (терминал на Linux/macOS, командную строку или PowerShell на Windows

Наберите psql -U [имя пользователя] -d [база данных] для подключения к вашей базе данных PostgreSQL. Замените [имя пользователя] на имя реального пользователя PostgreSQL, а [база данных] - на имя базы данных.

Вам может потребоваться указать хост (-h [хост]) и порт (-p [порт]), если ваша база не находится на локальном севере и не использует порт по умолчанию.

Продолжить чтение "Краткое руководство по PostgreSQL CLI" (https://sql-ex.ru/blogs/?/Kratkoe_rukovodstvo_po_PostgreSQL_CLI.html#extended)

SQL-Ex

17 Jan, 18:57


Новости за 2025-01-11 - 2025-01-17
https://sql-ex.ru/blogs/?/Novosti_za_2025-01-11_-_2025-01-17.html

§ Лидеры недели Участник w_sel all_sel select dml Всего Рейтинг
Макаров И.А. (_Bkmz_) (https://sql-ex.ru/users_page.php?uid=30229) 3 142 9 0 9 93
Суханов Я. (Yaroslav19981) 6 9 9 0 9 3491
Якшин И.В. (ivan_y) 2 105 7 0 7 280
Chuvstvin M. (chuvstvinmaxim) (https://sql-ex.ru/users_page.php?uid=771423) 1 139 4 0 4 136
Кулемзин Н.Е. (Bulochka_c_izu (https://sql-ex.ru/users_page.php?uid=369862) 2 131 4 0 4 137

Продолжить чтение "Новости за 2025-01-11 - 2025-01-17" (https://sql-ex.ru/blogs/?/Novosti_za_2025-01-11_-_2025-01-17.html#extended)

SQL-Ex

15 Jan, 07:40


Пошаговая инструкция восстановления базы данных PostgreSQL из файла дампа SQL
https://sql-ex.ru/blogs/?/PoshagovaJa_instrukciJa_vosstanovleniJa_bazy_dannyh_PostgreSQL_iz_fajla_dampa_SQL.html

Пересказ статьи Victor Magallanes. A Step-by-Step Guide: Restoring a PostgreSQL Database from a Dump SQL File (https://medium.com/@amb39305/a-step-by-step-guide-restoring-a-postgresql-database-from-a-dump-sql-file-5b0cd6d8e81a%22)

PostgreSQL является мощной системой управления реляционными базами данных с открытыми кодами, широко используемой для хранения и управления данными в различных приложениях. Иногда вам необходимо восстановить базу данных PostgreSQL из файла дампа SQL в случаях повреждения в результате сбоя, переноса или тестирования. В этой статье мы представим полное руководство по восстановлению базы данных PostgreSQL из файла дампа SQL, описав необходимые шаги и лучшую практику.

Понятие файла дампа базы данных

Прежде чем перейти к процессу восстановления, давайте разберемся с тем, что представляет собой файл дампа базы данных. Дамп базы данных - это файл, содержащий снимок схемы базы данных и данных на конкретный момент времени. Этот файл обычно генерируется утилитой pg_dump, входящей в пакет PostgreSQL, и содержит команды SQL для воссоздания структуры базы данных и вставки в нее данных.

Продолжить чтение "Пошаговая инструкция восстановления базы данных PostgreSQL из файла дампа SQL" (https://sql-ex.ru/blogs/?/PoshagovaJa_instrukciJa_vosstanovleniJa_bazy_dannyh_PostgreSQL_iz_fajla_dampa_SQL.html#extended)

SQL-Ex

11 Jan, 09:51


Массовая вставка в PostgreSQL 14 с помощью postgres_fdw
https://sql-ex.ru/blogs/?/MassovaJa_vstavka_v_PostgreSQL_14_s_pomowju_postgres_fdw.html

Пересказ статьи Dileep kumar. Bulk Insert with postgres_fdw in PostgreSQL 14 (https://towardsdev.com/bulk-insert-with-postgres-fdw-in-postgresql-14-1ad00dac3ffe)

В этой статье мы обсудим представление модулем postgres_fdw обертки внешних данных, которая может использоваться для доступа к данных, хранящимся на внешних серверах PostgreSQL.

Этот новый модуль подобен старому модулю dblink. Функционально postgres_fdw является обработчиком данных полей для удаленных таблиц в PostgreSQL, который делает это более прозрачно и в соответствии со стандартом.

Продолжить чтение "Массовая вставка в PostgreSQL 14 с помощью postgres_fdw" (https://sql-ex.ru/blogs/?/MassovaJa_vstavka_v_PostgreSQL_14_s_pomowju_postgres_fdw.html#extended)

SQL-Ex

10 Jan, 21:06


Новости за 2025-01-04 - 2025-01-10
https://sql-ex.ru/blogs/?/Novosti_za_2025-01-04_-_2025-01-10.html

§ Популярные темы недели на форуме Топик Сообщений Просмотров
39 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=39) 5 9
91 (SELECT) (https://sql-ex.ru/forum/forum.php?F=1&N=91) 4 4
40 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=40) 3 12
204 (SELECT) (https://sql-ex.ru/forum/forum.php?F=1&N=204) 2 5
46 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=46) 2 9

§ Авторы недели на форуме Автор Сообщений
selber (https://sql-ex.ru/users_page.php?uid=128116) 7
JaneGame 7
$erges (https://sql-ex.ru/users_page.php?uid=29599) 3

Продолжить чтение "Новости за 2025-01-04 - 2025-01-10" (https://sql-ex.ru/blogs/?/Novosti_za_2025-01-04_-_2025-01-10.html#extended)

SQL-Ex

08 Jan, 21:11


Исследование производительности: прямые SQL-запросы или ORM в Python
https://sql-ex.ru/blogs/?/Issledovanie_proizvoditelnosti_prJamye_SQL-zaprosy_ili_ORM_v_Python.html

Пересказ статьи Exploring Performance: Raw SQL Queries vs. ORM in Python (https://code.likeagirl.io/exploring-performance-raw-sql-queries-vs-orm-in-python-c66676111b1d)

В приложениях, управляемых данными, очень важна оптимизация производительности. Когда приходится взаимодействовать с данными, разработчики часто оказываются на распутье: следует ли им непосредственно использовать запросы SQL или выбрать фреймворк объектно-реляционного отображения (ORM)? Эта статья углубляется в эту дискуссию, выделяя преимущества и недостатки обоих подходов, сопровождая их реальными примерами кода Python для более глубокого понимания.

Понимание ландшафта

Прямые запросы SQL встраиваются непосредственно в ваш код для взаимодействия с данными. Они предоставляют разработчикам детальное управление структурой и выполнением запроса, что делает их привлекательными для сложных запросов. С другой стороны, фреймворки ORM типа SQLAlchemy абстрагируют взаимодействие с базой данных в объекты Python, снижая необходимость писать непосредственно на SQL, улучшая при этом читабельность кода.

Продолжить чтение "Исследование производительности: прямые SQL-запросы или ORM в Python" (https://sql-ex.ru/blogs/?/Issledovanie_proizvoditelnosti_prJamye_SQL-zaprosy_ili_ORM_v_Python.html#extended)

SQL-Ex

04 Jan, 11:10


Антипаттерны SQL Server: характерные ошибки кода SQL
https://sql-ex.ru/blogs/?/Antipatterny_SQL_Server_harakternye_oshibki_koda_SQL.html

Пересказ статьи Rich Benner. SQL Server Antipatterns: Common Mistakes with SQL Code (https://sqlsolutionsgroup.com/common-mistakes-with-sql-code/)

В современном технически насыщенном мире от разработчиков требуется широкий диапазон навыков и языков программирования. Язык SQL обычно является одним из них. Это гарантирует, что в команде возможна взаимная поддержка на ежедневной основе, но это также может приводить к ошибкам в коде SQL.

Одной из потенциальных проблем здесь является нехватка времени для того, чтобы действительно глубоко вникать в каждый язык программирования, имеющийся в вашем арсенале. Что касается SQL Server, то язык, который там используется, весьма отличается от, скажем, C#. Эти языки основаны на обработке в итерационном процессе каждой строки отдельно в наборе данных. Это достаточно хорошо работает в подобных языках, но совершенно ужасно в SQL Server. Будучи языком, основанном на теории множеств, SQL Server предпочитает иметь дело сразу со всем множеством данных.

Продолжить чтение "Антипаттерны SQL Server: характерные ошибки кода SQL" (https://sql-ex.ru/blogs/?/Antipatterny_SQL_Server_harakternye_oshibki_koda_SQL.html#extended)

SQL-Ex

03 Jan, 16:16


Новости за 2024-12-28 - 2025-01-03
https://sql-ex.ru/blogs/?/Novosti_za_2024-12-28_-_2025-01-03.html

§ Популярные темы недели на форуме Топик Сообщений Просмотров
35 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=35) 5 10
36 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=36) 3 7
32 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=32) 3 6
8 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=8) 3 13
38 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=38) 2 10
§ Авторы недели на форуме Автор Сообщений
JaneGame 6
selber (https://sql-ex.ru/users_page.php?uid=128116) 4
Murderface_ (https://sql-ex.ru/users_page.php?uid=556296) 3
chuvstvinmaxim (https://sql-ex.ru/users_page.php?uid=771423) 2
ttp://www.sql-ex.ru/ 2
Продолжить чтение "Новости за 2024-12-28 - 2025-01-03" (https://sql-ex.ru/blogs/?/Novosti_za_2024-12-28_-_2025-01-03.html#extended)

SQL-Ex

01 Jan, 11:49


Немного о тривиальных планах
https://sql-ex.ru/blogs/?/Nemnogo_o_trivialnyh_planah.html

Пересказ статьи Andy Brownsword. A Bit About Trivial Plans (https://andybrownsword.co.uk/2024/02/20/a-bit-about-trivial-plans/)

Тривиальный план создается, когда у SQL Server нет никакого выбора по реализации. Вот пример из базы данных StackOverflow (https://www.brentozar.com/archive/2015/10/how-to-download-the-stack-overflow-database-via-bittorrent/) с удаленными индексами:

SELECT *

FROM dbo.Users

WHERE Id = 1234;

Здесь действительно нет никакого выбора помимо поиска в кластеризованном индексе. Это единственный индекс и это настолько же эффективно, насколько это возможно, учитывая, что мы фильтруем по ключу кластеризации для конкретного значения:

Продолжить чтение "Немного о тривиальных планах" (https://sql-ex.ru/blogs/?/Nemnogo_o_trivialnyh_planah.html#extended)

SQL-Ex

28 Dec, 08:49


Функции и процедуры: изучаем PostgreSQL вместе с Grant Fritchey
https://sql-ex.ru/blogs/?/Funkcii_i_procedury_izuchaem_PostgreSQL_vmeste_s_Grant_Fritchey.html

Пересказ статьи Grant Fritchey. Functions and Procedures Learning PostgreSQL with Grant (https://www.red-gate.com/simple-talk/databases/postgresql/functions-and-procedures-learning-postgresql-with-grant/)

Это очередная часть продолжающейся серии публикаций Гранта, который имеет глубокие знания SQL Server, применяет их к освоению PostgreSQL и делится этим с вами, чтобы вы могли учиться на его достижениях и ошибках. Ознакомиться с этой серией вы можете тут (https://www.red-gate.com/simple-talk/learning-postgresql-with-grant-fritchey/).
Одной из наиболее полезных конструкций в SQL Server является хранимая процедура (https://learn.microsoft.com/en-us/sql/t-sql/statements/create-procedure-transact-sql?view=sql-server-ver16). Она дает вам способ делать различные вещи. Во-первых, вы можете хранить код в базе данных. Потом вы можете параметризовать запросы, так что вам не нужно жестко кодировать или генерировать ad hoc запросы всякий раз, когда вы захотите вызвать их. Вы можете включить в транзакцию обработку, использовать многочисленные результирующие наборы, реализовать безопасность и многое другое. Они действительно являются полезным инструментом. Поэтому, разумеется, я перешел прямо к CREATE PROCEDURE (https://www.postgresql.org/docs/current/sql-createprocedure.html) в PostgreSQL.

Продолжить чтение "Функции и процедуры: изучаем PostgreSQL вместе с Grant Fritchey" (https://sql-ex.ru/blogs/?/Funkcii_i_procedury_izuchaem_PostgreSQL_vmeste_s_Grant_Fritchey.html#extended)

SQL-Ex

27 Dec, 18:17


Новости за 2024-12-21 - 2024-12-27
https://sql-ex.ru/blogs/?/Novosti_za_2024-12-21_-_2024-12-27.html

§ С наступающим Новым Годом, коллеги! Здоровья и благополучия в новом году!

§ Изменение в ограничении доступа для получивших бан. Теперь при наличии оплаты участия в рейтинге им открыт доступ к чтению форума обучающего этапа, но без возможности писать.

§ Популярные темы недели на форуме Топик Сообщений Просмотров
25 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=25) 6 12
30 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=30) 5 11
29 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=29) 3 12
777 (SELECT) (https://sql-ex.ru/forum/forum.php?F=1&N=777) 3 3
12 (DML) (https://sql-ex.ru/forum/forum.php?F=2&N=12) 2 4
Продолжить чтение "Новости за 2024-12-21 - 2024-12-27" (https://sql-ex.ru/blogs/?/Novosti_za_2024-12-21_-_2024-12-27.html#extended)

SQL-Ex

25 Dec, 18:09


Соединение больших таблиц в SQL. Как быстро загрузить данные: часть 2
https://sql-ex.ru/blogs/?/Soedinenie_bolshih_tablic_v_SQL._Kak_bystro_zagruzit_dannye_chast_2.html

Пересказ статьи Mitchell Warr. Joining Big SQL Tables How to Load Data Fast Part 2 (https://blog.stackademic.com/joining-big-sql-tables-how-to-load-data-fast-part-2-ec5a5c3f6ab2)

В части 1 (https://sql-ex.ru/blogs/?/Optimizacionnye_trjuki_v_PostgreSQL._Kak_bystro_zagruzit_dannye_chast_1.html) мы рассмотрели несколько методов ускорения запросов в PostgreSQL.

Давайте исследуем нашу собственную историю и ускорим запрос. Мы создадим набор таблиц для студентов, классов, преподавателей и посещаемости. Для нашего примера диаграмма ERD будет выглядеть как на рисунке ниже.

SQL-Ex

25 Dec, 18:09


Продолжить чтение "Соединение больших таблиц в SQL. Как быстро загрузить данные: часть 2" (https://sql-ex.ru/blogs/?/Soedinenie_bolshih_tablic_v_SQL._Kak_bystro_zagruzit_dannye_chast_2.html#extended)

SQL-Ex

21 Dec, 15:39


FastAPI в Python
https://sql-ex.ru/blogs/?/FastAPI_v_Python.html

Пересказ статьи Gaurav Kumar. FastAPI in Python (https://gaurav-adarshi.medium.com/fastapi-in-python-f004887a9df1)

FastAPI является современным, быстрым (высокопроизводительным) веб-фреймворком для построения API с помощью Python 3.6+ на основе стандартных подсказок набора Python. Он построен на Starlette в части веб и на Pydantic в части данных.

Вот некоторые ключевые особенности FastAPI:

Продолжить чтение "FastAPI в Python" (https://sql-ex.ru/blogs/?/FastAPI_v_Python.html#extended)

SQL-Ex

20 Dec, 17:21


Новости за 2024-12-14 - 2024-12-20
https://sql-ex.ru/blogs/?/Novosti_za_2024-12-14_-_2024-12-20.html

§ Популярные темы недели на форуме Топик Сообщений Просмотров
Guest's book (https://sql-ex.ru/forum/forum.php?F=0&N=0) 5 17
24 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=24) 5 13
25 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=25) 4 11
53 (DML) (https://sql-ex.ru/forum/forum.php?F=2&N=53) 3 4
55 (DML) (https://sql-ex.ru/forum/forum.php?F=2&N=55) 2 6

§ Авторы недели на форуме Автор Сообщений
chuvstvinmaxim 8
JaneGame 7
selber (https://sql-ex.ru/users_page.php?uid=128116) 3
I30P0H 3
Nividimka 2

Продолжить чтение "Новости за 2024-12-14 - 2024-12-20" (https://sql-ex.ru/blogs/?/Novosti_za_2024-12-14_-_2024-12-20.html#extended)

SQL-Ex

18 Dec, 22:17


Полезные команды PostgreSQL: часть 2
https://sql-ex.ru/blogs/?/Poleznye_komandy_PostgreSQL_chast_2.html

Пересказ статьи Murat Bilal. HANDY POSTGRESQL COMMANDS PART-2 (https://medium.com/@murat.bilal/handy-postgresql-commands-part-2-e7b21c0450d4)

Это вторая часть предыдущей статьи (https://medium.com/@murat.bilal/handy-postgresql-commands-part-1-2f7ea21c29ee). Давайте продолжим рассмотрение таблиц с системной информацией.

SQL-Ex

18 Dec, 22:17


Продолжить чтение "Полезные команды PostgreSQL: часть 2" (https://sql-ex.ru/blogs/?/Poleznye_komandy_PostgreSQL_chast_2.html#extended)

SQL-Ex

14 Dec, 07:23


Оптимизация предложений DISTINCT с помощью EXISTS
https://sql-ex.ru/blogs/?/OptimizaciJa_predloZhenij_DISTINCT_s_pomowju_EXISTS.html

Пересказ статьи Andy Brownsword. Optimising DISTINCT Clauses using EXISTS (https://andybrownsword.co.uk/2024/01/30/optimising-distinct-clauses-using-exists/)

Предложение DISTINCT может помочь нам быстро убрать дубликаты из результатов запроса. Иногда полезно остановиться и спросить почему. Почему нам необходимо использовать это предложение, почему мы получаем дубликаты из наших данных?

Обычно я вижу это из-за применения JOIN, когда на самом деле нам не нужны все эти результаты. Это может быть проверка «существует ли что-либо», например, делал ли клиент когда-либо заказ раньше. Проблема возникает, когда имеется много возвращаемых строк, например, для постоянного клиента в нашем примере.

Продолжить чтение "Оптимизация предложений DISTINCT с помощью EXISTS" (https://sql-ex.ru/blogs/?/OptimizaciJa_predloZhenij_DISTINCT_s_pomowju_EXISTS.html#extended)

SQL-Ex

13 Dec, 16:54


Новости за 2024-12-07 - 2024-12-13
https://sql-ex.ru/blogs/?/Novosti_za_2024-12-07_-_2024-12-13.html

§ Усилиями chuvstvinmaxim, pegoopik (https://sql-ex.ru/users_page.php?uid=69553) и selber (https://sql-ex.ru/users_page.php?uid=128116) улучшена проверка задачи 124 (SELECT, рейтинг)
§ Автор (https://sql-ex.ru/users_page.php?uid=128116) уточнил формулировку и написал подсказку к задаче 35 (DML).
§ В ответ на сообщение alexey321 selber (https://sql-ex.ru/users_page.php?uid=128116) усилил проверку задачи 33 (SELECT, рейтинг).
§ Популярные темы недели на форуме Топик Сообщений Просмотров
6 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=6) 4 21
44 (DML) (https://sql-ex.ru/forum/forum.php?F=2&N=44) 2 6
33 (SELECT) (https://sql-ex.ru/forum/forum.php?F=1&N=33) 2 7
43 (DML) (https://sql-ex.ru/forum/forum.php?F=2&N=43) 2 4

Продолжить чтение "Новости за 2024-12-07 - 2024-12-13" (https://sql-ex.ru/blogs/?/Novosti_za_2024-12-07_-_2024-12-13.html#extended)

SQL-Ex

11 Dec, 18:28


Возможности NoSQL в PostgreSQL
https://sql-ex.ru/blogs/?/VozmoZhnosti_NoSQL_v_PostgreSQL.html

Пересказ статьи MAXSSYPE. NoSQL Capabilities in PostgreSQL (https://medium.com/@dudkamv/nosql-capabilities-in-postgresql-9eec822886d9)

PostgreSQL является реляционной системой управления базами данных (РСУБД) с открытыми кодами, которая известна своей надежностью, масштабируемостью и приверженностью стандартам SQL. Изначально разработанная в университете Калифорнии в Беркли, PostgreSQL значительно изменился за эти годы, приобретя широкий диапазон функций, которые вывели его за пределы традиционных реляционных баз данных.

Продолжить чтение "Возможности NoSQL в PostgreSQL" (https://sql-ex.ru/blogs/?/VozmoZhnosti_NoSQL_v_PostgreSQL.html#extended)

SQL-Ex

07 Dec, 09:26


Параметр log_min_duration_statement в PostgreSQL
https://sql-ex.ru/blogs/?/Parametr_log_min_duration_statement_v_PostgreSQL.html

Пересказ статьи Dmitry Romanoff. PostgreSQL parameter log_min_duration_statement (https://medium.com/@dmitry.romanoff/postgresql-parameter-log-min-duration-statement-1eef08d31ff5)

log_min_duration_statement является конфигурационным параметром PostgreSQL. Он устанавливает минимальное время выполнения в миллисекундах (мс), свыше которого все операторы будут записываться в журнал.

По умолчанию значение параметра log_min_duration_statement равно -1, что отключает журнализацию операторов.

Установка параметра log_min_duration_statement в 0 приведет к записи операторов любой длительности выполнения.

Замечание. Установка этого параметра в рабочем окружении может привести к большим объемам журналов и значительному выделению дискового пространства.

Продолжить чтение "Параметр log_min_duration_statement в PostgreSQL" (https://sql-ex.ru/blogs/?/Parametr_log_min_duration_statement_v_PostgreSQL.html#extended)

SQL-Ex

06 Dec, 18:37


Новости за 2024-11-30 - 2024-12-06
https://sql-ex.ru/blogs/?/Novosti_za_2024-11-30_-_2024-12-06.html

§ Популярные темы недели на форуме Топик Сообщений Просмотров
101 (SELECT) (https://sql-ex.ru/forum/forum.php?F=1&N=101) 5 6
100 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=100) 3 3
128 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=128) 2 5
42 (DML) (https://sql-ex.ru/forum/forum.php?F=2&N=42) 2 6

§ Авторы недели на форуме Автор Сообщений
Nividimka 6
ChronoMorzh (https://sql-ex.ru/users_page.php?uid=493998) 4
Respect 3
chuvstvinmaxim 3
pegoopik (https://sql-ex.ru/users_page.php?uid=69553) 3

Продолжить чтение "Новости за 2024-11-30 - 2024-12-06" (https://sql-ex.ru/blogs/?/Novosti_za_2024-11-30_-_2024-12-06.html#extended)

SQL-Ex

04 Dec, 09:33


Изящная обработка ошибок с помощью логики TRY CATCH в хранимых процедурах SQL Server
https://sql-ex.ru/blogs/?/IzJawnaJa_obrabotka_oshibok_s_pomowju_logiki_TRY_CATCH_v_hranimyh_procedurah_SQL_Server.html

Пересказ статьи Joydip Kanjilal. Gracefully Handle Errors using TRY CATCH Logic in SQL Server Stored Procedures (https://www.mssqltips.com/sqlservertip/7896/sql-server-error-handling-in-stored-procedures-with-try-catch/)

Надлежащая обработка ошибок является неотъемлемой частью любого устойчивого приложения. В SQL Server вы можете столкнуться с ошибками по разным причинам, например, из-за неверных или несогласованных данных и системных проблем. В этой статье рассматривается изящная обработка ошибок при использовании хранимых процедур в SQL Server.

Имеется несколько способов обработки ошибок в хранимых процедурах SQL Server, таких как блоки TRY/CATCH, операторы RAISERROR и операторы THROW. Здесь мы обсудим то, как обрабатывать ошибки в хранимых процедурах SQL Server.

Продолжить чтение "Изящная обработка ошибок с помощью логики TRY CATCH в хранимых процедурах SQL Server" (https://sql-ex.ru/blogs/?/IzJawnaJa_obrabotka_oshibok_s_pomowju_logiki_TRY_CATCH_v_hranimyh_procedurah_SQL_Server.html#extended)

SQL-Ex

30 Nov, 09:04


Любопытный случай отсутствия функции FIRST_VALUE
https://sql-ex.ru/blogs/?/Ljubopytnyj_sluchaj_otsutstviJa_funkcii_FIRST_VALUE.html

Пересказ статьи Hugo Kornelis. Plansplaining part 28 – The curious case of the missing FIRST_VALUE function (https://sqlserverfast.com/blog/hugo/2024/01/plansplaining-part-28-the-curious-case-of-the-missing-first_value-function/)

В двадцать восьмой части серии plansplaining (https://sqlserverfast.com/blog/hugo/tag/plansplaining/) я завершаю мини-серию из шести частей, посвященную оконным функциям. После обсуждения основ (https://sqlserverfast.com/blog/hugo/2023/11/plansplaining-part-23-t-sql-tuesday-168-window-functions/), ускоренной оптимизации (https://sqlserverfast.com/blog/hugo/2023/11/plansplaining-part-24-windows-on-the-fast-track/), завершения рамок окна на UNBOUNDED FOLLOWING (https://sqlserverfast.com/blog/hugo/2023/12/plansplaining-part-25-windows-without-upper-bound/), оконных рамок, задаваемых с RANGE вместо ROWS (https://sql-ex.ru/blogs/?/Planirovanie_planov._Chast_26_-_okna_s_diapazonnoj_ramkoj.html) и LAG и LEAD (https://sqlserverfast.com/blog/hugo/2024/01/plansplaining-part-27-lag-and-lead/) мы рассмотрим аналитические функции LAST_VALUE и FIRST_VALUE и обнаружим, что функция, от которой мы ожидали присутствие в качестве внутренней агрегатной функции, вообще не существует! Мы также выясним, как SQL Server работает с этим.

Продолжить чтение "Любопытный случай отсутствия функции FIRST_VALUE" (https://sql-ex.ru/blogs/?/Ljubopytnyj_sluchaj_otsutstviJa_funkcii_FIRST_VALUE.html#extended)

SQL-Ex

29 Nov, 18:42


Новости за 2024-11-23 - 2024-11-29
https://sql-ex.ru/blogs/?/Novosti_za_2024-11-23_-_2024-11-29.html

§ Популярные темы недели на форуме Топик Сообщений Просмотров
110 (SELECT) (https://sql-ex.ru/forum/forum.php?F=1&N=110) 4 5
99 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=99) 3 3
Guest's book (https://sql-ex.ru/forum/forum.php?F=0&N=0) 3 17
40 (DML) (https://sql-ex.ru/forum/forum.php?F=2&N=40) 2 3
-7 (SELECT) (https://sql-ex.ru/forum/forum.php?F=1&N=-7) 2 8

Продолжить чтение "Новости за 2024-11-23 - 2024-11-29" (https://sql-ex.ru/blogs/?/Novosti_za_2024-11-23_-_2024-11-29.html#extended)

SQL-Ex

27 Nov, 08:18


Оценка производительности запросов с помощью pg_stat_statements в PostgreSQL
https://sql-ex.ru/blogs/?/Ocenka_proizvoditelnosti_zaprosov_s_pomowju_pg_stat_statements_v_PostgreSQL.html

Пересказ статьи Ömer Naci Soydemir. Query Performance with pg_stat_statements in PostgreSQL (https://medium.com/@omernaci/query-performance-with-pg-stat-statements-in-postgresql-693e6dedc371)

В PostgreSQL производительность запросов является критическим аспектом оптимизации базы данных. Одним из мощных инструментов мониторинга и анализа производительности запросов является расширение pg_stat_statements.

Включение pg_stat_statements: вам необходимо включить расширение в вашей базе данных PostgreSQL. Вот как вы можете это сделать:

Продолжить чтение "Оценка производительности запросов с помощью pg_stat_statements в PostgreSQL" (https://sql-ex.ru/blogs/?/Ocenka_proizvoditelnosti_zaprosov_s_pomowju_pg_stat_statements_v_PostgreSQL.html#extended)

SQL-Ex

23 Nov, 10:01


Команда SQL WAITFOR для задержки выполнения кода SQL
https://sql-ex.ru/blogs/?/Komanda_SQL_WAITFOR_dlJa_zaderZhki_vypolneniJa_koda_SQL.html

Пересказ статьи Aubrey Love. SQL WAITFOR Command to Delay SQL Code Execution (https://www.mssqltips.com/sqlservertip/7344/delay-sql-code-execution-with-sql-waitfor/)

Одной из наиболее редко используемых команд в SQL является команда WAITFOR. Она представляет один из вариантов заочно внести задержку в выполнение программы. По причине редкого использования часто забывается, как и где она может быть применена при необходимости. Например, мы могли бы ее использовать для имитации ответа пользователя или ввода, или, возможно, для сбора данных с определенными интервалами в течение дня.

Продолжить чтение "Команда SQL WAITFOR для задержки выполнения кода SQL" (https://sql-ex.ru/blogs/?/Komanda_SQL_WAITFOR_dlJa_zaderZhki_vypolneniJa_koda_SQL.html#extended)

SQL-Ex

23 Nov, 06:05


Новости за 2024-11-16 - 2024-11-22
https://sql-ex.ru/blogs/?/Novosti_za_2024-11-16_-_2024-11-22.html

§ Усилена проверка задачи 180 (SELECT, обуч. этап) в ответ на сообщение alexey321.

§ Популярные темы недели на форуме Топик Сообщений Просмотров
5 (SELECT) (https://sql-ex.ru/forum/forum.php?F=1&N=5) 6 8
Guest's book (https://sql-ex.ru/forum/forum.php?F=0&N=0) 5 24
81 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=81) 4 5
30 (DML) (https://sql-ex.ru/forum/forum.php?F=2&N=30) 4 7
7 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=7) 2 33
Продолжить чтение "Новости за 2024-11-16 - 2024-11-22" (https://sql-ex.ru/blogs/?/Novosti_za_2024-11-16_-_2024-11-22.html#extended)

SQL-Ex

20 Nov, 10:49


Форматирование даты в PostgreSQL: полное руководство
https://sql-ex.ru/blogs/?/Formatirovanie_daty_v_PostgreSQL_polnoe_rukovodstvo.html

Пересказ статьи DbVisualizer. Date Formatting in Postgres: A Comprehensive Guide (https://medium.com/the-table-sql-and-devtalk/date-formatting-in-postgres-a-comprehensive-guide-1f7acc2e3222)

PostgreSQL поддерживает различные варианты форматирования даты. В этом руководстве мы сфокусируемся на таком способе форматировании дат, которое является одновременно читабельным и понятным для пользователей PostgreSQL.

Продолжить чтение "Форматирование даты в PostgreSQL: полное руководство" (https://sql-ex.ru/blogs/?/Formatirovanie_daty_v_PostgreSQL_polnoe_rukovodstvo.html#extended)

SQL-Ex

16 Nov, 09:33


Что делает ANSI_NULLS?
https://sql-ex.ru/blogs/?/Chto_delaet_ANSI_NULLS.html

Пересказ статьи Chad Callihan. What Does ANSI_NULLS Do (https://callihandata.com/2024/01/16/what-does-ansi_nulls-do/)

Видели ли вы когда-нибудь установку ANSI_NULLS в значение On или OFF в скрипте или хранимой процедуре? Я видел или слышал упоминание об этом несколько раз за последнее время и подумал, что будет полезно продемонстрировать на примере действие этой настройки.

Продолжить чтение "Что делает ANSI_NULLS?" (https://sql-ex.ru/blogs/?/Chto_delaet_ANSI_NULLS.html#extended)

SQL-Ex

15 Nov, 17:45


Новости за 2024-11-09 - 2024-11-15
https://sql-ex.ru/blogs/?/Novosti_za_2024-11-09_-_2024-11-15.html

§ Новые задачи DML от selber (https://sql-ex.ru/users_page.php?uid=128116) и перестановки:

Новая задача (сложность 1 балл)-> 16
16 -> (-4)
Новая задача (сложность 2 балла) -> 30
30 -> 20
20 -> (-3).

Продолжить чтение "Новости за 2024-11-09 - 2024-11-15" (https://sql-ex.ru/blogs/?/Novosti_za_2024-11-09_-_2024-11-15.html#extended)

SQL-Ex

13 Nov, 08:31


Экспорт и импорт данных в SQL Server, используя файлы
https://sql-ex.ru/blogs/?/Jeksport_i_import_dannyh_v_SQL_Server,_ispolzuJa_fajly.html

Пересказ статьи Edward Pollack. Exporting and Importing Data into SQL Server Using Files (https://www.red-gate.com/simple-talk/databases/sql-server/t-sql-programming-sql-server/exporting-and-importin-data-into-sql-server-using-files/)

Имеется много доступных приложений и инструментов, которые позволяют перемещать данные в/из SQL Server. Некоторые инструменты встроены Microsoft, такие как SSIS или Azure Data Factory. Другие созданы третьими сторонами, такие как Databricks или Snowflake. Другие доступные варианты используют возможности SQL Server и полагаются на собственные возможности писать эффективный код для получения данных из точки А в точку Б.

Продолжить чтение "Экспорт и импорт данных в SQL Server, используя файлы" (https://sql-ex.ru/blogs/?/Jeksport_i_import_dannyh_v_SQL_Server,_ispolzuJa_fajly.html#extended)

SQL-Ex

09 Nov, 10:55


Полезные расширения PostgreSQL, которые стоит изучить прямо сейчас!
https://sql-ex.ru/blogs/?/Poleznye_rasshireniJa_PostgreSQL,_kotorye_stoit_izuchit_prJamo_sejchas!.html

Пересказ статьи SInshiya Nalawala. Useful Postgres Extensions to explore right away! (https://inshiya-nalawala211.medium.com/useful-postgres-extensions-to-explore-right-away-ccfd73cca2e2)

Вы думали когда-нибудь о том, что делает PostgreSQL больше чем просто системой реляционных баз данных?
Расширения PostgreSQL!

Проще говоря, расширения - это модули, функции или низкоуровневые API, которые расширяют возможности PostgreSQL за пределы его базовой функциональности. Их множество, каждое с уникальными вариантами использования, и они творят чудеса для своих пользователей.

Сегодня я собираюсь пролить свет на два расширения PostgreSQL, которые могут позволить вам оценить производительность базы данных, заглянуть внутрь и предпринять необходимые шаги по улучшению производительности.

Продолжить чтение "Полезные расширения PostgreSQL, которые стоит изучить прямо сейчас!" (https://sql-ex.ru/blogs/?/Poleznye_rasshireniJa_PostgreSQL,_kotorye_stoit_izuchit_prJamo_sejchas!.html#extended)

SQL-Ex

08 Nov, 20:46


Новости за 2024-11-02 - 2024-11-08
https://sql-ex.ru/blogs/?/Novosti_za_2024-11-02_-_2024-11-08.html

§ В ответ на замечание splex усилена проверка задачи 47 (SELECT, обуч. этап).

§ Авторы недели на форуме Автор Сообщений
ChronoMorzh (https://sql-ex.ru/users_page.php?uid=493998) 7
alexey321 6
chuvstvinmaxim 5
selber (https://sql-ex.ru/users_page.php?uid=128116) 3

Продолжить чтение "Новости за 2024-11-02 - 2024-11-08" (https://sql-ex.ru/blogs/?/Novosti_za_2024-11-02_-_2024-11-08.html#extended)

SQL-Ex

06 Nov, 09:43


Пул подключений к базе данных
https://sql-ex.ru/blogs/?/Pul_podkljuchenij_k_baze_dannyh.html

Пересказ статьи Sujoy Nath. Database Connection Pool (https://medium.com/@sujoy.swe/database-connection-pool-647843dd250b)

SQL-Ex

06 Nov, 09:43


Пул подключений к базе данных - это кэш подключений к базе данных, поддерживаемый с целью повторного использования подключений при необходимости. Это обычный метод оптимизации, используемый в приложениях, которые взаимодействуют с базами данных, для повышения производительности и управления использованием ресурсов. Вместо открытия и закрытия нового подключения к базе данных для выполнения каждой операции пул подключений сохраняет множество подключений открытыми и готовыми к использованию.

Вот как работает пул подключений к базе данных: Продолжить чтение "Пул подключений к базе данных" (https://sql-ex.ru/blogs/?/Pul_podkljuchenij_k_baze_dannyh.html#extended)

SQL-Ex

02 Nov, 20:00


Целые автоинкрементируемые ID или UUID в таблицах базы данных: что выбрать?
https://sql-ex.ru/blogs/?/Celye_avtoinkrementiruemye_ID_ili_UUID_v_tablicah_bazy_dannyh_chto_vybrat.html

Пересказ статьи Kamruzzaman Kamrul. Auto-Increment Integer IDs vs. UUIDs in Database Tables: Which to Choose (https://medium.com/@kamruljpi/auto-increment-integer-ids-vs-uuids-in-database-tables-which-to-choose-411dc8b4c686)

При проектировании базы данных нужно принять одно важное решение - каким образом уникально идентифицировать каждую запись. Двумя популярными методами являются использование целочисленных автоинкрементируемых ID и универсальных уникальных идентификаторов (UUID). Тут я пытаюсь показать преимущества и недостатки каждого метода.

Продолжить чтение "Целые автоинкрементируемые ID или UUID в таблицах базы данных: что выбрать?" (https://sql-ex.ru/blogs/?/Celye_avtoinkrementiruemye_ID_ili_UUID_v_tablicah_bazy_dannyh_chto_vybrat.html#extended)

SQL-Ex

01 Nov, 16:43


Новости за 2024-10-26 - 2024-11-01
https://sql-ex.ru/blogs/?/Novosti_za_2024-10-26_-_2024-11-01.html

§ Популярные темы недели на форуме Топик Сообщений Просмотров
64 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=64) 2 4
173 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=173) 2 4
30 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=30) 2 9
24 (DML) (https://sql-ex.ru/forum/forum.php?F=2&N=24) 2 6
88 (SELECT) (https://sql-ex.ru/forum/forum.php?F=1&N=88) 2 4


Продолжить чтение "Новости за 2024-10-26 - 2024-11-01" (https://sql-ex.ru/blogs/?/Novosti_za_2024-10-26_-_2024-11-01.html#extended)

SQL-Ex

30 Oct, 08:07


range_agg: новая функция в PostgreSQL 14
https://sql-ex.ru/blogs/?/range_agg_novaJa_funkciJa_v_PostgreSQL_14.html

Пересказ статьи Asad Ali. range_agg: A New Feature in PostgreSQL 14 (https://medium.com/@asadalinagri/range-agg-a-new-feature-in-postgresql-14-a1cdd8189408)

Функция range_agg в PostgreSQL является новой агрегатной функцией, которая позволяет создавать диапазоны из агрегированных данных. Это полезно для суммирования последовательностей непрерывных или дискретных значений в диапазонах, особенно для временных или числовых данных.

Вот пример для демонстрации работы range_agg в PostgreSQL 14.

Продолжить чтение "range_agg: новая функция в PostgreSQL 14" (https://sql-ex.ru/blogs/?/range_agg_novaJa_funkciJa_v_PostgreSQL_14.html#extended)

SQL-Ex

26 Oct, 11:36


Миграция базы данных MySQL на PostgreSQL с помощью pgLoader
https://sql-ex.ru/blogs/?/MigraciJa_bazy_dannyh_MySQL_na_PostgreSQL_s_pomowju_pgLoader.html

Пересказ статьи Alexei. Migrate a MySQL database to PostgreSQL using pgLoader (https://medium.com/@acosetov/migrate-a-mysql-database-to-postgresql-using-pgloader-5d943b9fc51c)

У меня возникла интересная задача, и я думаю, что будет полезно поделиться ей. Возможно, это кому-то поможет.

Описание задачи

Я получил дамп базы данных MySQL, но сейчас я работаю с PostgreSQL. Я начал думать о том, как перенести данные из MySQL в PostgreSQL и обнаружил инструмент, который называется PgLoader (https://pgloader.io/).

Продолжить чтение "Миграция базы данных MySQL на PostgreSQL с помощью pgLoader" (https://sql-ex.ru/blogs/?/MigraciJa_bazy_dannyh_MySQL_na_PostgreSQL_s_pomowju_pgLoader.html#extended)

SQL-Ex

25 Oct, 18:19


Новости за 2024-10-19 - 2024-10-25
https://sql-ex.ru/blogs/?/Novosti_za_2024-10-19_-_2024-10-25.html

§ Новая задача DML от selber (сложность 2 балла) и перестановки:

Новая задача -> 24
24 -> 12
12 -> (-2)

§ Популярные темы недели на форуме Топик Сообщений Просмотров
27 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=27) 5 14
23 (DML) (https://sql-ex.ru/forum/forum.php?F=2&N=23) 2 6
35 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=35) 2 14
190 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=190) 2 4


Продолжить чтение "Новости за 2024-10-19 - 2024-10-25" (https://sql-ex.ru/blogs/?/Novosti_za_2024-10-19_-_2024-10-25.html#extended)

SQL-Ex

23 Oct, 17:19


Polars в Python
https://sql-ex.ru/blogs/?/Polars_v_Python.html

Пересказ статьи Pawan Kumar Ganjhu. Polars In Python (https://pawankg.medium.com/polars-in-python-9182be5f4f9f)

Polars в Python - это быстрая библиотека фреймов данных, которая подобна Pandas, но разработана с целью обеспечения лучшей производительности для больших наборов данных. Она построен на основе Apache Arrow и Rust, что делает ее эффективной для аналитической рабочей нагрузки. Polars особенно полезна для обработки больших наборов данных и эффективного выполнения операций типа фильтрации, агрегации и преобразований.

Вот краткий обзор использования Polars в Python:

Продолжить чтение "Polars в Python" (https://sql-ex.ru/blogs/?/Polars_v_Python.html#extended)

SQL-Ex

19 Oct, 09:16


Вышел PostgreSQL 17
https://sql-ex.ru/blogs/?/Vyshel_PostgreSQL_17.html

Пересказ статьи Anton Okolelov. PostgreSQL 17 Released (https://medium.com/@okoanton/postgresql-17-released-befcdaa169d3)

Производительность

Значительно улучшено управление памятью. Вакуумация теперь потребляет в 20 раз меньше памяти, ускоряя свою операцию и снижая нагрузку на систему.

Операции записи при высокой конкурентной нагрузке стали вдвое быстрей, благодаря оптимизированной обработке WAL.

Улучшенная производительность запросов, использующих условия IN в индексах B-Tree. Добавлена поддержка для инструкций SIMD (включая AVX-512) для ускорения вычислений.

Оптимизирована производительность COPY для экспорта больших объемов данных.

Продолжить чтение "Вышел PostgreSQL 17" (https://sql-ex.ru/blogs/?/Vyshel_PostgreSQL_17.html#extended)

SQL-Ex

18 Oct, 18:00


Новости за 2024-10-12 - 2024-10-18
https://sql-ex.ru/blogs/?/Novosti_za_2024-10-12_-_2024-10-18.html

§ Лидеры недели Участник w_sel all_sel select dml Всего Рейтинг
Протасов Д.Е. (preblud) 13 31 19 0 19 2129
Чувствин М. (chuvstvinmaxim) 7 79 16 0 16 519
Назаренко И.Ю. (ki.mono) 8 24 13 0 13 2832
Руднев В.В. (pazartesi) 6 53 12 0 12 1024
Голинский М.О. (motcan2) 6 24 10 0 10 2007
Москвин П. (Respect) 6 24 10 0 10 2831
Степаненко К.Ю. (St.Constanti 4 57 7 0 7 912
Доронин С.Р. (stepafix1) 5 5 7 0 7 6743
Давыдов (mdavydov) 5 5 6 19 25 4235
Ц (ArtTR) 4 4 5 2 7 6742
Боярский В.А. (ChronoMorzh) (https://sql-ex.ru/users_page.php?uid=493998) 2 87 5 0 5 304
Metalnikov (kirillmet) (https://sql-ex.ru/users_page.php?uid=796743) 3 79 5 0 5 417
Кочеров Е.С. (ssense) 4 31 5 0 5 1497
Palkina (PalkinaSA) 4 4 5 0 5 7466
Богач В.Н. (Uladzimir Bahach) 4 4 5 0 5 7710
Smith (tibacityblues) 3 15 4 0 4 2132
Zzz (zzzuhra) 3 4 4 0 4 8013

Продолжить чтение "Новости за 2024-10-12 - 2024-10-18" (https://sql-ex.ru/blogs/?/Novosti_za_2024-10-12_-_2024-10-18.html#extended)

SQL-Ex

16 Oct, 08:18


Использование улучшений SQL/JSON для современных рабочих нагрузок в PostgreSQL 16
https://sql-ex.ru/blogs/?/Ispolzovanie_uluchshenij_SQLJSON_dlJa_sovremennyh_rabochih_nagruzok_v_PostgreSQL_16.html

Пересказ статьи Vibhor Kumar. Exploiting SQLJSON Enhancements for Modern Workloads in PostgreSQL 16 (https://vibhorkumar.wordpress.com/2024/02/12/exploiting-sql-json-enhancements-for-modern-workloads-in-postgresql-16/)

Последняя итерация PostgreSQL, версия 16, принесла ряд улучшений, которые поддерживают возможности работы с данными JSON. Эти улучшения не только более тесно сближают PostgreSQL со стандартом SQL/JSON, но также предлагают существенную оптимизацию, которая упрощает и улучшает работу с данными JSON. Эта эволюция свидетельствует о стремлении PostgreSQL удовлетворять потребности современных работающих с данными приложений, которые используют полуструктурированные данные для множества вариантов использования.

В этой статье мы вникнем в улучшения SQL/JSON, внесенные в PostgreSQL 16, проиллюстрируем их применение примерами кода и рассмотрим реальные сценарии, для которых эти улучшения могут стать особенно полезными.

Продолжить чтение "Использование улучшений SQL/JSON для современных рабочих нагрузок в PostgreSQL 16" (https://sql-ex.ru/blogs/?/Ispolzovanie_uluchshenij_SQLJSON_dlJa_sovremennyh_rabochih_nagruzok_v_PostgreSQL_16.html#extended)

SQL-Ex

12 Oct, 07:27


PostgreSQL. Как выявить запросы, которые максимально используют временные файлы?
https://sql-ex.ru/blogs/?/PostgreSQL._Kak_vyJavit_zaprosy,_kotorye_maksimalno_ispolzujut_vremennye_fajly.html

Пересказ статьи Dmitry Romanoff. Postgres. How to check the top queries that use temporary files? (https://blog.devgenius.io/postgres-how-to-check-the-top-queries-that-use-temporary-files-064d25797e61)

Временные файлы в базе данных PostgreSQL могут стать проблемой по нескольким причинам:

Влияние на производительность.
Использование пространства на диске.
Может выделяться все больше и больше памяти.
Проблемы параллелизма.
Сложность в мониторинге и обслуживании.

Что следует делать, чтобы избежать временных файлов в базе данных PostgreSQL?

Продолжить чтение "PostgreSQL. Как выявить запросы, которые максимально используют временные файлы?" (https://sql-ex.ru/blogs/?/PostgreSQL._Kak_vyJavit_zaprosy,_kotorye_maksimalno_ispolzujut_vremennye_fajly.html#extended)

SQL-Ex

11 Oct, 22:07


Новости за 2024-10-05 - 2024-10-11
https://sql-ex.ru/blogs/?/Novosti_za_2024-10-05_-_2024-10-11.html

§ Популярные темы недели на форуме Топик Сообщений Просмотров
69 (SELECT) (https://sql-ex.ru/forum/forum.php?F=1&N=69) 2 6
56 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=56) 2 8
§ Авторы недели на форуме Автор Сообщений
selber (https://sql-ex.ru/users_page.php?uid=128116) 3
chuvstvinmaxim 2
yarosurafu 2
§ Изменения среди лидеров рейтинга Рейтинг Участник (решенные задачи)
54 gennadi_s (https://sql-ex.ru/users_page.php?uid=791796) (149)
70 born2tilt (https://sql-ex.ru/users_page.php?uid=508947) (166, 195)


Продолжить чтение "Новости за 2024-10-05 - 2024-10-11" (https://sql-ex.ru/blogs/?/Novosti_za_2024-10-05_-_2024-10-11.html#extended)

SQL-Ex

09 Oct, 13:24


Секционирование таблицы по диапазону в базе данных PostgreSQL
https://sql-ex.ru/blogs/?/Sekcionirovanie_tablicy_po_diapazonu_v_baze_dannyh_PostgreSQL.html

Пересказ статьи Dmitry Romanoff. Partitioning a table by range in the PostgreSQL database (https://medium.com/@dmitry.romanoff/partitioning-a-table-by-range-in-the-postgresql-database-423adb0319b7)

Секционирование является важным методом для достижения хорошей производительности в базах данных с большими таблицами. Когда размер таблицы постоянно растет, также возрастает стоимость каждой операции с этой таблицей. Секционирование разбивает большую таблицу на несколько меньших. Смысл в том, чтобы позволить механизму запросов сканировать более мелкие таблицы и индексы, чтобы найти требуемые данные. Секции улучшают производительность работы с таблицей, когда они сделаны правильно. Секционирование таблицы по значениям в диапазоне обычно используется с полями даты.

Здесь я на практике продемонстрирую, как работает секционирование.

Продолжить чтение "Секционирование таблицы по диапазону в базе данных PostgreSQL" (https://sql-ex.ru/blogs/?/Sekcionirovanie_tablicy_po_diapazonu_v_baze_dannyh_PostgreSQL.html#extended)

SQL-Ex

05 Oct, 10:42


Оптимизационные трюки в PostgreSQL. Как быстро загрузить данные: часть 1
https://sql-ex.ru/blogs/?/Optimizacionnye_trjuki_v_PostgreSQL._Kak_bystro_zagruzit_dannye_chast_1.html

Пересказ статьи Mitchell Warr. PostgreSQL Optimization Tricks: How to Load Data Fast Part 1 (https://blog.stackademic.com/postgresql-optimization-tricks-how-to-load-data-fast-part-1-6cba8029faf7)

Итак, у вас есть несколько сотен миллионов строк данных в таблице, и вы просто не получаете той скорости, что раньше. Она работает медленнее, чем когда была молодой и энергичной базой данных, и вы можете поклясться, что слышите, как она скрипит, когда вы ускоряете распределение памяти.
Вы открываете объяснение плана запроса и заглядываете под капот в чем-то типа https://explain.dalibo.com (https://explain.dalibo.com/). Но что вы фактически можете сделать?

Продолжить чтение "Оптимизационные трюки в PostgreSQL. Как быстро загрузить данные: часть 1" (https://sql-ex.ru/blogs/?/Optimizacionnye_trjuki_v_PostgreSQL._Kak_bystro_zagruzit_dannye_chast_1.html#extended)

SQL-Ex

04 Oct, 19:18


Новости за 2024-09-28 - 2024-10-04
https://sql-ex.ru/blogs/?/Novosti_za_2024-09-28_-_2024-10-04.html

§ Изменения среди лидеров рейтинга
Рейтинг Участник (решенные задачи)
55 gennadi_s (https://sql-ex.ru/users_page.php?uid=791796) (147)
73 born2tilt (https://sql-ex.ru/users_page.php?uid=508947) (170, 203, 204, 235, 238, 260)

§ Лидеры недели
Участник w_sel all_sel select dml Всего Рейтинг
Чувствин М. (chuvstvinmaxim) 20 54 38 0 38 1287
Metalnikov (kirillmet) 14 58 24 0 24 880
Москвин П. (Respect) 14 17 19 4 23 4070
Руднев В.В. (pazartesi) 8 46 18 2 20 1179
Любомудров Р.Г. (born2tilt) (https://sql-ex.ru/users_page.php?uid=508947) 9 173 14 0 14 73
Степаненко К.Ю. (St.Constanti 7 48 13 0 13 1044
Сергеева О.Б. (Valkiri9) 8 17 10 0 10 4514
Протасов Д.Е. (preblud) 6 6 8 5 13 5563
Кочеров Е.С. (ssense) 6 22 8 0 8 1801
Бабаян (Eliorika) 4 4 5 2 7 6777
Голинский М.О. (motcan2) 4 12 5 0 5 3358
Назаренко И.Ю. (ki.mono) 4 7 5 0 5 5574
Eremkin A. (Artyom Eryomkin) 4 4 5 0 5 7455
Саркисьян Г. (gennadi_s) (https://sql-ex.ru/users_page.php?uid=791796) 1 158 4 0 4 55
Курицын В.Н. (ValNick) (https://sql-ex.ru/users_page.php?uid=599825) 1 151 4 0 4 137
Smith (tibacityblues) 3 11 4 0 4 2480
Мельников Е. (AckermanL) 4 14 4 0 4 4925
Иванов П.И. (sqlSolver123) 3 4 4 0 4 8135

Продолжить чтение "Новости за 2024-09-28 - 2024-10-04" (https://sql-ex.ru/blogs/?/Novosti_za_2024-09-28_-_2024-10-04.html#extended)

SQL-Ex

02 Oct, 09:24


Более эффективный подсчет
https://sql-ex.ru/blogs/?/Bolee_jeffektivnyj_podschet.html

Пересказ статьи Aaron Bertrand. Counting more efficiently (https://www.red-gate.com/simple-talk/databases/sql-server/t-sql-programming-sql-server/counting-more-efficiently/)

Почти десятилетие назад я написал статью с названием «Вредные привычки: трудный подсчет строк» (https://sql-ex.ru/blogs/?/Bolee_jeffektivnyj_podschet.html). В той статье я говорил о том, как мы можем использовать метаданные для мгновенного получения числа строк в таблице. Обычно люди делают следующее, что приводит к чтению всей таблицы или индекса:

DECLARE @c int = (SELECT COUNT(*) FROM dbo.TableName);

Чтобы в значительной степени избежать ограничений на размер данных, вместо этого мы можем использовать sys.partitions.

Продолжить чтение "Более эффективный подсчет" (https://sql-ex.ru/blogs/?/Bolee_jeffektivnyj_podschet.html#extended)

SQL-Ex

28 Sep, 22:50


Планирование планов. Часть 26 - окна с диапазонной рамкой
https://sql-ex.ru/blogs/?/Planirovanie_planov._Chast_26_-_okna_s_diapazonnoj_ramkoj.html

Пересказ статьи Hugo Kornelis. Plansplaining part 26 – Windows with a ranged frame (https://sqlserverfast.com/blog/hugo/2023/12/plansplaining-part-26-windows-with-a-ranged-frame/)

Это двадцать шестая часть данной серии (plansplaining) (https://sqlserverfast.com/blog/hugo/tag/plansplaining/). И уже четвертый эпизод об оконных функциях. Первая из этих статей (https://sqlserverfast.com/blog/hugo/2023/11/plansplaining-part-23-t-sql-tuesday-168-window-functions/) была посвящена базовым оконным функциям; вторая (https://sqlserverfast.com/blog/hugo/2023/11/plansplaining-part-24-windows-on-the-fast-track/) была посвящена быстрой оптимизации накопительных агрегатов, а в третьей публикации (https://sqlserverfast.com/blog/hugo/2023/12/plansplaining-part-25-windows-without-upper-bound/) объяснялось, как оптимизатор работает при отсутствии поддержки плана выполнения для UNBOUNDED FOLLOWING.

Продолжить чтение "Планирование планов. Часть 26 - окна с диапазонной рамкой" (https://sql-ex.ru/blogs/?/Planirovanie_planov._Chast_26_-_okna_s_diapazonnoj_ramkoj.html#extended)

SQL-Ex

27 Sep, 17:48


Новости за 2024-09-21 - 2024-09-27
https://sql-ex.ru/blogs/?/Novosti_za_2024-09-21_-_2024-09-27.html

§ В ответ на замечание chuvstvinmaxim усилена проверка задачи 12 (SELECT, рейтинговый этап).

§ Лидеры недели Участник w_sel all_sel select dml Всего Рейтинг
Чувствин М. (chuvstvinmaxim) 22 34 33 0 33 2085
Odilbekov J. (xerxessql) 17 17 22 2 24 4348
Любомудров Р.Г. (born2tilt) (https://sql-ex.ru/users_page.php?uid=508947) 11 164 20 0 20 91
Metalnikov (kirillmet) 9 44 19 0 19 1140
Степаненко К.Ю. (St.Constanti 7 41 17 0 17 1191
Gavrilov G.A. (potasovka) 6 63 13 28 41 728
Товстык Д.О. (bdlck) 6 12 8 0 8 5223
Сергеева О.Б. (Valkiri9) 5 9 8 0 8 5593
Руднев В.В. (pazartesi) 3 38 7 0 7 1415
Кочеров Е.С. (ssense) 6 16 7 0 7 2084
Саркисьян Г. (gennadi_s) (https://sql-ex.ru/users_page.php?uid=791796) 2 157 6 0 6 60
Фролов К.А. (Murderface_) (https://sql-ex.ru/users_page.php?uid=556296) 1 154 4 0 4 132
Назаренко (Igagoshka) 3 3 4 0 4 9028
Продолжить чтение "Новости за 2024-09-21 - 2024-09-27" (https://sql-ex.ru/blogs/?/Novosti_za_2024-09-21_-_2024-09-27.html#extended)

SQL-Ex

25 Sep, 06:26


Искусство хранимой процедуры SQL Server: типы данных
https://sql-ex.ru/blogs/?/Iskusstvo_hranimoj_procedury_SQL_Server_tipy_dannyh.html

Пересказ статьи Erik Darling. The Art Of The SQL Server Stored Procedure: Data Types (https://erikdarling.com/the-art-of-the-sql-server-stored-procedure-data-types/)

Смесь и соответствие

Есть лишь несколько типов данных, которые нервируют меня, когда я их вижу:
- Строки MAX или близкие к верхнему пределу по байтам (за исключением динамического SQL)
- XML
- sql_variant

Не важно, являются ли они параметрами хранимой процедуры или объявляются в локальных переменных. Когда они появляются, я ожидаю следом чего-то плохого.

Продолжить чтение "Искусство хранимой процедуры SQL Server: типы данных" (https://sql-ex.ru/blogs/?/Iskusstvo_hranimoj_procedury_SQL_Server_tipy_dannyh.html#extended)

SQL-Ex

21 Sep, 08:20


Программирование на Python в Microsoft Excel
https://sql-ex.ru/blogs/?/Programmirovanie_na_Python_v_Microsoft_Excel.html

Пересказ статьи Fareed Khan. Python Programming in Microsoft Excel (https://medium.com/@fareedkhandev/python-programming-in-microsoft-excel-2c88df7633df)

В новаторском сотрудничестве Anaconda и Microsoft представили инновацию, меняющую правила игры: Python в Excel. Эта революционная интеграция изменила как для пользователей Excel, так и для практикующих Python, подход к анализу данных и привнесла новый уровень доступа к современной аналитике. Это партнерство сочетает мощь Python со знакомым интерфейсом Excel, трансформируя аналитику данных в более интегрированный, мощный и доступный способ получения результатов. В этом блоге мы узнаем, что дает Python в Excel, его преимущества и то, как вы можете начать путешествие по анализу данных.

Продолжить чтение "Программирование на Python в Microsoft Excel" (https://sql-ex.ru/blogs/?/Programmirovanie_na_Python_v_Microsoft_Excel.html#extended)

SQL-Ex

20 Sep, 17:58


Новости за 2024-09-14 - 2024-09-20
https://sql-ex.ru/blogs/?/Novosti_za_2024-09-14_-_2024-09-20.html

§ Лидеры недели Участник w_sel all_sel select dml Всего Рейтинг
Metalnikov (kirillmet) 22 35 36 0 36 1364
Чувствин М. (chuvstvinmaxim) 12 12 16 0 16 5217
Gavrilov G.A. (potasovka) 9 57 14 0 14 1219
Любомудров Р.Г. (born2tilt) (https://sql-ex.ru/users_page.php?uid=508947) 5 153 13 0 13 131
Кочеров Е.С. (ssense) 9 10 13 0 13 2471
Руднев В.В. (pazartesi) 8 35 11 6 17 1520
Zubarev A. (agressivekid) 4 4 5 13 18 5037
Култынина М. (Margarita_dlana) 4 4 5 0 5 7802
Степаненко К.Ю. (St.Constanti 2 34 4 0 4 1392


Продолжить чтение "Новости за 2024-09-14 - 2024-09-20" (https://sql-ex.ru/blogs/?/Novosti_za_2024-09-14_-_2024-09-20.html#extended)

SQL-Ex

18 Sep, 06:11


Кортежи или списки в Python - что эффективней?
https://sql-ex.ru/blogs/?/KorteZhi_ili_spiski_v_Python_-_chto_jeffektivnej.html

Пересказ статьи Rinu Gour. Python Tuples vs Lists - Which Is More Efficient? (https://pythonflood.com/python-tuples-vs-lists-which-is-more-efficient-36b6374c5b3c)

Python предлагает многообразные структуры хранения и манипуляции данными. Двумя наиболее часто используемыми структурами данных в Python являются списки и кортежи.

Здесь мы обсудим различия между списками и кортежами, их характеристики, варианты использования, методы и операции. Продолжить чтение "Кортежи или списки в Python - что эффективней?" (https://sql-ex.ru/blogs/?/KorteZhi_ili_spiski_v_Python_-_chto_jeffektivnej.html#extended)

SQL-Ex

14 Sep, 12:37


Конструирование запросов SQL с помощью Python
https://sql-ex.ru/blogs/?/Konstruirovanie_zaprosov_SQL_s_pomowju_Python.html

Пересказ статьи Rajan Sahu. Constructing SQL Queries With Python (https://python.plainenglish.io/constructing-sql-queries-with-python-bf276e8dd9df)

Способность быстро и легко писать запросы SQL является решающей при взаимодействии с базами данных в Python-разработках. Создание сложных и понятных запросов SQL выполняется проще с помощью Pypika, надежного и удобного для пользователя пакета Python. В этой статье блога мы рассмотрим основные возможности Pypika, проверим несколько типичных случаев использования и оценим его функции на конкретных примерах.

Продолжить чтение "Конструирование запросов SQL с помощью Python" (https://sql-ex.ru/blogs/?/Konstruirovanie_zaprosov_SQL_s_pomowju_Python.html#extended)

SQL-Ex

13 Sep, 17:27


Новости за 2024-09-07 - 2024-09-13
https://sql-ex.ru/blogs/?/Novosti_za_2024-09-07_-_2024-09-13.html

§ В ответ на сообщение alexey321 усилена проверка задачи 70 (SELECT, обуч. этап).

§ Пересчитал сложность задач обучающего этапа. Возможны изменения рейтинговых позиций.

§ Популярные темы недели на форуме Топик Сообщений Просмотров
159 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=159) 2 5
32 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=32) 2 12
Продолжить чтение "Новости за 2024-09-07 - 2024-09-13" (https://sql-ex.ru/blogs/?/Novosti_za_2024-09-07_-_2024-09-13.html#extended)

SQL-Ex

11 Sep, 04:59


Код базы данных на основе множеств или на основе строк
https://sql-ex.ru/blogs/?/Kod_bazy_dannyh_na_osnove_mnoZhestv_ili_na_osnove_strok.html

Пересказ статьи Kevin. Set-Based vs Row-Based Database Code (https://dallasdbas.com/set-based-vs-row-based-database-code/)

В SQL Server термины "на основе множеств" и "на основе строк" относятся к различным подходам или стилям написания кода SQL при манипуляции с данными. Эти стили оказывают влияние на производительность, читабельность и способ, который используется при обработке запросов. Давайте рассмотрим различия между кодом на основе множеств и кодом на основе строк:

Продолжить чтение "Код базы данных на основе множеств или на основе строк" (https://sql-ex.ru/blogs/?/Kod_bazy_dannyh_na_osnove_mnoZhestv_ili_na_osnove_strok.html#extended)

SQL-Ex

07 Sep, 14:19


Обработка запроса в PostgreSQL
https://sql-ex.ru/blogs/?/Obrabotka_zaprosa_v_PostgreSQL.html

Пересказ статьи AGEDB. Query Processing in PostgreSQL (https://medium.com/agedb/query-processing-in-postgresql-1309fa93f69f)

Введение

Как энтузиаст и разработчик ПО я очарован внутренней работой PostgreSQL. Способ, с помощью которого обрабатываются все клиентские запросы в едином серверном процессе, и его сложные подсистемы для обработки запросов действительно изумляют меня. Я захотел выяснить, как работают запросы в PostgreSQL. Я провел некоторое исследование и нашел то, что происходит внутри кода PostgreSQL. Этот краткий обзор объясняет процесс выполнения запроса и то, как PostgreSQL делает это, чтобы гарантировать вам лучшую производительность его выполнения. Конечно, производительность в значительной степени зависит от того, как спроектирована база данных, поэтому обратитесь к советам по основам моделирования базы данных от AGEDB (https://agedb.io/what-is-a-relational-database-the-essentials-of-relational-data-modeling.jsp).

Продолжить чтение "Обработка запроса в PostgreSQL" (https://sql-ex.ru/blogs/?/Obrabotka_zaprosa_v_PostgreSQL.html#extended)

SQL-Ex

06 Sep, 17:27


Новости за 2024-08-31 - 2024-09-06
https://sql-ex.ru/blogs/?/Novosti_za_2024-08-31_-_2024-09-06.html

§ Популярные темы недели на форуме Топик Сообщений Просмотров
165 (SELECT) (https://sql-ex.ru/forum/forum.php?F=1&N=165) 2 4
70 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=70) 2 7
110 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=110) 2 5
115 (Learn) (https://sql-ex.ru/forum/Lforum.php?F=3&N=115) 2 5
§ Авторы недели на форуме Автор Сообщений
selber (https://sql-ex.ru/users_page.php?uid=128116) 3
OlhaKn 2
evgen26 2
Продолжить чтение "Новости за 2024-08-31 - 2024-09-06" (https://sql-ex.ru/blogs/?/Novosti_za_2024-08-31_-_2024-09-06.html#extended)