Перейти к основному содержимому Перейти к дополнительному содержимому

Архитектура базы данных в облачном хранилище данных

Qlik Talend Data Integration позволяет создавать, управлять и контролировать конвейер с аналитическими данными и поставлять данные потребителям на любом этапе конвейера. Если генерирование данных в облачном хранилище данных производится с помощью Qlik Talend Data Integration, создаются таблицы хранения, таблицы изменений и виды.

Благодаря интуитивно понятному интерфейсу и инструкциям системы, пользователь может строить, моделировать и выполнять конвейеры данных. Автоматически создавайте схемы для хранилищ оперативных (ODS) и исторических данных (HDS), не прибегая к ручному написанию кода.

Архитектура для конвейера данных Qlik Talend Data Integration с использованием Qlik Data Gateway — Data Movement и CDC

  • Промежуточное хранение

    Задача промежуточного хранения в Qlik Talend Data Integration управляет непрерывным потоком данных из источников данных в зону промежуточного хранения. В этом примере диаграмма описывает использование Qlik Data Gateway — Data Movement для доступа к источникам данных, в которых обновление данных производится через CDC. Можно также использовать подключения к источнику Qlik Cloud для выполнения полной загрузки, которую можно перезагружать регулярно по расписанию.

    Для получения информации о том, когда необходимо использовать Data Movement Gateway, см. раздел Когда требуется Data Movement Gateway?

    Примечание к информацииТаблицы в зоне промежуточного хранения генерируются задачами хранения данных Qlik Talend Data Integration для внутреннего использования. Не используйте таблицы промежуточного хранения в нижестоящих процессах.
  • Хранилище

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

  • Внешние виды

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

Использование видов в реальном времени

Виды в реальном времени позволяют получать доступ к текущим (ODS) и исторический данным (HDS). В видах этого типа представлены таблицы с изменениям, которые еще не были применены к текущим или предшествующим таблицам. Это позволяет просматривать измененные данные с меньшей задержкой без необходимости частого применения данных. Меняя задержку слияния, можно снизить стоимость обработки и упростить требования к обработке на целевой платформе.

Это позволяет загружать полностью вычислительный уровень только некоторое время.

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

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

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

Схемы

Артефакты генерируются во внутренних схемах, а также в схемах задач данных.

  • Внутренняя схема содержит таблицы с физическими данными.

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

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

Только внутренние схемы проверяются на предмет конфликтов имен. Остальные схемы необходимо самостоятельно проверять, чтобы исключить конфликты имен таблицы. Рекомендуется использовать для внутренней схемы то же имя, что для схемы задачи данных с добавлением _internal. Это эффективный способ обеспечения уникальности каждой комбинации схемы и префикса.

Примечание к информацииВсеми таблицами и видами управляет Qlik Talend Data Integration. Не используйте другие инструменты для изменения данных.

Таблицы

Во внутренних схемах создаются следующие таблицы.

  • Текущая таблица (ODS)

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

  • Предшествующая таблица (HDS)

    В этой таблице содержится второй тип данных — исторические данные. Таблица генерируется, если в настройках задачи обработки данных выбран параметр Журнал (History).

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

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

  • Таблица изменений

    В этой таблице собраны все изменения, которые еще не были применены к текущей таблице. Она генерируется только в режиме промежуточного хранения Полная нагрузка и CDC (Full load and CDC).

Виды

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

  • Текущий вид

  • Вид в реальном времени

  • Вид с изменениями

  • Исторический вид

  • Исторический вид в реальном времени

Текущий вид

Создание имени: <EXTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>_current

В структуру таблицы добавляются следующие поля заголовков.

Поля заголовков таблицы
Поле Тип Описание
hdr__key_hash varbinary(20)

Хэш всех первичных ключей записей. Формат хэша — SHA1. Столбцы разделяются символом backspace.

Этот столбец не генерируется в задачах Киоск данных.

hdr__key_id int64

Последовательность увеличивается на запись.

Этот столбец генерируется только в задачах Киоск данных.

hdr__from_timestamp метка времени

Метка времени в формате UTC

  • Для данных, полученных из полной загрузки, это будет время начала полной загрузки.

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

hdr__operation string(1)

Последняя операция по этой записи.

  • D — удалена из таблицы изменений.

  • U — обновлена из таблицы изменений.

  • I — вставлена из таблицы изменений.

  • L — вставлена задачей полной загрузки.

  • d — удалена из сравнения и применения.

  • u — обновлена из сравнения и применения

  • i — вставлена из сравнения и применения

hdr__inserted_timestamp метка времени Временная метка (UTC) первого добавления ключа. Если используется полная загрузка, начальное время полной нагрузки.
hdr__modified_timestamp метка времени Временная метка (UTC) последнего обновления.

Вид в реальном времени

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

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

Создание имени: <EXTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>< суффикс для видов в реальном времени>

Поля заголовков таблицы
Поле Тип Описание
hdr__key_hash varbinary(20)

Хэш всех первичных ключей записей. Формат хэша — SHA1. Столбцы разделяются символом backspace.

Этот столбец не генерируется в задачах Киоск данных.

hdr__key_id int64

Последовательность увеличивается на запись.

Этот столбец генерируется только в задачах Киоск данных.

hdr__from_timestamp метка времени

Метка времени в формате UTC

  • Для данных, полученных из полной загрузки, это будет время начала полной загрузки.

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

hdr__operation string(1)

Последняя операция по этой записи.

  • D — удалена из таблицы изменений.

  • U — обновлена из таблицы изменений.

  • I — вставлена из таблицы изменений.

  • L — вставлена задачей полной загрузки.

  • d — удалена из сравнения и применения.

  • u — обновлена из сравнения и применения

  • i — вставлена из сравнения и применения

hdr__inserted_timestamp метка времени Временная метка (UTC) первого добавления ключа. Если используется полная загрузка, начальное время полной нагрузки.
hdr__modified_timestamp метка времени Временная метка UTC последнего обновления.
hdr__store varchar(10)

Указывает, где находится запись.

  • CURRENT — запись находится в текущей физической таблице.

  • CHANGES — запись находится в таблице изменений.

Вид с изменениями

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

Создание имени: <EXTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>_changes

В структуру таблицы добавляются следующие поля заголовков.

Поля заголовков таблицы изменений
Поле Тип Описание
hdr__change_identifier string(50)

Идентификатор изменения представляет собой строку, которая состоит из двух частей:

  • Временная метка начала выполнения серии (в секундах) после 1/1/1970 (строка из 10 цифр)

  • Последовательность изменения из шлюза репликации (35 знаков)

hdr__from_timestamp метка времени

Метка времени в формате UTC

  • Для данных, полученных из полной загрузки, это будет время начала полной загрузки.

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

hdr__to_timestamp метка времени

Метка времени в формате UTC

  • Для данных, полученных из полной загрузки, это будет время начала полной загрузки.

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

hdr__operation string(1)

Последняя операция по этой записи.

  • D — удалена из таблицы изменений.

  • U — обновлена из таблицы изменений.

  • I — вставлена из таблицы изменений.

  • L — вставлена задачей полной загрузки.

  • d — удалена из сравнения и применения.

  • u — обновлена из сравнения и применения

  • i — вставлена из сравнения и применения

hdr__timestamp метка времени

Метка времени в формате UTC.

hdr__key_hash binary(20)

Хэш всех первичных ключей записей.

Этот столбец не генерируется в задачах Киоск данных.

hdr__key_id int64

Последовательность увеличивается на запись.

Этот столбец генерируется только в задачах Киоск данных.

Исторический вид

Исторический вид генерируется в схеме ресурсов данных по каждой выбранной исходной таблице, если в настройках задачи данных выбрано Журнал (History). Добавляются следующие поля заголовков.

Создание имени: <EXTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>< Suffix for history views>

Поля заголовков исторического вида
Поле Тип Описание
hdr__key_hash binary(20)

Хэш всех первичных ключей записей.

Этот столбец не генерируется в задачах Киоск данных.

hdr__key_id int64

Последовательность увеличивается на запись.

Этот столбец генерируется только в задачах Киоск данных.

hdr__store varchar(10)

Указывает, где находится запись.

  • CURRENT — запись находится в текущей физической таблице.

  • PRIORS — запись находится в предыдущей таблице с историческими данными.

hdr__operation string(1)

Последняя операция по этой записи.

  • D — удалена из таблицы изменений.

  • U — обновлена из таблицы изменений.

  • I — вставлена из таблицы изменений.

  • L — вставлена задачей полной загрузки.

  • d — удалена из сравнения и применения.

  • u — обновлена из сравнения и применения

  • i — вставлена из сравнения и применения

hdr__deleted bit

Указывает, является ли запись обратимо удаленной, в зависимости от того, имеет ли hdr__operation значение D или d.

hdr__was _current_from_timestamp метка времени

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

hdr__was _current_to_timestamp метка времени

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

Исторический вид в реальном времени

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

Создание имен: <EXTERNAL_SCHEMA>.[<PREFIX>]<TABLE_NAME>< Suffix for live history views>

Поля заголовков исторического вида в реальном времени
Поле Тип Описание
hdr__key_hash binary(20)

Хэш всех первичных ключей записей.

Этот столбец не генерируется в задачах Киоск данных.

hdr__key_id int64

Последовательность увеличивается на запись.

Этот столбец генерируется только в задачах Киоск данных.

hdr__store varchar(10)

Указывает, где находится запись.

  • CURRENT — запись находится в текущей физической таблице.

  • PRIORS — запись находится в предыдущей таблице с историческими данными.

  • CHANGES — запись находится в таблице изменений.

hdr__operation string(1)

Последняя операция по этой записи.

  • D — удалена из таблицы изменений.

  • U — обновлена из таблицы изменений.

  • I — вставлена из таблицы изменений.

  • L — вставлена задачей полной загрузки.

  • d — удалена из сравнения и применения.

  • u — обновлена из сравнения и применения

  • i — вставлена из сравнения и применения

hdr__deleted bit

Указывает, является ли запись обратимо удаленной, в зависимости от того, имеет ли hdr__operation значение D или d.

Помогла ли вам эта страница?

Если вы обнаружили какую-либо проблему на этой странице и с ее содержанием — будь то опечатка, пропущенный шаг или техническая ошибка, сообщите нам об этом, чтобы мы смогли ее исправить!