Early Access: The content on this website is provided for informational purposes only in connection with pre-General Availability Qlik Products.
All content is subject to change and is provided without warranty.
Перейти к основному содержимому Перейти к дополнительному содержимому

Amazon S3  

Amazon Simple Storage Service (Amazon S3) ― это служба хранения объектов, которая обеспечивает лучшую в отрасли масштабируемость, доступность данных, безопасность и производительность.

Подготовка к проверке подлинности

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

Примечание к информацииУбедитесь, что используемая учетная запись имеет доступ для чтения к таблицам, которые требуется получить.

Для подключения к Amazon S3 необходимы разрешения в AWS Identity Access Management (IAM), которые позволяют создавать политики, создавать роли и прикреплять политики к ролям. Это необходимо для того, чтобы предоставить авторизацию блоку S3:

Создание политики IAM

Политика IAM ― это язык политики доступа на основе JSON для управления правами доступа к ресурсам блока.

Разрешения Amazon S3
Имя разрешения Операция Описание
s3:GetObject GET Object

Позволяет извлекать объекты из Amazon S3.

s3:GetObjectHEAD Object

Позволяет извлекать метаданные из объекта, не возвращая сам объект.

s3:ListBucket GET Bucket (список объектов)

Позволяет вернуть некоторые или все (до 1 000) объекты в блоке.

s3:ListBucket HEAD Bucket

Используется для определения того, существует ли блок и разрешен ли к нему доступ.

Чтобы создать политику IAM, выполните следующие действия.

  1. В AWS перейдите к службе IAM: щелкните меню Службы и введите IAM.
  2. Щелкните результат IAM, как только он появится в списке.
  3. Щелкните Policies (Политики) в меню в левой части страницы.
  4. Нажмите Create Policy (Создать политику).
  5. На странице Create Policy (Создание политики) перейдите на вкладку JSON.
  6. Выделите все содержимое текстового поля и удалите его.
  7. В текстовое поле вставьте следующий JSON и замените MyBucketName на имя блока:
    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "",
                "Effect": "Allow",
                "Action": [
                "s3:GetObject",
                "s3:ListBucket"
                ],
                "Resource": [
                "arn:aws:s3:::MyBucketName",
                "arn:aws:s3:::MyBucketName/*"
                ]
            }
        ]
    }
  8. Нажмите Review policy (Обзор политики).
  9. На странице Review Policy (Просмотр политики) дайте политике имя. Например, элемент qlik_amazon_s3.
  10. Нажмите Create Policy (Создать политику).

Создание роли IAM

Примечание к информации

Чтобы выполнить этот шаг, необходимы следующие разрешения AWS IAM: CreateRole и AttachRolePolicy. Для получения дополнительной информации см. документацию Amazon.

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

  1. В AWS перейдите на страницу IAM Roles (Роли IAM).
  2. Нажмите Create Role (Создать роль).
  3. На странице Create Role (Создание роли):
    1. В разделе Select type of trusted entity (Выбор типа доверенного лица) выберите вариант Another AWS account (Другая учетная запись AWS).
    2. В поле Account ID (Идентификатор учетной записи) вставьте 338144066592.
    3. В разделе Параметры (Опции) установите флажок Require external ID (Требовать внешний идентификатор).
    4. В появившемся поле External ID (Внешний идентификатор) вставьте qlik_connection_<tenant-id> и замените <tenant-id> на идентификатор клиента.

      Чтобы найти идентификатор клиента, см. раздел Поиск информации о клиенте.

    5. Нажмите кнопку Next: Permissions (Далее: Разрешения).
  4. На странице Attach permissions (Прикрепить разрешения):
    1. Найдите политику, созданную при выполнении шага Создание политики IAM.
    2. Установите флажок рядом с политикой в таблице.
    3. Нажмите кнопку Next: Tags (Далее: Теги).
  5. Если требуется ввести какие-либо теги, сделайте это на странице Add tags Добавление тегов). В противном случае нажмите Далее: Обзор.
  6. На странице Review (Обзор):
    1. В поле Role name (Имя роли) вставьте qlik_s3_<tenant-id> и замените <tenant-id> на идентификатор клиента.

      Чтобы найти идентификатор клиента, см. раздел Поиск информации о клиенте.

    2. В поле Role description (Описание роли) введите описание ссылки. Например: Qlik role for Amazon S3 integration.
    3. Нажмите Create Role (Создать роль).

Определение шаблона поиска

Поле Search Pattern (Шаблон поиска) определяет критерии поиска, которые Qlik должен использовать для выбора и репликации файлов. Это поле принимает регулярные выражения, с помощью которых можно включить один или несколько файлов.

При создании шаблона поиска помните следующее:

  • При включении нескольких файлов для одной таблицы, каждый файл должен иметь одинаковые значения строк заголовка.
  • Специальные символы, такие как точки (.), имеют особое значение в регулярных выражениях. Для точного соответствия их необходимо маскировать. Например: .\
  • В Qlik, Python используется для регулярных выражений, которые могут отличаться по синтаксису от других разновидностей. Попробуйте использовать PyRegex для проверки выражений перед сохранением интеграции.
  • Шаблоны поиска должны учитывать, как обновляются данные в файлах. Рассмотрим эти примеры:
Сценарий Один файл, периодически обновляемый Несколько файлов, создаваемых ежедневно
Как создаются обновления Один JSONL-файл периодически обновляется новыми и обновленными данными о клиентах. Каждый день создается новый CSV-файл, содержащий новые и обновленные данные о клиентах. Старые файлы никогда не обновляются после создания.
Имя файла customers.jsonl customers-[STRING].csv, где [STRING] ― уникальная случайная строка.
Шаблон поиска

Поскольку файл всегда будет только один, можно ввести точное имя файла в блоке S3:

customers\.jsonl

Чтобы обеспечить идентификацию новых и обновленных файлов, необходимо ввести шаблон поиска, который будет соответствовать всем файлам, начинающимся с customers, независимо от строки в имени файла:

(customers-).*\.csv
Совпадения customer.jsonl, точно
  • customers-reQDSwNG6U.csv
  • customers-xaPTXfN4tD.csv
  • customers-MBJMhCbNCp.csv
  • и т. д.

Требования к файлу

Заголовок первой строки (только для файлов CSV)
  • Каждый файл должен иметь заголовок первой строки, содержащий имена столбцов. Первая строка в любом файле считается строкой заголовка, и в ней эти значения будут представлены в виде столбцов, доступных для выбора.
  • Файлы с одинаковыми значениями заголовков в первой строке, если в таблицу включено несколько файлов. Интеграция Amazon S3 позволяет сопоставлять несколько файлов с одной целевой таблицей. Значения строк заголовка используются для определения схемы таблицы. Для достижения наилучших результатов каждый файл должен иметь одинаковые значения строк заголовка.

    Это отличается от настройки нескольких таблиц. Для ознакомления с примерами см. раздел Определение шаблона поиска.

Типы файлов
  • CSV (.csv)
  • Текст (.txt)
  • JSONL (.jsonl)
Типы сжатия

Эти файлы должны быть правильно сжаты, иначе при извлечении возникнут ошибки.

  • Сжатые файлы gzip (.gz)
Разделители (только для файлов CSV)
  • Запятая (,)
  • Табуляция (/t)
  • Прямая черта (|)
  • Точка с запятой (;)
Кодирование символов

UTF-8

Создание подключения

Для получения дополнительной информации см. раздел Подключение к приложениям SaaS.

  1. Заполните необходимые свойства подключения.
  2. Заполните поле Имя подключения.

  3. Установите флажок Открыть метаданные подключения, чтобы определить метаданные для подключения, когда оно будет создано.

  4. Щелкните Создать.

Параметры подключения
Параметр Описание
Шлюз данных

Выберите шлюз Data Movement gateway, если этого требует текущий сценарий использования.

Примечание к информации

Это поле недоступно при использовании подписки Qlik Talend Cloud Starter, так как она не поддерживает Data Movement gateway. Если используется другой уровень подписки или не требуется использовать Data Movement gateway, выберите Нет.

Для получения информации о преимуществах Data Movement gateway и о сценариях, требующих его использования, см. раздел Qlik Data Gateway — Data Movement.

Дата начала

Введите дату в формате MM/DD/YYYY, начиная с которой данные должны реплицироваться из источника в цель.

Блок S3 Имя блока S3.
Идентификатор учетной записи AWS

Внешний идентификатор в AWS. См. раздел Подготовка к проверке подлинности.

Шаблон: qlik_connection<tenant-id>.

Шаблон поиска Введите файлы, которые требуется включить в таблицу. Можно ввести одно имя файла или регулярное выражение.

Пример: users\*.csvproducts\*.jsonl.

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

Пример: csv-exports-folder или employee_jsonl_exports.

Конфигурация таблицы

Настройте таблицу, указав файлы, которые требуется включить.

Можно настроить несколько таблиц.

Имя таблицы Имя таблицы.

У каждой цели есть свои правила именования таблиц. Например, имена таблиц Amazon Redshift не могут превышать 127 символов.

Первичный ключ Введите первичный ключ для идентификации уникальных строк или записей. При вводе более одного ключа используйте запятую для разделения значений.
  • Для файлов CSV введите поля заголовка или названия столбцов.
  • Для файлов JSONL введите имена атрибутов или ключи объектов.

Пример: id, name.

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

Пример: created_at, modified_at.

Разделитель Выберите разделитель в раскрывающемся списке.

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

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