Безопасность, доступ и операции для миграций Netezza
Эта статья является третьей частью серии из семи частей, в которой содержится руководство по переносу с Netezza на Azure Synapse Analytics. В центре внимания этой статьи — рекомендации по операциям безопасного доступа.
Вопросы безопасности
В этой статье рассматриваются методы подключения для существующих устаревших сред Netezza и способы их переноса в Azure Synapse Analytics с минимальным риском и воздействием на пользователей.
В этой статье предполагается, что вам требуется перенести существующие методы подключения, а также структуру пользователей, ролей и разрешений в исходном виде. Если это не так, используйте портал Azure для создания нового режима безопасности и управления им.
Дополнительные сведения о параметрах безопасности Azure Synapse см. в техническом документе по безопасности.
Подключение и проверка подлинности
Совет
Проверка подлинности в Netezza и Azure Synapse может осуществляться "в базе данных" или с помощью внешних методов.
Параметры авторизации Netezza
Система IBM Netezza предлагает несколько методов проверки подлинности для пользователей базы данных Netezza:
Локальная проверка подлинности: администраторы Netezza определяют пользователей базы данных и их пароли с помощью команды
CREATE USER
или через административные интерфейсы Netezza. При локальной проверке подлинности используйте систему Netezza для управления учетными записями и паролями базы данных, а также для добавления и удаления пользователей базы данных из системы. Этот метод является методом проверки подлинности по умолчанию.Проверка подлинности LDAP. Используйте сервер имен LDAP для проверки подлинности пользователей базы данных, управления паролями, а также активации и деактивации учетных записей базы данных. Система Netezza использует подключаемый модуль проверки подлинности (PAM) для проверки подлинности пользователей на сервере имен LDAP. Microsoft Active Directory соответствует протоколу LDAP, поэтому его можно рассматривать как сервер LDAP для проверки подлинности LDAP.
Проверка подлинности Kerberos. Используйте сервер распространения Kerberos для проверки подлинности пользователей базы данных, управления паролями, а также активации и деактивации учетных записей базы данных.
Проверка подлинности — это системный параметр. Пользователи должны проходить локальную проверку подлинности или проходить проверку подлинности с помощью протокола LDAP или метода Kerberos. Если выбрана проверка подлинности LDAP или Kerberos, создайте пользователей с локальной проверкой подлинности для каждого пользователя. Протокол LDAP и Kerberos нельзя использовать одновременно для проверки подлинности пользователей. Узел Netezza поддерживает проверку подлинности LDAP или Kerberos только для входа пользователей базы данных, а не для имен входа операционной системы на узле.
Параметры авторизации Azure Synapse
Azure Synapse поддерживает два основных варианта подключения и авторизации:
Проверка подлинности SQL. Проверка подлинности SQL осуществляется через подключение к базе данных, включающее идентификатор базы данных, идентификатор пользователя и пароль, а также дополнительные параметры. Это функционально эквивалентно локальным подключениям Netezza.
Проверка подлинности Microsoft Entra: с помощью проверки подлинности Microsoft Entra можно централизованно управлять удостоверениями пользователей базы данных и другими службы Майкрософт в одном центральном расположении. Централизованное управление удостоверениями позволяет использовать единое расположение для управления пользователями Azure Synapse и упрощает управление разрешениями. Идентификатор Microsoft Entra также может поддерживать подключения к службам LDAP и Kerberos, например идентификатор Microsoft Entra можно использовать для подключения к существующим каталогам LDAP, если они останутся на месте после миграции базы данных.
Пользователи, роли и разрешения
Обзор
Совет
Высокоуровневое планирование имеет важное значение для успешного проекта миграции.
Netezza и Azure Synapse реализуют управление доступом к базе данных через комбинацию пользователей, ролей (групп в Netezza) и разрешений. Используйте стандартные инструкции SQL CREATE USER
и CREATE ROLE/GROUP
для определения пользователей и ролей, а также инструкции GRANT
и REVOKE
для назначения или удаления разрешений для этих пользователей и/или ролей.
Совет
Автоматизация процессов миграции рекомендуется для сокращения временных затрат и минимизации потенциальных ошибок.
Концептуально эти две базы данных похожи, и в некоторой степени можно автоматизировать перенос существующих ИД пользователей, групп и разрешений. Перенос таких данных путем извлечения существующих устаревших сведений о пользователях и группах из таблиц системного каталога Netezza и создания соответствующих эквивалентов инструкций CREATE USER
и CREATE ROLE
, которые будут выполняться в Azure Synapse для повторного создания той же иерархии пользователей и ролей.
После извлечения данных используйте таблицы системного каталога Netezza для создания эквивалентных инструкций GRANT
для назначения разрешений (где существует эквивалентная). На следующей схеме показано, как использовать существующие метаданные для создания необходимых SQL.
Дополнительные сведения см. в следующих разделах.
Пользователи и роли
Совет
Для миграции хранилища данных требуются не только таблицы, представления и инструкции SQL.
Сведения о текущих пользователях и группах в системе Netezza хранятся в представлениях _v_users
и _v_groupusers
системного каталога. Используйте служебную программу nzsql или такие средства как Netezza Performance, NzAdmin или скрипты Netezza Utility, чтобы получить список привилегий пользователя. Например, используйте команды dpu
и dpgu
в nzsql для отображения пользователей или групп с разрешениями.
Используйте или редактируйте скрипты nz_get_users
и nz_get_user_groups
служебной программы, чтобы извлечь те же сведения в требуемом формате.
Запрос представлений системного каталога напрямую (если у пользователя есть доступ SELECT
к этим представлениям), чтобы получить текущие списки пользователей и ролей, определенных в системе. См. примеры для перечисления пользователей, групп или пользователей и связанных с ними групп:
-- List of users
SELECT USERNAME FROM _V_USER;
--List of groups
SELECT DISTINCT(GROUPNAME) FROM _V_USERGROUPS;
--List of users and their associated groups
SELECT USERNAME, GROUPNAME FROM _V_GROUPUSERS;
Измените пример инструкции SELECT
, чтобы создать результирующий набор, который является рядом операторов CREATE USER
и CREATE GROUP
, включив соответствующий текст в качестве литерала в инструкцию SELECT
.
Получить существующие пароли невозможно, поэтому необходимо реализовать схему выделения новых начальных паролей на Azure Synapse.
Разрешения
Совет
Существуют эквивалентные разрешения Azure Synapse для базовых операций базы данных, таких как DML и DDL.
В системе Netezza системная таблица _t_usrobj_priv
содержит права доступа для пользователей и ролей. Запросите эти таблицы (если у пользователя есть доступ SELECT
к этим таблицам), чтобы получить текущие списки прав доступа, определенных в системе.
В Netezza отдельные разрешения представлены как отдельные биты в привилегиях поля или g_privileges. См. пример инструкции SQL с разрешениями группы пользователей
Самый простой способ получить скрипт DDL, содержащий команды GRANT
для репликации текущих привилегий для пользователей и групп, — использовать соответствующие скрипты служебной программы Netezza:
--List of group privileges
nz_ddl_grant_group -usrobj dbname > output_file_dbname;
--List of user privileges
nz_ddl_grant_user -usrobj dbname > output_file_dbname;
Выходной файл можно изменить, чтобы создать скрипта, который представляет собой ряд инструкций GRANT
для Azure Synapse.
Netezza поддерживает два класса прав доступа — администратор и объект. Список прав доступа Netezza и их эквивалент в Azure Synapse см. в следующих таблицах.
Права администратора | Description | Эквивалент Azure Synapse |
---|---|---|
Резервное копирование | Позволяет пользователю создавать резервные копии. Пользователь может запускать резервные копии. Пользователь может выполнить команду nzbackup . |
1 |
[Create] Aggregate | Позволяет пользователю создавать определяемые пользователем статистические выражения (UDA). Разрешение на работу с существующими UDA управляется привилегиями объектов. | CREATE FUNCTION 3 |
[Create] Database | Позволяет пользователю создавать базы данных. Разрешение на работу с существующими базами данных управляется привилегиями объектов. | СОЗДАТЬ БАЗУ ДАННЫХ |
[Create] External Table | Позволяет пользователю создавать внешние таблицы. Разрешение на работу с существующими таблицами управляется привилегиями объектов. | СОЗДАТЬ ТАБЛИЦУ |
[Create] Function | Позволяет пользователю создавать определяемые пользователем функции (UDF). Разрешение на работу с существующими UDF управляется привилегиями объектов. | CREATE FUNCTION |
[Create] Group | Позволяет пользователю создавать базы данных. Разрешение на работу с существующими группами управляется привилегиями объектов. | CREATE ROLE |
[Create] Index | Только для системного использования. Пользователи не могут создавать индексы. | CREATE INDEX |
[Create] Library | Позволяет пользователю создавать общие библиотеки. Разрешение на работу с существующими общими библиотеками управляется привилегиями объектов. | 1 |
[Create] Materialized View | Позволяет пользователю создавать материализованные представления. | СОЗДАТЬ ПРЕДСТАВЛЕНИЕ |
[Create] Procedure | Позволяет пользователю создавать хранимые процедуры. Разрешение на работу с существующими хранимыми процедурами управляется привилегиями объектов. | СОЗДАТЬ ПРОЦЕДУРУ |
[Create] Schema | Позволяет пользователю создавать схемы. Разрешение на работу с существующими схемами управляется привилегиями объектов. | CREATE SCHEMA |
[Create] Sequence | Позволяет пользователю создавать базы данных. | 1 |
[Create] Synonym | Позволяет пользователю создавать синонимы. | CREATE SYNONYM |
[Create] Table | Позволяет пользователю создавать таблицы. Разрешение на работу с существующими таблицами управляется привилегиями объектов. | СОЗДАТЬ ТАБЛИЦУ |
[Create] Temp Table | Позволяет пользователю создавать временные таблицы. Разрешение на работу с существующими таблицами управляется привилегиями объектов. | СОЗДАТЬ ТАБЛИЦУ |
[Create] User | Позволяет пользователю создавать пользователей. Разрешение на работу с существующими пользователями управляется привилегиями объектов. | СОЗДАНИЕ ПОЛЬЗОВАТЕЛЯ |
[Create] View | Позволяет пользователю создавать представления. Разрешение на работу с существующими представлениями управляется привилегиями объектов. | СОЗДАТЬ ПРЕДСТАВЛЕНИЕ |
[Manage Hardware | Позволяет пользователю выполнять следующие операции, связанные с оборудованием: просматривать состояние оборудования, управлять SPU, управлять топологией и зеркальным отображением, а также выполнять диагностические тесты. Пользователь может выполнять следующие команды: nzhw и nzds. | 4 |
[Manage Security | Позволяет пользователю выполнять команды и операции, связанные со следующими расширенными параметрами безопасности: управление базами данных журнала и настройка баз данных журнала, управление объектами безопасности на нескольких уровнях, а также определение безопасности для пользователей и групп, управление хранилищами ключей базы данных, а также управление ключами и хранилищами ключей для цифровой подписи данных аудита. | 4 |
[Manage System | Позволяет пользователю выполнять следующие операции управления: запуск, остановка, приостановка и возобновление работы системы, сеансы прерывания, просмотр карты распространения, статистики системы и журналов. Пользователь может использовать следующие команды: nzsystem, nzstate, nzstats и nzsession. | 4 |
Восстановление | Позволяет пользователю восстановить систему. Пользователь может выполнить команду nzrestore. | 2 |
Снятие границ | Позволяет пользователю создавать или изменять определяемую пользователем функцию или статистическую обработку для выполнения в режиме со снятыми границами. | 1 |
Прервать привилегии объекта | Description | Эквивалент Azure Synapse |
---|---|---|
Abort | Позволяет пользователю прерывать сеансы. Применяется к группам и пользователям. | KILL DATABASE CONNECTION |
Alter | Позволяет пользователю изменять атрибуты объектов. Применяется ко всем объектам. | ИЗМЕНИТЬ |
Удаление | Позволяет пользователю удалять строки таблицы. Применяется только к таблицам. | DELETE |
Удалить | Позволяет пользователю удалять объекты. Применяется ко всем типам объектов. | DROP |
Выполнить | Позволяет пользователю выполнять определяемые пользователем функции, определяемые пользователем статистические выражения или хранимые процедуры. | ВЫПОЛНИТЬ |
GenStats | Позволяет пользователю создавать статистику по таблицам или базам данных. Пользователь может выполнить команду GENERATE STATISTICS. | 2 |
Очистка | Позволяет пользователю освободить место на диске для удаленных или устаревших строк, а также реорганизовать таблицу с помощью ключей организации или перенести данные для таблиц, которые имеют несколько сохраненных версий. | 2 |
Insert | Позволяет пользователю вставлять строки в таблицу. Применяется только к таблицам. | ВСТАВИТЬ |
Список (List) | Позволяет пользователю отображать имя объекта в списке или другим способом. Применяется ко всем объектам. | LIST |
Выбрать | Позволяет пользователю выбирать (или запрашивать) строки в таблице. Применяется к таблицам и представлениям. | ВЫБРАТЬ |
Truncate | Позволяет пользователю удалять все строки из таблицы. Применяется только к таблицам. | TRUNCATE |
Обновить | Позволяет пользователю изменять строки таблицы. Применяется только к таблицам. | ОБНОВИТЬ |
Примечания к таблице:
В Azure Synapse нет прямого эквивалента этой функции.
Эти функции Netezza обрабатываются автоматически в Azure Synapse.
Функция Azure Synapse
CREATE FUNCTION
включает агрегатные функции Netezza.Управление этими функциями осуществляется автоматически системой или с помощью портала Azure в Azure Synapse. Рабочие соображения описаны в следующем разделе.
Ознакомьтесь с разрешениями безопасности Azure Synapse Analytics.
Рабочие соображения
Совет
Операционные задачи необходимы для эффективной работы любого хранилища данных.
В этом разделе описывается, как реализовать типичные рабочие задачи Netezza в Azure Synapse с минимальным риском и воздействием на пользователей.
Как и в случае со всеми остальными продуктами хранилища данных, в рабочей среде выполняются текущие задачи управления, необходимые для эффективной работы системы и предоставления данных для мониторинга и аудита. Использование ресурсов и планирование загрузки для будущего роста также попадают в эту категорию, как и резервное копирование и восстановление данных.
Задачи администрирования Netezza обычно делятся на две категории:
Системное администрирование, которое управляет оборудованием, параметрами конфигурации, состоянием системы, доступом, пространством на диске, использованием, обновлениями и другими задачами.
Администрирование базы данных, которое управляет пользовательскими базами данных и их содержимым, загружает данные, выполняет резервное копирование данных, восстанавливает данные и управляет доступом к данным и разрешениям.
IBM Netezza предлагает несколько способов или интерфейсов, которые можно использовать для выполнения различных задач управления системами и базами данных:
Команды Netezza (команды
nz*
) устанавливаются в каталоге/nz/kit/bin
на узле Netezza. Для многих командnz*
необходимо иметь возможность войти в систему Netezza, чтобы получить доступ к этим командам и выполнить их. В большинстве случаев пользователи входят в систему под учетной записью пользователяnz
по умолчанию, но вы можете создать другие учетные записи пользователей Linux в системе. Некоторые команды требуют указать учетную запись пользователя базы данных, пароль и базу данных, чтобы убедиться, что у вас есть разрешение на выполнение задачи.Клиентские комплекты интерфейса командной строки Netezza включают в себя подмножество команд
nz*
, которые могут выполняться из клиентских систем Windows и UNIX. Клиентские команды также могут потребовать указать учетную запись пользователя базы данных, пароль и базу данных, чтобы иметь разрешения администратора базы данных и объекта для выполнения задачи.Команды SQL поддерживают задачи администрирования и запросы в рамках сеанса базы данных SQL. Вы можете выполнять команды SQL из интерпретатора команд Netezza nzsql или через api-интерфейсы SQL, такие как ODBC, JDBC и поставщик OLE DB. Для выполнения команд SQL с соответствующими разрешениями для выполняемых запросов и задач требуется учетная запись пользователя базы данных.
Инструмент NzAdmin — это интерфейс Netezza, который работает на клиентских рабочих станциях Windows для управления системами Netezza.
Хотя концептуально задачи управления и операций для разных хранилищ данных похожи, отдельные случаи реализации могут отличаться. Как правило, современные облачные продукты, такие как Azure Synapse, включают более автоматизированный и "управляемый системой" подход (в отличие от ручного подхода в устаревших хранилищах данных, таких как Netezza).
В следующих разделах сравниваются параметры Netezza и Azure Synapse для различных операционных задач.
Задачи по обслуживанию
Совет
Задачи по обслуживанию обеспечивают эффективную работу рабочего хранилища данных и оптимизируют использование таких ресурсов, как хранилище.
В большинстве устаревших сред хранилища данных обычные задачи "по обслуживанию" занимают много времени. Освободите дисковое пространство, удалив старые версии обновленных или удаленных строк или реорганизовав данные, файлы журнала или блоки индекса для повышения эффективности (GROOM
и VACUUM
в Netezza). Сбор статистики также является потенциально трудоемкой задачей, необходимой после приема массовых данных для предоставления оптимизатору запросов актуальных данных, на основе которых строятся планы выполнения запросов.
Netezza рекомендует собирать статистику следующим образом:
Сбор статистики по незаполненным таблицам для настройки гистограммы интервала, используемой во внутренней обработке. Такой начальный сбор статистики ускоряет ее последующий сбор. Не забудьте повторно собрать статистику после добавления данных.
Сбор статистики этапа прототипа для вновь заполненных таблиц.
Сбор статистики этапа производства, после значительного процента изменений в таблице или секции (около 10 % строк). Для больших объемов неуникальных значений, таких как даты или метки времени, может быть полезно повторно собрать статистику при 7%.
Сбор статистики этапа производства после создания пользователей и применения реальных запросов к базе данных (до трех месяцев).
Сбор статистики за первые несколько недель после обновления или миграции в периоды низкой загрузки ЦП.
База данных Netezza содержит множество таблиц журналов в словаре данных, которые накапливают данные автоматически или после включения определенных функций. Поскольку объем данных журнала увеличивается с течением времени, очищайте его от старых сведений, чтобы не исчерпать постоянное пространство. Существуют варианты автоматизации обслуживания этих журналов.
Совет
Автоматизация и мониторинг задач по обслуживанию в Azure.
Azure Synapse имеет возможность автоматически создавать статистику, которую можно будет использовать по мере необходимости. Выполняйте дефрагментацию индексов и блоков данных вручную, по расписанию или автоматически. Использование собственных встроенных возможностей Azure может сократить усилия, необходимые для выполнения миграции.
Мониторинг и аудит
Совет
Netezza Performance Portal — это рекомендуемый метод мониторинга и ведения журнала для систем Netezza.
Netezza предоставляет портал производительности Netezza для мониторинга различных аспектов одной или нескольких систем Netezza, включая активность, производительность, очередь и использование ресурсов. Netezza Performance Portal — это интерактивный графический интерфейс, который позволяет пользователям детализировать низкоуровневые сведения для любой диаграммы.
Совет
Портал Azure предоставляет пользовательский интерфейс для управления задачами мониторинга и аудита для всех данных и процессов Azure.
Аналогичным образом Azure Synapse предоставляет широкие возможности мониторинга в рамках портала Azure, обеспечивая аналитические сведения о рабочей нагрузке хранилища данных. Портал Azure — рекомендуемый инструмент мониторинга хранилища данных, так как он предоставляет настраиваемые периоды хранения, оповещения, рекомендации, индивидуальные диаграммы и панели мониторинга для метрик и журналов.
На портале также можно выполнить интеграцию с другими службами мониторинга Azure, такими как Operations Management Suite (OMS) и Azure Monitor (журналы), чтобы обеспечить комплексные возможности мониторинга не только для хранилища данных, но и для всей платформы аналитики Azure.
Совет
Низкоуровневые и системные метрики автоматически регистрируются в Azure Synapse.
Статистика использования ресурсов для Azure Synapse автоматически регистрируется в системе. Метрики для каждого запроса включают статистику использования ЦП, памяти, кэша, ввода-вывода и временной рабочей области, а также сведения о подключении, такие как неудачные попытки подключения.
Azure Synapse предоставляет набор динамических административных представлений (DMV). Эти представления полезны в том случае, если вы активно устраняете неполадки и выявляете узкие места производительности в рабочей нагрузке.
Дополнительные сведения см. в разделе операций и параметров управления Azure Synapse.
Высокая доступность (HA) и аварийное восстановление (DR)
Устройства Netezza являются избыточными, отказоустойчивыми системами. В системе Netezza доступны различные способы реализации высокой доступности и аварийного восстановления.
Добавление служб репликации IBM Netezza для аварийного восстановления повышает отказоустойчивость за счет расширения избыточности между локальными и глобальными сетями.
Службы репликации IBM Netezza защищают от потери данных путем синхронизации данных в первичной системе (первичном узле) с данными на одном или нескольких целевых узлах (подчиненных). Эти узлы составляют набор репликации.
High-Availability Linux (также называемая Linux-HA) предоставляет возможности отработки отказа с основного или активного узла Netezza на дополнительный или резервный узел Netezza. Основная управляющая программа управления кластерами в решении Linux-HA называется Heartbeat. Heartbeat наблюдает за узлами и управляет проверками связи и состояния служб.
Каждая служба является ресурсом.
Netezza группирует службы Netezza в группу ресурсов nps. Когда Heartbeat обнаруживает проблемы, которые подразумевают сбой узла или потерю службы для пользователей Netezza, Heartbeat может инициировать отработку отказа на резервный узел.
Распределенное реплицированное блочное устройство (DRBD) — это драйвер блочного устройства, который отражает содержимое блочных устройств (жестких дисков, секций и логических томов) между узлами. Netezza использует репликацию DRBD только для секций /nz и /export/home . Так как новые данные записываются в раздел /nz и раздел /export/home на основном узле, программное обеспечение DRBD автоматически вносит те же изменения в раздел /nz и /export/home резервного узла.
Совет
Azure Synapse автоматически создает моментальные снимки, чтобы обеспечить быстрое время восстановления.
Azure Synapse использует моментальные снимки базы данных для обеспечения высокого уровня доступности хранилища. Моментальный снимок хранилища данных создает точку восстановления, которую можно использовать для копирования или восстановления хранилища данных до предыдущего состояния. Поскольку Azure Synapse — это распределенная система, моментальный снимок хранилища данных состоит из множества файлов, находящихся в службе хранилища Azure. Моментальные снимки фиксируют добавочные изменения в данных, содержащихся в хранилище данных.
Совет
Используйте пользовательские моментальные снимки для определения точки восстановления перед обновлениями ключей.
Совет
Microsoft Azure предоставляет автоматическое резервное копирование в отдельное географическое расположение для включения аварийного восстановления.
Azure Synapse автоматически делает моментальные снимки в течение дня, чтобы создать точки восстановления, доступные в течение семи дней. Этот период хранения изменить нельзя. Azure Synapse поддерживает восьмичасовую целевую точку восстановления (RPO). Можно восстановить хранилище данных в основном регионе из любого моментального снимка, сделанного за последние семь дней.
Пользовательские точки восстановления также поддерживаются, позволяя вручную запускать моментальные снимки для создания точек восстановления хранилища данных до и после больших изменений. Эта возможность гарантирует, что точки восстановления логически согласованы, что обеспечивает дополнительную защиту данных в случае любых прерываний рабочей нагрузки или пользовательских ошибок для желаемой целевой точки восстановления, составляющей менее 8 часов.
Кроме моментальных снимков, описанных ранее, Azure Synapse также по умолчанию выполняет геоизбыточное резервное копирование один раз в день в сопряженный центр обработки данных. Целевая точка восстановления для геовосстановления составляет 24 часа. Можно восстановить географическую резервную копию на сервере в любом другом регионе, где поддерживается Azure Synapse. Геоизбыточное резервное копирование гарантирует, что хранилище данных может быть восстановлено в случае, если точки восстановления в основном регионе недоступны.
Управление рабочей нагрузкой
Совет
В производственном хранилище данных обычно одновременно выполняются смешанные рабочие нагрузки с различными характеристиками использования ресурсов.
Netezza включает различные функции для управления рабочими нагрузками:
Методика | Description |
---|---|
Правила планировщика | Правила планировщика влияют на планирование. Каждое правило планировщика указывает условие или набор условий. Каждый раз, когда планировщик получает план, он оценивает все изменения правил планировщика и выполняет соответствующие действия. Каждый раз, когда планировщик выбирает план для выполнения, он оценивает все ограничивающие правила планировщика. План выполняется только в том случае, если это не превысит ограничение, введенное правилом планировщика. В противном случае план ожидает. Это позволяет классифицировать планы и управлять ими таким образом, чтобы влиять на другие методы WLM (SQB, GRA и PQE). |
Гарантированное выделение ресурсов (GRA) | Можно назначить минимальную общую папку и максимальный процент общих системных ресурсов сущностям, называемым группами ресурсов. Планировщик гарантирует, что каждая группа ресурсов получит системные ресурсы пропорционально своей минимальной доле. Группа ресурсов получает большую долю ресурсов, если другие группы ресурсов находятся в состоянии простоя, но никогда не получает больше настроенного максимального процента. Каждый план связан с группой ресурсов, а параметры этой группы ресурсов определяют, какая часть доступных системных ресурсов должна быть доступна для обработки плана. |
Предвзятость коротких запросов (SQB) | Ресурсы (т. е. планирование слотов, памяти и приоритетная постановка в очередь) зарезервированы для коротких запросов. Короткий запрос — это запрос, для которого оценка затрат меньше указанного максимального значения (значение по умолчанию составляет две секунды). При использовании SQB короткие запросы могут выполняться, даже если система занята обработкой других, более длинных запросов. |
Выполнение запросов с приоритетом (PQE) | В зависимости от настроенных параметров система назначает каждому запросу приоритет (критический, высокий, обычный или низкий). Приоритет зависит от таких факторов, как пользователь, группа или сеанс, связанный с запросом. Затем система может использовать приоритет в качестве основы для выделения ресурсов. |
Azure Synapse автоматически регистрирует статистику использования ресурсов. Метрики включают статистику использования ЦП, памяти, кэша, операций ввода-вывода и временной рабочей области для каждого запроса. Azure Synapse также регистрирует информацию о подключении, например неудачные попытки подключения.
Совет
Низкоуровневые и общесистемные метрики автоматически регистрируются в Azure.
В Azure Synapse классы ресурсов представляют собой предопределенные ограничения ресурсов, которые управляют вычислительными ресурсами и параллелизмом для выполнения запроса. Классы ресурсов позволяют управлять рабочей нагрузкой путем установки ограничений на количество параллельно выполняющихся запросов и на вычислительные ресурсы, назначенные для каждого запроса. Между требованиями к памяти и параллелизму существует зависимость.
Azure Synapse поддерживает следующие основные концепции управления рабочей нагрузкой:
Классификация рабочей нагрузки: вы можете назначить запрос группе рабочей нагрузки, чтобы установить уровни важности.
Важность рабочей нагрузки: вы можете влиять на порядок, в котором запрос получает доступ к ресурсам. По умолчанию запросы освобождаются из очереди по мере того, как ресурсы становятся доступными. Важность рабочей нагрузки позволяет запросам с более высоким приоритетом получать ресурсы немедленно, независимо от очереди.
Изоляция рабочей нагрузки: вы можете резервировать ресурсы для группы рабочей нагрузки, назначать максимальное и минимальное использование для различных ресурсов, ограничивать ресурсы, которые может потреблять группа запросов, и устанавливать значение времени ожидания для автоматического завершения неконтролируемых запросов.
Выполнение смешанных рабочих нагрузок может усложнять процесс распределения ресурсов на загруженных системах. Успешная схема управления рабочей нагрузкой позволяет эффективно управлять ресурсами, обеспечивает их высокоэффективное использование и максимально увеличивает рентабельность инвестиций. Классификация рабочей нагрузки, важность рабочей нагрузки и изоляция рабочей нагрузки позволяют лучше контролировать использование системных ресурсов рабочей нагрузкой.
В руководстве по управлению рабочей нагрузкой описаны методы анализа рабочей нагрузки, управления и мониторинга важности рабочей нагрузки](../../sql-data-warehouse/sql-data-warehouse-how-to-manage-and-monitor-workload-importance.md) и действия по преобразованию класса ресурсов в группу рабочей нагрузки. Используйте портал Azure и запросы T-SQL к DMV, чтобы отслеживать рабочую нагрузку и обеспечивать эффективное использование применимых ресурсов. Azure Synapse предоставляет набор динамических административных представлений (DMV) для мониторинга всех аспектов управления рабочей нагрузкой. Эти представления полезны при активном устранении неполадок и выявлении узких мест производительности в вашей рабочей нагрузке.
Эти сведения также можно использовать для планирования загрузки, определяя ресурсы, необходимые для дополнительных пользователей или рабочей нагрузки приложений. Это также относится к планированию вертикального увеличения и уменьшения масштаба вычислительных ресурсов для экономичной поддержки "неравномерных" рабочих нагрузок, таких как рабочие нагрузки с временными, интенсивными всплесками активности и большими периодами редкой активности.
Дополнительные сведения об управлении рабочей нагрузкой в Azure Synapse см. в разделе Управление рабочей нагрузкой с помощью классов ресурсов.
Масштабирование вычислительных ресурсов
Совет
Основным преимуществом Azure является возможность независимо масштабировать вычислительные ресурсы по требованию для эффективной обработки пиковых рабочих нагрузок.
Архитектура Azure Synapse разделяет хранилище и вычислительные ресурсы, что позволяет масштабировать их независимо друг от друга. В результате можно масштабировать вычислительные ресурсы в соответствии с требованиями к производительности независимо от хранилища данных. Кроме того, можно приостанавливать и возобновлять работу вычислительных ресурсов. Преимуществом такой архитектуры является отдельное выставление счетов за вычислительные ресурсы и ресурсы хранилища. Если хранилище данных не используется, вы можете сэкономить на затратах на вычисления за счет приостановки вычислений.
Вычислительные ресурсы можно масштабировать в сторону увеличения или сокращения, корректируя параметры единиц хранилища данных для хранилища данных. Добавление единиц использования хранилища данных позволяет линейно повышать производительность загрузки и запросов.
Добавление дополнительных вычислительных узлов увеличивает вычислительные мощности и возможность использовать более параллельную обработку. При увеличении количества вычислительных узлов количество распределений на каждом вычислительном узле уменьшается, что обеспечивает дополнительную вычислительную мощность и параллельную обработку для запросов. Точно так же уменьшение количества единиц использования хранилища данных приводит к уменьшению числа вычислительных узлов, и для обработки запросов становится доступно меньше вычислительных ресурсов.
Следующие шаги
Дополнительные сведения о визуализации и отчетах см. в следующей статье этой серии: Визуализация и создание отчетов для миграций Netezza.