Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения:✅ хранилище в Microsoft Fabric
В этой статье описаны основные понятия разработки таблиц в Microsoft Fabric.
В таблицах данные логически организованы в формате строк и столбцов. Каждая строка представляет собой уникальную запись, а каждый столбец — поле записи.
- В хранилище таблицы — это объекты базы данных, содержащие все данные транзакций.
Определение категории таблицы
Схема звезды упорядочивает данные в таблицы фактов и таблицы измерений. Некоторые таблицы используются для интеграции или промежуточного хранения данных до того, как они перейдут в таблицу фактов или измерений. При конструировании таблицы решите, к какой таблице относятся данные: фактов, измерений или интеграции. Это решение информирует соответствующую структуру таблицы.
Таблицы фактов содержат количественные данные, которые обычно создаются в транзакционной системе, а затем загружаются в хранилище данных. Например, розничное предприятие ежедневно создает транзакции продаж, а затем загружает данные в таблицу фактов хранилища данных для анализа.
Таблицы измерений содержат данные атрибутов, которые могут измениться, хотя обычно это происходит редко. Например, имя и адрес клиента хранятся в таблице измерений и обновляются только при изменении профиля клиента. Чтобы минимизировать размер большой таблицы фактов, необязательно включать имя и адрес клиента в каждой строке. Вместо этого в таблице фактов и таблице измерений может совместно использоваться идентификатор клиента. Запрос может объединить две таблицы, чтобы связать профиль и транзакции клиента.
Таблицы интеграции служат для интеграции или промежуточного размещения данных. Например, вы можете загружать данные в промежуточную таблицу, выполнять преобразования данных в режиме промежуточного размещения, а затем вставлять их в рабочую таблицу.
Таблица хранит данные в OneLake в составе хранилища. Таблица и данные сохраняются независимо от того, открыт ли сеанс.
Таблицы в хранилище
Чтобы отобразить организацию таблиц, можно использовать fact
dim
int
или в качестве префиксов в именах таблиц. В следующей таблице показаны некоторые имена схем и таблиц для примера хранилища данных WideWorldImportersDW .
Имя исходной таблицы WideWorldImportersDW | Тип таблицы | Имя таблицы хранилища данных |
---|---|---|
Город | Измерение | wwi.DimCity |
Порядок | Факт | wwi.FactOrder |
- Имена таблиц не могут содержать
/
или\
заканчиваться ими.
.
Создание таблицы
Для хранилища можно создать таблицу в виде новой пустой таблицы. Вы также можете создать и заполнить таблицу результатами инструкции Select. Ниже приведены команды T-SQL для создания таблицы.
Инструкция T-SQL | Описание |
---|---|
СОЗДАТЬ ТАБЛИЦУ | Создает пустую таблицу, определив все столбцы и параметры таблицы. |
CREATE TABLE AS SELECT | Задает новую таблицу с результатами инструкции Select. Столбцы и типы данных таблицы основаны на результатах инструкции Select. Чтобы импортировать данные, эта инструкция может выбрать данные из внешней таблицы. |
В этом примере создается таблица с двумя столбцами:
CREATE TABLE MyTable (col1 int, col2 int );
Имена схем
Хранилище поддерживает создание пользовательских схем. Как и в SQL Server, схемы — это хороший способ группировки объектов, которые используются аналогичным образом. В следующем коде создается пользовательская схема с именем wwi
.
- Имена схем чувствительны к регистру.
- Имена схем не могут содержать
/
или\
заканчиваться ими.
.
CREATE SCHEMA wwi;
Типы данных
Microsoft Fabric поддерживает наиболее часто используемые типы данных T-SQL.
- Дополнительные сведения о типах данных см. в разделе "Типы данных" в Microsoft Fabric.
- При создании таблицы в хранилище просмотрите ссылку на типы данных в CREATE TABLE (Transact-SQL).
- Руководство по созданию таблицы в хранилище см. в разделе "Создание таблиц".
Параметры сортировки
Latin1_General_100_BIN2_UTF8
— это параметры сортировки по умолчанию для обеих таблиц и метаданных.
Вы можете создать хранилище с сортировкой Latin1_General_100_CI_AS_KS_WS_SC_UTF8
, не учитывающей регистр (CI). Дополнительные сведения см. в разделе "Практическое руководство. Создание хранилища с нечувствительной сортировкой регистра (CI).
Поддерживаемые параметры сортировки в API:
-
Latin1_General_100_BIN2_UTF8
(по умолчанию) Latin1_General_100_CI_AS_KS_WS_SC_UTF8
После установки параметров сортировки во время создания базы данных все последующие объекты (таблицы, столбцы и т. д.) наследуют этот параметр сортировки по умолчанию.
Статистика
Оптимизатор запросов использует статистику уровня столбца при создании плана выполнения запроса. Чтобы повысить производительность запросов, важно получить статистику по отдельным столбцам, особенно столбцам, используемым в объединениях запросов. Хранилище поддерживает автоматическое создание статистики.
Обновление статистики выполняется вручную. Обновите статистику после добавления или изменения значительного числа строк. Например, есть смысл обновить статистику после загрузки. Дополнительные сведения см. в статье Managing statistics on tables in SQL Data Warehouse (Управление статистикой таблиц в хранилище данных SQL).
Первичный ключ, внешний ключ и уникальный ключ
Для хранилища ограничения PRIMARY KEY и UNIQUE поддерживаются только при использовании НЕКЛАСТЕРED и NOT ENFORCED.
ВНЕШНИЙ КЛЮЧ поддерживается только в том случае, если используется NOT ENFORCED.
- Для синтаксиса проверьте ALTER TABLE.
- Дополнительные сведения см. в разделе "Первичные ключи", "Внешние ключи" и уникальные ключи в хранилище в Microsoft Fabric.
таблицы #temp в хранилище данных Fabric
Временные таблицы с областью действия сеанса (#temp) можно создать в хранилище данных Fabric. Эти таблицы существуют только в сеансе, в котором они создаются и продолжаются в течение этого сеанса. Они не видны другим пользователям или сеансам и автоматически удаляются из системы после завершения сеанса или удаления таблицы #temp. Эти таблицы доступны всем пользователям, не требуя разрешения на уровне артефакта.
На основе конкретных вариантов использования можно создать два типа таблиц #temp .
Нераспределенная таблица #temp (mdf-backed) — это тип по умолчанию. Синтаксис создания и использования нераспространяемых таблиц #temp в хранилище данных Fabric аналогичен пользовательским таблицам, но необходимо префиксировать имя временной таблицы с помощью #
CREATE TABLE #table_name (
Col1 data_type1,
Col2 data_type2
);
Распределенные временные таблицы (с поддержкой Parquet) можно создать с помощью ключевого слова распределения 'равномерное распределение'.
CREATE TABLE #table_name (
Col1 data_type1,
Col2 data_type2
) WITH (DISTRIBUTION=ROUND_ROBIN);
data_type1
и data_type2
являются заполнителями поддерживаемых типов данных в хранилище. Дополнительные сведения см. в разделе "Типы данных" в Microsoft Fabric.
Использование распределенных #temp таблиц рекомендуется, так как оно полностью соответствует таблицам пользователей хранилища с точки зрения неограниченного хранилища, поддерживаемых типов данных, операций, которые мы можем выполнять с ними. Синтаксис для остальных операций похож на пользовательские таблицы в хранилище данных Fabric с префиксом "#", добавленным в имя таблицы, чтобы указать, что таблица является #temp таблицей с областью сеанса.
Замечание
Глобальные временные таблицы в настоящее время не поддерживаются.
Согласование исходных данных с хранилищем данных
Таблицы хранилища заполняются путем загрузки данных из другого источника данных. Для успешной загрузки число и типы данных столбцов исходных данных должны совпадать с определением таблицы в хранилище данных.
Если данные поступают из нескольких хранилищ данных, вы можете перенести их в хранилище данных и сохранить их в таблице интеграции. После ввода данных в таблицу интеграции можно использовать возможности хранилища данных для реализации операций преобразования. После подготовки данных их можно вставить в рабочие таблицы.
Ограничения
Хранилище поддерживает множество функций таблицы, предлагаемых другими базами данных, но не все.
В следующем списке показаны некоторые функции таблицы, которые сейчас не поддерживаются.
- 1024 максимальных столбцов на таблицу
- Вычисляемые столбцы
- Индексированные представления
- Секционированные таблицы
- Последовательность
- Разреженные столбцы
- Суррогатные ключи для последовательностей чисел с столбцами Identity
- Синонимы
- Триггеры
- Уникальные индексы
- Определяемые пользователем типы
- Внешние таблицы
Внимание
Существуют ограничения при добавлении ограничений таблицы или столбцов при использовании системы управления версиями с хранилищем.