Поделиться через


Проектирование и производительность миграции из Netezza

Это первая из семи статей, посвященных рекомендациям по переходу с Netezza на Azure Synapse Analytics. В ней приведены рекомендации по проектированию и повышению производительности.

Обзор

В связи с окончанием поддержки со стороны IBM, многих существующих пользователей систем хранилища данных Netezza интересуют преимущества инноваций, предоставляемых современными облачными средами. Облачные среды типа "инфраструктура как услуга" (IaaS) и "платформа как услуга" (PaaS) позволяют делегировать такие задачи, как обслуживание инфраструктуры и разработка платформы, поставщику облачных служб.

Совет

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

Хотя Netezza и Azure Synapse Analytics являются базами данных SQL, использующими методы массовой параллельной обработки (MPP) для обеспечения высокой производительности запросов к исключительно большим объемам данных, между ними есть некоторые базовые различия в подходах.

  • Устаревшие системы Netezza часто устанавливаются локально и используют собственное оборудование. Azure Synapse работает в облаке и использует хранилище, а также вычислительные ресурсы Azure.

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

  • Вы можете приостанавливать работу Azure Synapse и изменять размер службы, чтобы сэкономить на используемых ресурсах и затратах.

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

Схема, на которой показана экосистема Azure Synapse вспомогательных средств и возможностей.

Azure Synapse обеспечивает лучшие в своем классе показатели производительности реляционной базы данных благодаря таким методам, как массовая параллельная обработка (MPP) и несколько уровней автоматического кэширования для часто используемых данных. Результаты применения этих приемов описаны в отчетах о независимых тестах производительности, например от GigaOm, где Azure Synapse сравнивается с другими популярными облачными хранилищами данных. Клиенты, которые переносятся в среду Azure Synapse, получают целый ряд преимуществ, включая следующие:

  • улучшение показателей производительности, а также соотношения цены и производительности;

  • Увеличение гибкость и сокращение срока окупаемости.

  • Увеличение скорости развертывания серверов и разработки приложений.

  • эластичная масштабируемость — плата только за фактическое использование;

  • улучшение показателей безопасности и соответствия требованиям;

  • Снижение затрат на хранение и аварийное восстановление.

  • уменьшение общей совокупной стоимости владения, улучшение контроля затрат и оптимизация эксплуатационных расходов (OPEX).

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

    Подготовка 🡆

  • Определите область (что именно нужно перенести).

  • Составьте список данных и процессов для миграции.

  • Определите изменения модели данных (при их наличии).

  • Определите механизм извлечения исходных данных.

  • Определите оптимальные средства и функции Azure и сторонних производителей.

  • Сразу же проведите обучение персонала на новой платформе.

  • Настройте целевую платформу Azure.

    Миграция 🡆

  • Начните с малого.

  • Автоматизируйте все, что возможно.

  • Используйте встроенные средства и функции Azure, чтобы уменьшить трудоемкость переноса.

  • Перенесите метаданные для таблиц и представлений.

  • Перенесите исторические данные, которые требуется сохранить.

  • Произведите миграцию или рефакторинг хранимых процедур и бизнес-процессов.

  • Произведите миграцию или рефакторинг процессов добавочной загрузки в рамках извлечения, преобразования и загрузки или извлечения, загрузки и преобразования.

    После миграции

  • Отслеживайте и документируйте все этапы процесса.

  • На основе полученного опыта создайте шаблон для будущих миграций.

  • При необходимости переработайте модель данных с учетом производительности и масштабируемости новой платформы.

  • Протестируйте приложения и средства запросов.

  • Протестируйте и оптимизируйте производительность запросов.

В этой статье приведены общие сведения и рекомендации по оптимизации производительности при переносе хранилища данных из существующей среды Netezza в Azure Synapse. Цель оптимизации производительности — достичь той же или более высокой производительности хранилища данных в Azure Synapse после миграции схемы.

Рекомендации по проектированию

Область миграции

При подготовке к миграции из среды Netezza рассмотрите перечисленные ниже варианты миграции.

Выбор рабочей нагрузки для начальной миграции

Традиционные среды Netezza обычно развивались в динамике, охватывая новые предметные области и смешанные рабочие нагрузки. Если вы решаете, с чего начать проект начальной миграции, выберите область, которая обладает следующими особенностями:

  • дает возможность подтвердить жизнеспособность перехода на Azure Synapse, быстро предоставив преимущества новой среды;

  • позволяет внутреннему техническому персоналу получить опыт работы с новыми процессами и средствами, который затем можно применить при переносе других областей;

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

Хороший кандидат на начальную миграцию из среды Netezza соответствует указанным выше условиям, а также:

  • реализует рабочую нагрузку бизнес-аналитики, а не рабочую нагрузку обработки транзакций (OLTP);

  • использует модель данных, например типа "звезда" или "снежинка", которую можно перенести с минимальными изменениями.

Совет

Проведите инвентаризацию объектов для переноса и задокументируйте процесс миграции.

Объем данных миграции для начальной задачи должен быть достаточно большим, чтобы можно было показать возможности и преимущества среды Azure Synapse, но при этом быстро продемонстрировать ценность. Как правило, такой объем составляет от 1 до 10 терабайт.

Для первоначального проекта миграции сведите к минимуму риски, усилия и время миграции, чтобы быстро увидеть преимущества облачной среды Azure. Методы lift-and-shift и поэтапной миграции ограничивают область начальной миграции только киосками данных и не рассматривают более широкие аспекты, такие как миграция ETL и перенос исторических данных. Однако эти аспекты можно реализовать на последующих этапах проекта после того, как перенесенный уровень киоска данных будет заполнен данными и необходимыми процессами сборки.

Перенос по методу lift-and-shift и поэтапный подход

Как правило, независимо от цели и области применения плановой миграции существует два метода: lift-and-shift без изменений и поэтапный подход, включающий изменения.

Методика lift-and-shift

В рамках подхода lift-and-shift существующая модель данных, например схема "звезда", переносится на новую платформу Azure Synapse без изменений. Упор делается на минимизацию рисков и времени миграции путем уменьшения объема работ, необходимого для реализации преимуществ перехода на облачную среду Azure. Миграция lift-and-shift подходит для следующих сценариев:

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

Совет

Lift-and-shift является хорошей отправной точкой, даже если на последующих этапах в модель данных будут вноситься изменения.

Поэтапный подход, включающий изменения

Если устаревшее хранилище развивалось в течение длительного времени, возможно, его потребуется модернизировать для обеспечения необходимых уровней производительности. или поддержки новых данных, например потоков Интернета вещей. В рамках процесса модернизации вы можете перейти на Azure Synapse, чтобы получить преимущества масштабируемой облачной среды. Миграция также может включать изменение базовой модели данных, например переход с модели Inmon на хранилище данных.

Корпорация Майкрософт рекомендует переместить существующую модель данных в Azure и использовать производительность и гибкость среды Azure, чтобы применить современные изменения. Так вы сможете задействовать возможности Azure для внесения изменений, не затрагивая существующую исходную систему.

Использование Фабрики данных Azure для реализации миграции на основе метаданных

Можно использовать возможности среды Azure, чтобы автоматизировать и отладить процесс миграции. Такой подход позволяет снизить влияние на существующую среду Netezza, нагрузка на которую уже может быть максимальной.

Фабрика данных Azure — это облачная служба интеграции данных, которая позволяет создавать управляемые данными рабочие процессы в облаке для оркестрации и автоматизации перемещения и преобразования данных. С помощью Фабрики данных можно создавать и включать в расписание управляемые данными рабочие процессы (конвейеры), которые принимают данные из разнородных хранилищ. Фабрика данных может обрабатывать и преобразовывать эти данные с помощью таких служб вычислений, как Azure HDInsight Hadoop, Spark, Azure Data Lake Analytics и машинное обучение Azure.

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

Структурные различия между Netezza и Azure Synapse

Как упоминалось ранее, существуют некоторые основные различия в подходе между базами данных Netezza и Azure Synapse Analytics, и эти различия рассматриваются далее.

Несколько или одна база данных, схемы

Среда Netezza часто содержит несколько отдельных баз данных. Например, могут существовать отдельные базы для приема данных и промежуточных таблиц, основных таблиц хранилища и киосков данных (иногда это называется семантическим слоем). Процессы конвейеров "извлечение, преобразование и загрузка" и "извлечение, загрузка и преобразование" могут реализовывать соединения между отдельными базами и перемещать данные между ними.

В то же время среда Azure Synapse содержит единственную базу данных и использует схемы для разделения таблиц на логически изолированные группы. Мы рекомендуем использовать несколько схем в целевой базе данных Azure Synapse, чтобы смоделировать все отдельные базы данных, перенесенные из среды Netezza. Если в среде Netezza уже используются схемы, для перемещения существующих таблиц и представлений Netezza в новую среду может потребоваться новое соглашение об именовании. Например, можно сцепить имена существующих схем и таблиц Netezza с именем новой таблицы Azure Synapse, а затем использовать имена схем в новой среде для сохранения имен исходных отдельных баз данных. Если имена консолидации схемы содержат точки, в Azure Synapse Spark могут возникнуть проблемы. Для сохранения логических структур можно использовать представления SQL поверх базовых таблиц, однако у такого подхода есть ряд потенциальных недостатков.

  • Представления в Azure Synapse доступны только для чтения, поэтому любые изменения данных должны вноситься в базовые таблицы.

  • У вас уже может быть реализован один или несколько уровней представлений, и добавление еще одного уровня может повлиять на производительность и возможности поддержки, так как неполадки с вложенными представлениями плохо поддаются устранению.

Совет

Объедините несколько баз данных в отдельную базу данных в Azure Synapse и используйте имена схем для логического разделения таблиц.

Рекомендации по таблице

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

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

Совет

Существующие индексы помогают найти кандидатов на индексирование в перенесенном хранилище.

Неподдерживаемые типы объектов базы данных Netezza

Функции Netezza часто можно заменить функциями Azure Synapse. Однако Azure Synapse не поддерживает некоторые объекты базы данных Netezza напрямую. В следующем списке неподдерживаемых объектов базы данных Netezza описывается, как реализовать эквивалентные функциональные возможности в Azure Synapse.

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

    • Столбцы INTEGER длиной 8 байтов или меньше.
    • Темпоральные столбцы, такие как DATE, TIMEи TIMESTAMP.
    • столбцы CHAR, если они являются частью материализованного представления и указаны в предложении ORDER BY.

    Вы можете узнать, какие столбцы имеют карты зоны, с помощью nz_zonemap служебной программы, которая входит в набор средств NZ. В Azure Synapse карты зон не используются, но вы можете добиться аналогичных результатов с помощью определяемых пользователем типов индексов и/или секционирования.

  • Кластеризованные базовые таблицы (CBT). В Netezza CBT обычно используются для таблиц фактов, которые могут содержать миллиарды записей. Сканирование такой большой таблицы занимает значительное количество времени, поскольку для получения нужных записей может потребоваться полное сканирование таблицы. Организация записей в CBT позволяет Netezza группировать записи в одном или соседних экстентах. Также создаются карты зон, что повышает производительность благодаря уменьшению объема сканируемых данных.

    В Azure Synapse такого же результата можно добиться путем секционирования и (или) использования других типов индексов.

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

    Azure Synapse поддерживает материализованные представления с той же функциональностью, что и Netezza.

Сопоставление типов данных Netezza

Большинство типов данных Netezza имеют прямой эквивалент в Azure Synapse. В таблице ниже представлены рекомендованные способы работы для сопоставления типов данных Netezza c Azure Synapse.

Тип данных Netezza Тип данных Azure Synapse
BIGINT BIGINT
BINARY VARYING(n) VARBINARY(n)
BOOLEAN BIT
BYTEINT TINYINT
CHARACTER VARYING(n) VARCHAR(n)
CHARACTER(n) CHAR(n)
DATE DATE(date)
DECIMAL(p,s) DECIMAL(p,s)
DOUBLE PRECISION FLOAT
FLOAT(n) FLOAT(n)
INTEGER INT
INTERVAL Azure Synapse сейчас не поддерживает типы данных INTERVAL напрямую, но их можно вычислить с помощью темпоральных функций, таких как DATEDIFF.
MONEY MONEY
NATIONAL CHARACTER VARYING(n) NVARCHAR(n)
NATIONAL CHARACTER(n) NCHAR(n)
NUMERIC(p,s) NUMERIC(p,s)
real real
SMALLINT SMALLINT
ST_GEOMETRY(n) Azure Synapse сейчас не поддерживает пространственные типы данных, такие как ST_GEOMETRY, но данные могут храниться как VARCHAR или VARBINARY.
TIME TIME
TIME WITH TIME ZONE DATETIMEOFFSET
TIMESTAMP DATETIME

Совет

Оцените количество и тип неподдерживаемых типов данных на этапе подготовки миграции.

Сторонние поставщики предлагают инструменты и сервисы для автоматизации миграции, в том числе для сопоставления типов данных. Если в среде Netezza уже используется сторонний инструмент для извлечения, преобразования и загрузки (ETL) данных, воспользуйтесь им для выполнения всех необходимых преобразований с данными.

Различия в синтаксисе SQL DML

Между Netezza SQL и Azure Synapse T-SQL существуют различия синтаксиса SQL DML. Эти различия подробно рассматриваются в разделе Минимизация проблем SQL для миграций Netezza.

  • STRPOS. В Netezza функция STRPOS возвращает положение подстроки в строке. Эквивалентной функцией в Azure Synapse является CHARINDEX, но порядок аргументов обратный. Например, SELECT STRPOS('abcdef','def')... в Netezza эквивалентно SELECT CHARINDEX('def','abcdef')... в Azure Synapse.

  • AGE. Netezza поддерживает оператор AGE, задающий интервал между двумя темпоральными значениями, такими как метки времени и даты, например SELECT AGE('23-03-1956','01-01-2019') FROM.... В Azure Synapse используйте DATEDIFF для получения интервала, например: SELECT DATEDIFF(day, '1956-03-26','2019-01-01') FROM.... Обратите внимание на последовательность представления даты.

  • NOW(). В Netezza используется NOW() для представления CURRENT_TIMESTAMP в Azure Synapse.

Функции, хранимые процедуры и последовательности

При переносе хранилища данных из развитой среды, например Netezza, часто приходится переносить не только простые таблицы и представления, но и другие элементы. Проверьте, могут ли средства среды Azure заменить функциональные возможности функций, хранимых процедур и последовательностей, так как обычно бывает эффективнее использовать встроенные средства Azure, чем переписывать эти элементы для Azure Synapse.

На этапе подготовки составьте каталог объектов, которые необходимо перенести, определите метод их обработки и выделите соответствующие ресурсы в плане миграции.

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

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

Функции

Как и большинство продуктов баз данных, Netezza поддерживает системные и пользовательские функции в реализации SQL. При миграции с устаревшей платформы базы данных на Azure Synapse стандартные системные функции обычно переносятся без изменений. У некоторых системных функций может быть немного другой синтаксис, однако необходимые изменения можно автоматизировать.

Системные функции Netezza и произвольные пользовательские функции, у которых нет эквивалента в Azure Synapse, можно переписать на языке целевой среды. В Netezza определяемые пользователем функции программируются на языках nzLua или C++. В Azure Synapse для реализации пользовательских функций применяется язык Transact-SQL.

Хранимые процедуры

Большинство современных СУБД поддерживают хранимые процедуры в базе данных. Для этих целей Netezza предоставляет язык NZPLSQL, основанный на Postgres PL/pgSQL. Как правило, хранимая процедура содержит инструкции SQL и процедурную логику, а также может возвращать данные или состояние.

Azure Synapse реализует хранимые процедуры с помощью T-SQL, поэтому потребуется переписать все перенесенные хранимые процедуры на этом языке.

Последовательности

В Netezza последовательность — это именованный объект базы данных, созданный с помощью CREATE SEQUENCE. Последовательность предоставляет уникальные числовые значения с помощью метода NEXT VALUE FOR. Созданные уникальные числа можно использовать как значения суррогатных ключей для первичных ключей.

Azure Synapse не реализует CREATE SEQUENCE, однако последовательности можно реализовать с помощью столбцов IDENTITY или кода SQL, который генерирует следующий порядковый номер в ряде.

Извлечение метаданных и данных из среды Netezza

Создание языка описания данных (DDL)

Стандарт ANSI SQL определяет базовый синтаксис для команд языка описания данных (DDL). Некоторые команды DDL, такие как CREATE TABLE и CREATE VIEW, являются общими для Netezza и Azure Synapse, но были расширены для предоставления функций, относящихся к реализации.

Для получения эквивалентных определений в Azure Synapse можно отредактировать существующие скрипты Netezza CREATE TABLE и CREATE VIEW. Для этого может потребоваться задействовать модифицированные типы данных и удалить или изменить характерные для Netezza предложения, например ORGANIZE ON.

В среде Netezza определение текущей таблицы и представления задают таблицы системного каталога. В отличие от пользовательской документации сведения из системного каталога всегда являются полными и в точности соответствуют текущим определениям таблиц. Использование программ, таких как nz_ddl_table, обеспечивает доступ к сведениям о системном каталоге для создания инструкций DDL CREATE TABLE, создающих эквивалентные таблицы в Azure Synapse.

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

Извлечение данных из Netezza

Необработанные данные таблиц можно извлечь из таблиц Netezza в неструктурированные файлы с разделителями, такие как CSV-файлы, с помощью стандартных служебных программ Netezza, таких как nzsql и nzunload, или через внешние таблицы. Затем можно сжать неструктурированные файлы с разделителями с помощью gzip и передать сжатые файлы в Хранилище BLOB-объектов Azure с помощью AzCopy или средств транспортировки данных Azure, таких как Azure Data Box.

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

CREATE EXTERNAL TABLE '/tmp/export_tab1.csv' USING (DELIM ',') AS SELECT * from <TABLENAME>;

Если доступна достаточная пропускная способность сети, вы можете извлекать данные из локальной системы Netezza непосредственно в таблицы Azure Synapse или хранилище данных BLOB-объектов Azure. Для этого используйте процессы фабрики данных или сторонние продукты переноса данных или ETL.

Совет

Для максимально эффективного извлечения данных используйте внешние таблицы Netezza.

Извлеченные файлы данных должны содержать текст с разделителями в формате CSV, ORC или Parquet.

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

Рекомендации по производительности для миграции из Netezza

Цель оптимизации производительности — достичь той же или более высокой производительности хранилища данных в Azure Synapse после миграции.

Сходства в понятиях подхода к настройке производительности

Многие концепции настройки производительности для баз данных Netezza имеют значение true для баз данных Azure Synapse. Например:

  • использование распространения данных для совместного размещения соединяемых данных в одном узле обработки;

  • использование типа данных наименьшего размера для определенного столбца, что позволит сэкономить дисковое пространство и ускорить обработку запросов;

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

  • Обеспечение актуальности статистики поможет оптимизатору создать наилучший план выполнения.

  • Отслеживайте производительность с помощью встроенных возможностей базы данных, чтобы обеспечить эффективное использование ресурсов.

Совет

Ознакомьтесь с параметрами настройки в Azure Synapse перед началом миграции.

Различия в подходе к настройке производительности

В этом разделе описаны различия более низкого уровня между Netezza и Azure Synapse, касающиеся настройки производительности.

Возможности распространения данных

Для повышения производительности в архитектуре Azure Synapse применяются несколько узлов и параллельная обработка. Чтобы оптимизировать производительность таблиц, можно задать параметр распределения данных в инструкциях CREATE TABLE с помощью DISTRIBUTION в Azure Synapse и DISTRIBUTE ON в Netezza.

В отличие от Netezza, Azure Synapse также поддерживает локальные соединения между небольшой и большой таблицами путем репликации небольшой таблицы. Например, рассмотрим небольшую таблицу измерения и большую таблицу фактов в схеме типа "звезда". Azure Synapse может реплицировать таблицу измерения меньшего размера по всем узлам, чтобы гарантировать, что у значения любого ключа соединения для большой таблицы есть соответствующая локальная строка измерения. Для небольшой таблицы измерения затраты на репликацию относительно низки. Для больших таблиц измерения целесообразнее применять хэш-распределение. Дополнительные сведения о параметрах распределения данных см. в руководстве по проектированию для реплицируемых таблиц и распределенных таблиц.

Индексирование данных

Azure Synapse поддерживает несколько определяемых пользователем параметров индексирования, работа и использование которых отличаются от управляемых системой карт зон в Netezza. Дополнительные сведения о различных вариантах индексирования в Azure Synapse см. в статье Индексы в таблицах выделенного пула SQL.

Существующие управляемые системой карты зон в исходной среде Netezza служат полезным индикатором того, как используются данные и какие столбцы подходят для индексирования в среде Azure Synapse.

Секционирование данных

В хранилище данных предприятия таблицы фактов могут содержать миллиарды строк. Секционирование позволяет оптимизировать обслуживание этих таблиц и производительность запросов к ним путем разделения их на отдельные части, чтобы уменьшить объем обрабатываемых данных. В Azure Synapse спецификацию секционирования для таблицы определяет инструкция CREATE TABLE.

Для секционирования можно использовать только одно поле на таблицу. Часто это поле даты, поскольку многие запросы фильтруются по датам или диапазонам дат. Вы можете изменить секционирование таблицы после начальной загрузки с помощью инструкции CREATE TABLE AS (CTAS), повторно создав таблицу с новым распределением. Подробное описание секционирования в Azure Synapse см. в статье Секционирование таблиц в выделенном пуле SQL.

Статистика по таблицам данных

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

Использование PolyBase или COPY INTO для загрузки данных

PolyBase поддерживает эффективную загрузку больших объемов данных в хранилище с помощью параллельных потоков загрузки. Дополнительные сведения см. в статье Стратегия загрузки данных PolyBase.

COPY INTO также поддерживает прием данных с высокой пропускной способностью, а также перечисленные ниже возможности.

  • Получение данных из всех файлов в папке и вложенных папках.

  • Получение данных из нескольких расположений в одной учетной записи хранения. Вы можете указать пути к нескольким расположениям через запятую.

  • Azure Data Lake Storage (ADLS) и Хранилище BLOB-объектов Azure.

  • Форматы файлов CSV, PARQUET и ORC.

Управление рабочей нагрузкой

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

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

Следующие шаги

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