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

Пошаговый пример — инкрементальная загрузка данных с помощью команды Store

НА ЭТОЙ СТРАНИЦЕ

Пошаговый пример — инкрементальная загрузка данных с помощью команды Store

В данном пошаговом примере показан порядок инкрементальной загрузки данных с помощью команды Store в Qlik Sense SaaS.

Команду Store можно использовать для создания файла QVD и загрузки этого файла в MyDataFiles. В качестве данных, к примеру, могут использоваться записи данных, доступные только в базе данных в течение ограниченного периода времени, например, нескольких дней до текущей даты. Можно загрузить данные за прошедшие периоды из созданного файла QVD и объединить их с последними доступными данными из исходной базы данных. Затем последние данные можно повторно вставить в файл QVD. В данном примере описан этот вариант использования.

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

В данном примере выполняется подключение с помощью Standard Search Twitter API, а затем поиск по определенному текстовому условию. Поиск выполняется по твитам за последние 7 дней. Это ограничение установлено Twitter. Таким образом, в данном примере Standard Search Twitter API ограничивает объем данных, загружаемых из базы данных Twitter.

Затем с помощью команды Store таблица данных Twitter сохраняется в файл QVD, который загружается в DataFiles. Выполняются запросы новых данных из Twitter, которые загружаются в приложение вместе с данными из файла QVD. Данные загружаются обратно в файл QVD. Таким образом, происходит инкрементальная загрузка данных в файл QVD.

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

Для получения подробных сведений о представленных в данном примере задачах и основных понятиях см.:

Предварительные требования

Задачи

Данный пример включает следующие задачи.

  1. Создание приложения и подключение к Twitter
  2. Выбор данных из Twitter
  3. Добавление операторов скрипта для создания и инкрементальной загрузки данных Twitter в файл QVD
  4. Выполнение скрипта
  5. Настройка графика перезагрузки данных

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

  1. Создайте приложение в рабочей области облачного хаба.
  2. Откройте редактор скриптов. Параметр открытия редактора скриптов отображается в ходе создания нового приложения. Также доступ к редактору скриптов можно получить из редактора загрузки данных.
  3. В разделе Подключение к данным в меню справа щелкните Создать новое подключение. Откроется окно Создать новое подключение.
  4. Выберите Twitter в раскрывающемся списке Источники данных. Откроется окно проверки подлинности.
  5. Щелкните Authenticate (Проверка подлинности). Откроется окно проверки подлинности Twitter API. Возможно, потребуется включить отображение всплывающих окон в браузере.
  6. Чтобы разрешить веб-коннекторам Qlik использовать вашу учетную запись Twitter , укажите учетные данные Twitter .
  7. Щелкните Sign in (Войти). Отобразится окно Twitter с кодом доступа. Скопируйте код.
  8. Вставьте код в окно проверки подлинности Qlik Sense и щелкните Проверить. Выполнена проверка подлинности подключения.
  9. Щелкните Проверка подключения для подтверждения созданного подключения.
  10. Присвойте подключению имя и щелкните Создать. Подключение создано. Затем откроется редактор загрузки данных. Подключение добавлено в список Подключение к данным в меню справа.

Выбор данных из Twitter

После создания подключения можно выбрать данные для загрузки из Twitter.

  1. С помощью редактора скриптов добавьте в скрипт новую вкладку.
  2. Присвойте вкладке имя. Вкладке присвоено имя New Data (Twitter). Поместите курсор в окно редактора скриптов.
  3. В окне редактора загрузки данных щелкните Выбрать данные для подключения Twitter.

    Откроется окно Выбрать данные для загрузки.

  4. Выберите таблицу с именем Search, затем выберите условие поиска. В данном примере мы используем Kubernetes.

     

    Окно загрузки данных с выбранной таблицей Search

    Data load window with Search table selected.

  5. Щелкните Предварительный просмотр данных. Отобразятся поля данных для таблицы Search. Выберите поля, которые необходимо загрузить. В нашем примере выбраны следующие поля: id, created_at, text, source и user_name.

     

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

    Data load window showing a preview of data.

  6. Щелкните команду Вставить скрипт. На вкладку Новые данные (Twitter) редактора скриптов в окне редактора загрузки данных будет добавлен сегмент скрипта.

  7. Присвойте таблице имя, добавив строку над оператором Load. В нашем примере используется имя TwitterSearch.

     

    Вкладка должна выглядеть аналогично следующему снимку (без учета комментариев):

     

    Новая вкладка данных (Twitter) в редакторе загрузки данных

    New data (Twitter) tab in the data load editor.

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

     

    Окно хода выполнения загрузки данных

    Data load progress window.

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

Добавление операторов скрипта для создания и инкрементальной загрузки данных Twitter в файл QVD

После настройки приложения для загрузки данных из Twitter эти данные можно сохранять в файл QVD. Twitter Standard API поддерживает извлечение данных только за предыдущие 7 дней, поэтому после загрузки данных QVD будет содержать данные за этот период.

  1. С помощью редактора скриптов добавьте в скрипт новую вкладку.
  2. Присвойте вкладке имя. Вкладке присвоено имя Historical data (QVD).
  3. Добавьте на вкладку следующие операторы скрипта. Комментарии (//) приведены в справочных целях. При запуске скрипта они не будут выполнены.

     

    Примечание: Если копирование и вставка выполняются из Firefox, рекомендуется сначала вставить код в другой документ, например Word, чтобы разрывы строки надлежащим образом отобразились в редакторе скриптов.

     

    //Method to test QVD file size. If the file does not exist returns <null> let size = FileSize('lib://DataFiles/AllTweets.qvd'); //Set the historical data pull range to a variable LET vRollingDate = Today()-90; //If the file exists and contains some data then the if statement is executed; //if the file does not exist, i.e. is null, then the if statement will be skipped if not isnull(size) then TwitterSearch: LOAD * FROM ['lib://DataFiles/AllTweets.qvd'](qvd) //Twitter ids are unique; ensures only new tweets added WHERE NOT EXISTS (Search.id) //Load last 90 days of data from the qvd file; //QVD file provides historical data beyond Twitter Standard API limit of 7 days. //Also ensures that stored incremented qvd file does not grow too large in size. AND FLOOR (Date([Search.created_at]))>=$(vRollingDate); end if

     

    Вкладка должна выглядеть аналогично следующему снимку:

     

    Вкладка данных за прошедшие периоды (QVD) в редакторе загрузки данных

    Historical Data (QVD) in the data load editor.

  4. Добавьте в скрипт другую вкладку.
  5. Присвойте вкладке имя. Вкладке присвоено имя Store to QVD.
  6. Добавьте на вкладку следующие операторы скрипта.

     

    //Regardless of the QVD file existing previously or not, updated data gets stored into the QVD. STORE TwitterSearch INTO [lib://MyDataFiles/AllTweets.qvd](qvd);

     

    Вкладка должна выглядеть аналогично следующему снимку:

     

    Сохранение на вкладке QVD в редакторе загрузки данных

    Store to QVD tab in the data load editor.

Выполнение скрипта

При первом запуске скрипта выполняется загрузка данных из Twitter, и файл QVD с именем AllTweets.qvd создается из данных Twitter. Файл QVD добавлен в пространство DataFiles. При повторном запуске скрипта данные загружаются из Twitter и файла QVD. Затем выполняется обновление файла QVD данными, загруженными из файла QVD.

  1. Щелкните команду Загрузить данные. При первом запуске скрипта выполняется загрузка данных из Twitter, и с использованием данных создается файл AllTweets QVD. Файл QVD добавлен в пространство DataFiles. Чтобы его просмотреть, щелкните Select data.

     

    При первом запуске скрипта должно отобразиться сообщение примерно следующего содержания:

     

    Окно хода выполнения загрузки данных

    Data load progress window.

     

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

     

    Окно хода выполнения загрузки данных

    Data load progress window.

  2. Создавайте диаграммы и таблицы в приложении при помощи данных.

Настройка графика перезагрузки данных

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