Skip to content

Учебник по SQL Server и Python

Пересказ статьи Daniel Calbimonte. SQL Server and Python Tutorial


Введение


В этой статье мы рассмотрим подключение к SQL Server в Python с помощью библиотеки pyodbc. Если вы являетесь администратором базы данных SQL, то мы настоятельно рекомендуем выполнение скриптов Python в SSMS.

Однако некоторые Python-разработчики предпочитают работать непосредственно с Python, а не в SSMS с включением скриптов. Мы рассмотрим следующие темы: Продолжить чтение "Учебник по SQL Server и Python"

Изменение местоположения по умолчанию файлов данных, журналов транзакций и резервных копий в SQL Server

Пересказ статьи Nisarg Upadhyay. Change the default SQL Server locations for database data files, transaction log files and backup files


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

В этой статье мы рассмотрим три варианта сделать это. Отметим, что для всех трех вариантов потребуется перезапустить SQL Server, чтобы изменения вступили в силу. У меня есть доступ sysadmin на SQL Server, поэтому я решил применить самый безопасный вариант, который использует SQL Server Management Studio (SSMS).
Продолжить чтение "Изменение местоположения по умолчанию файлов данных, журналов транзакций и резервных копий в SQL Server"
Категории: T-SQL

REGEX в SQL

Пересказ статьи Sai Krishna. REGEX IN SQL


В своих запросах SQL вы, вероятно, использовали предложение WHERE для фильтрации конкретного текста, выполняя поиск на точное совпадение. Например, вы могли бы использовать запрос типа “SELECT * FROM EMP WHERE name = 'Alex'”. Этот подход возвращает записи, которые точно соответствуют имени Alex в том же регистре. Однако имеется более универсальный способ обработки сложных текстовых шаблонов, использующих регулярные выражения (regex).
Продолжить чтение "REGEX в SQL"

Ранжирование в Python и SQL

Пересказ статьи Nathan Rosidi. Ranking in Python and SQL


Мы обсуждали основы ранжирования в Python в нашем руководстве “Methods for Ranking in Pandas”, где рассматривались наиболее употребимые параметры функции ранжирования в Pandas. В частности, мы изучали различные методы ранжирования, которые имеют решающее значение в борьбе с родственными значениями. Помимо методов ранжирования функция ранжирования в Pandas обладает и другими параметрами, которые позволяют выполнить дальнейшую настройку и уточнение способа определения рангов. Понимание этих параметров важно при работе с наборами данных, которые требуют более таких сложных методов ранжирования, как процентильное ранжирование или работа с недостающими данными.

Продолжить чтение "Ранжирование в Python и SQL"

Инструменты и методы для профилирования и отладки медленно выполняющихся SQL-запросов

Пересказ статьи Crafting-Code. Tools and Techniques for Profiling and Debugging Slow-Running SQL Queries


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

Профилирование и отладка медленно выполняющихся запросов SQL являются важными навыками администраторов баз данных, разработчиков и всех тех, кто отвечает за обслуживание приложений на основе базы данных.

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

Пакетный режим выполнения при построчном хранении в SQL Server 2022

Пересказ статьи Prakash K. Batch Execution Mode on a Rowstore in SQL Server 2022


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

Продолжить чтение "Пакетный режим выполнения при построчном хранении в SQL Server 2022"

Улучшить производительность запроса, когда SQL Server игнорирует некластеризованный индекс

Пересказ статьи Mehdi Ghapanvari. Improve Query Performance when SQL Server Ignores Nonclustered Index


Несмотря на наши усилия, направленные на оптимизацию запроса посредством создания некластеризованного индекса, SQL Server, видимо, отдает приоритет сканированию кластеризованного индекса, а не поиску в некластеризованном индексе с последующим поиском ключа. Удивительно, что сканирование кластеризованного индекса оказывается более эффективным для SQL Server в данной конкретной ситуации. Но можем ли мы все же найти способ для улучшения производительности запроса?
Продолжить чтение "Улучшить производительность запроса, когда SQL Server игнорирует некластеризованный индекс"

Понимание планов в PostgreSQL

Пересказ статьи Muhammad Ali. Understand Explain Plans in PostgreSQL


В предыдущей статье мы обсуждали утилиту pg_stat_statements - инструмент для идентификации запросов, интенсивно использующих ресурсы - памяти, ЦП или ввода/вывода.

Теперь предположим, что вы определились с запросами, которые хотите исследовать дальше. Команда EXPLAIN используется для генерации планов выполнения. Она включает:

Продолжить чтение "Понимание планов в PostgreSQL"

Упражнение Pandas для специалистов по данным — часть 2

Пересказ статьи Avi Chawla. Pandas Exercise for Data Scientists — Part 2


Библиотека Pandas всегда привлекала специалистов по данным своими изумительными возможностями. Она несомненно является важным инструментом для обработки и манипуляции данными.

Поэтому для расширения ваших экспертных знаний и знакомства с огромным числом популярных среди специалистов по данным функций Pandas я представляю вторую часть "Упражнение Pandas". Первую часть вы можете найти по ссылке.
Продолжить чтение "Упражнение Pandas для специалистов по данным — часть 2"

Не используйте DISTINCT в качестве "исправления join"

Пересказ статьи Aaron Bertrand. Don’t use DISTINCT as a “join-fixer”


Я спокойно решал проблемы производительности, переписывая медленные запросы, чтобы избежать использования DISTINCT. Зачастую DISTINCT служит лишь для того, чтобы "исправить join", и я могу объяснить что это означает на примере.

Продолжить чтение "Не используйте DISTINCT в качестве "исправления join""
Категории: T-SQL

Использование substring в MySQL на примерах

Пересказ статьи Rahul Mehta. MySQL substring uses with examples


Введение


MySQL, как и любые другие базы данных, может хранить данные различных типов. Одними из наиболее часто используемых типов данных являются строки. Разработчики широко используют эти типы для хранения данных, а также в различных операциях форматирования. Мы будем часто сталкиваться с требованием получения части строки. MySQL предоставляет функцию “SUBSTRING” для извлечения подстроки из строки. Имеются следующие варианты для извлечения строки:

  1. SUBSTRING

  2. SUBSTR (синоним для SUBSTRING)

  3. SUBSTRING_INDEX

Давайте начнем с понимания того, как работает substring.
Продолжить чтение "Использование substring в MySQL на примерах"
Категории: MySQL

Как работает секционирование в PostgreSQL и почему вас это должно беспокоить?

Пересказ статьи Adam Furmanek. How Does Partitioning Work in PostgreSQL and Why Should You Care?


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

Продолжить чтение "Как работает секционирование в PostgreSQL и почему вас это должно беспокоить?"

Понимание индекса SQL: ключ к быстрому выполнению запросов

Пересказ статьи Kishan Modasiya. Understanding SQL Index: The Key to Faster Query Execution


Индекс - это очень важная тема в SQL. И очень большая для того, чтобы рассмотреть ее в одной статье. Здесь я дам краткий обзор понятия индекса, что это такое и почему он так необходим, рассмотрю типы индексов и то, как индексы помогают оптимизировать производительность запросов на ряде примеров. Я буду выдерживать эту статью понятной для новичков и не углубляться в тему. Итак, начнем. Продолжить чтение "Понимание индекса SQL: ключ к быстрому выполнению запросов"

Понимание языка управления данными SQL: GRANT и REVOKE

Пересказ статьи DataScience Nexus. Understanding SQL Data Control Language: GRANT and REVOKE


Структурированный язык запросов (SQL) является мощным языком управления и манипуляции данными в реляционных базах данных. В то время как язык определения данных (DDL) и язык манипуляции данными (DML) являются наиболее используемыми составляющими SQL, язык управления данными (DCL) играет решающую роль в управлении доступом пользователей и разрешениях в пределах базы данных. Здесь мы будем разбираться в DCL и сфокусируемся на двух ключевых операторах - GRANT и REVOKE. Эти операторы исключительно важны для управления и обслуживания прав пользователя в пределах базы данных. Давайте вникать в область разрешений и привилегий SQL. Продолжить чтение "Понимание языка управления данными SQL: GRANT и REVOKE"
Категории: MySQL

Возможности функции Crosstab в Pandas для анализа и визуализации данных

Пересказ статьи R. Gupta. The Power of Crosstab Function in Pandas for Data Analysis and Visualization


Pandas является популярной библиотекой Python для анализа и манипуляции данными. Она предоставляет мощные инструменты для работы с табличными данными, включая такие структуры как ряды и фреймы данных, и функции для очистки, слияния и изменения формы данных.

Одним из наиболее полезных инструментов для анализа табличных данных в Pandas является функция crosstab(). Эта функция позволяет вам рассчитать таблицу частот двух и более переменных, которые суммируют разбросанные в данных значения и позволяют выявить связь между переменными. Перекрестная табуляция (или crosstab) является важным инструментом для анализа двух категориальных переменных в наборе данных. Она дает сводную таблицу распределения частот двух переменных, позволяя увидеть взаимосвязь между ними и идентифицировать любые шаблоны или тренды. Продолжить чтение "Возможности функции Crosstab в Pandas для анализа и визуализации данных"