Zu Hauptinhalt springen

Schrittweise Anleitung: Inkrementelles Datenladen mit dem Store-Befehl

AUF DIESER SEITE

Schrittweise Anleitung: Inkrementelles Datenladen mit dem Store-Befehl

Dieses Beispiel mit einer schrittweisen Anleitung zeigt, wie Daten mit dem Befehl Store in Qlik Sense SaaS inkrementell geladen werden können.

Sie können Store verwenden, um eine QVD-Datei zu erstellen und diese Datei in DataFiles zu laden. Bei den Daten kann es sich beispielsweise um Datensätze handeln, die nur für eine begrenzte Zeit in einer Datenbank verfügbar sind, z. B. eine bestimmte Anzahl Tage vor dem aktuellen Datum. Die Verlaufsdaten können aus einer QVD-Datei geladen werden, die Sie erstellen, und dann mit den neuesten verfügbaren Daten aus einer Quelldatenbank kombiniert werden. Die neuesten Daten können dann wieder in die QVD-Datei eingefügt werden. Dieser Anwendungsfall wird im folgenden Beispiel gezeigt.

Sie können Store auch verwenden, um Daten aus einer Verbindung zu speichern, die sie nur einmalig speichern möchten, und dann neue Daten aus einer Datenbank hinzuzufügen. Dadurch können die anschließenden Datenladezeiten sowie die Last für die Datenbankserver, das Netzwerk usw. verringert werden. Dieser Anwendungsfall wird im folgenden Beispiel nicht berücksichtigt. Generell sind die Schritte aber die gleichen.

In diesem Beispiel wird eine Verbindung anhand der Standard Search Twitter API hergestellt und nach einem bestimmten Textbegriff gesucht. Die Suche wird mit Tweets der letzten 7 Tage verglichen, dem von Twitter vorgegebenen Zeitlimit. In diesem Beispiel schränkt also die Standard Search Twitter API die Datenmenge ein, die aus der Twitter-Datenbank geladen wird.

Anhand des Befehls Store wird dann die Twitter-Datentabelle in einer QVD-Datei gespeichert und diese Datei in DataFiles geladen. Anschließend werden Anforderungen für die neuesten Daten aus Twitter gestellt und die Daten zusammen mit den Daten aus der QVD-Datei in die App geladen. Die Daten werden zurück in die QVD-Datei geladen, inkrementieren also die QVD-Datei.

Anschließend wird die App veröffentlicht und die veröffentlichte App mit den neuesten Daten geladen.

Weitere Informationen über die Aufgaben und Konzepte in diesem Beispiel finden Sie unter:

Voraussetzungen

  • Cloud-Hub-Abonnement (Qlik Sense SaaS).
  • Twitter -Konto für die Verwendung der Twitter API.
  • Sie sollten wissen, wie eine App in einem Cloud-Hub erstellt wird. Weitere Informationen finden Sie unter Erstellen von Apps und Hinzufügen von Daten.
  • Sie sollten wissen, wie der Dateneditor verwendet wird. Weitere Informationen finden Sie unter Verwenden des Dateneditors.

Aufgaben

Die folgenden Aufgaben sind zur Durchführung dieses Beispiels erforderlich:

  1. Erstellen einer App und Verbinden mit Twitter
  2. Wählen Sie Daten aus Twitter
  3. Hinzufügen von Skript-Anweisungen zum Erstellen und Inkrementieren der QVD-Datei anhand von Twitter-Daten
  4. Skript ausführen
  5. Festlegen des Plans für das erneute Laden von Daten

Erstellen einer App und Verbinden mit Twitter

  1. Erstellen Sie eine App in Ihrem Cloud-Hub-Arbeitsbereich.
  2. Öffnen Sie den Skript-Editor. Die Option zum Öffnen des Skript-Editors wird angezeigt, wenn Sie eine neue App erstellen. Sie können auch über den Dateneditor auf den Skript-Editor zugreifen.
  3. Klicken Sie in Datenverbindungen im rechten Menü auf Neue Verbindung erstellen. Das Fenster Neue Verbindung erstellen wird geöffnet.
  4. Wählen Sie in der Dropdown-Liste Datenquellen die Option Twitter aus. Ein Authentifizierungsfenster wird geöffnet.
  5. Klicken Sie auf Authentifizieren. Ein Twitter API-Authentifizierungsfenster wird geöffnet. Möglicherweise müssen Sie in Ihrem Browser Popups aktivieren.
  6. Um die Qlik-Webkonnektoren zur Verwendung Ihres Twitter -Kontos zu autorisieren, geben Sie Ihre Twitter -Anmeldeinformationen ein.
  7. Klicken Sie auf Anmelden. Ein Twitter -Fenster wird geöffnet und zeigt einen Zugriffscode an. Kopieren Sie den Code.
  8. Fügen Sie im Qlik Sense Authentifizierungsfenster den Code ein und klicken Sie dann auf Überprüfen. Die Verbindung wird authentifiziert.
  9. Klicken Sie auf Verbindung testen, um zu bestätigen, dass die Verbindung erstellt wurde.
  10. Benennen Sie die Verbindung und klicken Sie auf Erstellen. Die Verbindung wird erstellt, und der Dateneditor wird geöffnet. Die Verbindung wird zur Liste Ihrer Datenverbindungen im rechten Menü hinzugefügt.

Wählen Sie Daten aus Twitter

Nachdem Sie die Verbindung erstellt haben, können Sie die Daten auswählen, die Sie aus Twitter laden möchten.

  1. Fügen Sie im Skript-Editor eine neue Registerkarte zu Ihrem Skript hinzu.
  2. Benennen Sie die Registerkarte. In diesem Beispiel wird die Registerkarte New Data (Twitter) genannt. Setzen Sie den Mauszeiger in das Skript-Editor-Fenster.
  3. Klicken Sie im Dateneditor auf Daten auswählen für Ihre Twitter-Verbindung.

    Das Fenster Auswahl der zu ladenden Daten wird geöffnet.

  4. Wählen Sie die Tabelle mit dem Namen Search und dann den Begriff, nach dem gesucht werden soll. In diesem Beispiel wird „Kubernetes“ verwendet.

     

    Datenladefenster mit ausgewählter Suchtabelle

    Data load window with Search table selected.

  5. Klicken Sie auf Datenvorschau. Die Datenfelder für die Search-Tabelle werden angezeigt. Wählen Sie die Felder aus, die Sie laden möchten. Für unser Beispiel werden die folgenden Felder ausgewählt: id, created_at, text, source und user_name.

     

    Datenladefenster mit einer Datenvorschau

    Data load window showing a preview of data.

  6. Klicken Sie auf Skript einfügen. Das Skriptsegment wird zur Registerkarte Neue Daten (Twitter) im Skript-Editor des Dateneditors hinzugefügt.

  7. Benennen Sie die Tabelle, indem Sie eine Zeile oberhalb der Load-Anweisung einfügen. In unserem Beispiel wird sie TwitterSearch genannt.

     

    Ihre Registerkarte sollte ähnlich wie der folgende Screenshot aussehen (ohne die Kommentare):

     

    Registerkarte Neue Daten (Twitter) im Dateneditor

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

  8. Um zu überprüfen, ob das Datenladen funktioniert, klicken Sie oben im Menü auf Daten laden. Die Daten werden geladen.

     

    Fenster für Datenladefortschritt

    Data load progress window.

Auf Wunsch können Sie die Daten der Tabellen und Felder in der Datenmodellansicht anzeigen. Sie können auch eine Tabelle in Ihrer App erstellen, um Ihre aktuellen Daten anzuzeigen.

Hinzufügen von Skript-Anweisungen zum Erstellen und Inkrementieren der QVD-Datei anhand von Twitter-Daten

Nachdem Sie die App zum Laden von Daten aus Twitter eingerichtet haben, können Sie diese Daten in einer QVD-Datei speichern. Da die Twitter Standard API nur das Abrufen von Daten der letzten 7 Tage zulässt, enthält unsere QVD nach dem Laden anfänglich diese Daten.

  1. Fügen Sie im Skript-Editor eine neue Registerkarte zu Ihrem Skript hinzu.
  2. Benennen Sie die Registerkarte. In diesem Beispiel wird die Registerkarte Historical data (QVD) genannt.
  3. Fügen Sie der Registerkarte die folgenden Skriptanweisungen hinzu. Die Kommentare (//) dienen zur Information. Sie werden nicht ausgeführt, wenn Sie das Skript ausführen.

     

    Hinweis: Wenn Sie aus Firefox kopieren und einfügen, müssen Sie die kopierten Daten möglicherweise zuerst in ein anderes Dokument wie Word einfügen, damit die Zeilenumbrüche im Skript-Editor korrekt angezeigt werden.

     

    //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

     

    Ihre Registerkarte sollte ähnlich wie der folgende Screenshot aussehen:

     

    Registerkarte Verlaufsdaten (QVD) im Dateneditor

    Historical Data (QVD) in the data load editor.

  4. Fügen Sie Ihrem Skript eine weitere neue Registerkarte hinzu.
  5. Benennen Sie die Registerkarte. In diesem Beispiel wird die Registerkarte Store to QVD genannt.
  6. Fügen Sie der Registerkarte die folgenden Skriptanweisungen hinzu.

     

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

     

    Ihre Registerkarte sollte ähnlich wie der folgende Screenshot aussehen:

     

    Registerkarte Speichern in QVD im Dateneditor

    Store to QVD tab in the data load editor.

Skript ausführen

Wenn Sie das Skript zum ersten Mal ausführen, werden die Daten aus Twitter geladen, und die QVD-Datei mit dem Namen AllTweets.qvd wird aus den Twitter-Daten erstellt. Die QVD-Datei wird Ihrem DataFiles-Bereich hinzugefügt. Wenn Sie das Skript erneut ausführen, werden die Daten aus Twitter und der QVD-Datei geladen. Die QVD-Datei wird dann mit den Daten aktualisiert, die Sie aus der QVD-Datei geladen haben.

  1. Klicken Sie auf Daten laden. Wenn Sie das Skript zum ersten Mal ausführen, werden die Daten aus Twittergeladen, und die AllTweets QVD-Datei wird anhand der Daten erstellt. Die QVD-Datei wird Ihrem DataFiles-Bereich hinzugefügt und kann durch Klicken auf Select data angezeigt werden.

     

    Wenn Sie das Skript zum ersten Mal ausführen, wird eine Meldung wie die folgende angezeigt:

     

    Fenster für Datenladefortschritt

    Data load progress window.

     

    Wenn Sie die Daten zum zweiten und weitere Male laden, wird eine Meldung wie die folgende angezeigt:

     

    Fenster für Datenladefortschritt

    Data load progress window.

  2. Erstellen Sie unter Verwendung der Daten Diagramme und Tabellen in Ihrer App.

Festlegen des Plans für das erneute Laden von Daten

Nachdem Sie Ihre Daten geladen haben, können Sie die Daten in Ihrer App anzeigen. Eine Möglichkeit zum erneuten Laden der Daten besteht wie gesehen darin, den Skript-Editor zu öffnen und auf Daten laden zu klicken. Sie können Daten aber auch manuell oder nach einem Zeitplan laden, den Sie auf der Cloud-Hub-Benutzeroberfläche auswählen. Weitere Informationen finden Sie unter Laden von App-Daten im Cloud-Hub.