In diesem Beitrag konzentrieren wir uns darauf, die derzeit verfügbaren Datenübertragungsoptionen von internen Ressourcen zur Qlik Cloud vorzustellen.
Die Cloud bezieht sich einfach auf von Qlik verwaltete Server zu unserem Komfort, aber sie sind nicht innerhalb unseres Netzwerks. Als Ergebnis entsteht oft die Frage, wie man Daten in die Qlik Cloud übertragen kann, die typischerweise innerhalb des internen Netzwerks isoliert ist.
Wenn Daten in der Cloud gespeichert sind (z.B. Snowflake, BigQuery), können wir uns direkt mit Qlik Cloud verbinden und Cloud-zu-Cloud-Kommunikation ermöglichen.
Wir werden vier Optionen diskutieren:
- Öffnen des Daten-Servers für Verbindungen aus der Cloud.
- Qlik Data Transfer.
- Qlik Data Gateway: Direct Access.
- Qlik Data Integration.
Zusammenfassung
Zunächst eine Zusammenfassungstabelle aller Lösungen.
1 | 2 | 3 | 4 | |
Lösung | Öffnen des Quellservers | Qlik Data Transfer | Direktzugriff | QDI |
Kurzbeschreibung | Lokal installiert, überträgt Dateien in die Cloud | Lokal installiert, ermöglicht direkten Zugriff aus der Cloud | Lokal installiert, ein separater Satz von Tools der ETL-Klasse | |
Installations-programm? | – | Qlik Datenübertragung | Qlik Data Gateway: Direktzugriff | Qlik Data Gateway: Datenverschiebung |
Zusätzlicher Server erforderlich? | Nein | Empfohlen | Empfohlen | Linux-Server erforderlich Temporärer Speicherplatz (z. B. A WS) erforderlich |
Flatfiles übertragen? | Nein | Ja | Nein | Nein |
Datei-/Datengrößen-beschränkung | Nein | Ja | Nein | Nein |
Sicherheit | Abhängig von der Quelldatenbank | API und HTTPS | Gegenseitig verschlüsselte Übertragung | Gegenseitig verschlüsselte Übertragung |
Einfach der Implementierung | Einfach | Einfach | Mittel | Schwieriges Spezialwissen erforderlich |
Zusätzliche Funktionen | – | Unterstützt ODBC Kann flache Dateien senden Kann App-Neuladen in der Cloud auslösen | – | Komplettes ETL-Tool inklusive Datentransformation und Delta Load |
Überwachung der Datenvollständigkeit | Ihre eigene App in Qlik Cloud | Schwierig, da Daten von lokal in die Cloud gepusht werden | Ihre eigene App in Qlik Cloud | In QDI enthalten |
Treiber/Datenbanken (die Liste ändert sich ständig) | Nur die in Qlik Cloud verfügbaren | All you can install on- prem, einschließlich ODBC | Nur die in Qlik Cloud verfügbaren | Nur die in QDI verfügbaren |
Ad. 1 Öffnen des Daten-Servers für Verbindungen aus der Cloud.
Wir verbinden uns direkt mit der Datenbank, indem wir Standard-Treiber in Qlik verwenden. Es ist erforderlich, Ports in der Firewall des lokalen Servers zu öffnen, um mit externen Servern zu kommunizieren. Die gute Nachricht ist, dass es ausreicht, die Kommunikation einzuschränken auf einen Port und drei IP-Adressen zu öffnen – Server, von denen aus Verbindungen von Qlik Cloud initiiert werden können. (Drei IP-Adressen, unterschiedlich für jede Qlik Cloud-Region).
Vorteile
- Einfachheit und Schnelligkeit der Konfiguration (einfach nur die Ports öffnen),
- Bequemlichkeit bei der Datenauswahl – Nutzung von Datenauswahl-Assistenten in der Qlik Sense-Anwendung “auf die alte Art und Weise” wie in Qlik Sense Client Managed oder in QlikView,
- Nach der Konfiguration kann es im Qlik Hub verwendet werden, was das Wechseln zwischen Servern eliminiert.
Nachteile
- Sicherheit streng abhängig von der Quellendatenbank,
- Keine Unterstützung für ODBC-Treiber (eigene Treiber können in Qlik Cloud nicht “hochgeladen” werden).
Ad 2. Qlik Data Transfer
Es war das erste von Qlik entwickelte Programm, um Daten in die Qlik Cloud zu übertragen, direkt nach dem Start des Cloud-Dienstes. Es wird lokal auf dem Firmenserver installiert und funktioniert nach dem Start als lokaler Dienst. Die Daten werden über Referenzen über die API an Ihren Qlik Cloud-Tenant über HTTPS “gepusht”.
Im ersten Schritt wird die Daten lokal generiert (in Form von QVD) und dann an die Cloud gesendet. Dies gilt für jede der drei Konfigurationen:
- Überwachung des Ordners mit Dateien (einschließlich “flacher” Dateien!) und Hochladen neuer und aktualisierter Dateien.
- Erstellung von Verbindungen zu einzelnen Tabellen in lokalen Datenbanken. Jede dieser Verbindungen kann entsprechend einem Zeitplan Daten herunterladen (temporär zu QVD) und sie dann an die Qlik Cloud senden. Wir müssen für jede übertragene Quelltabelle eine separate Verbindung einrichten.
- Starten einer Qlik Sense-Anwendung, die die Daten in sich selbst lädt. Anschließend werden die Daten aus dem Datenmodell in separaten Tabellen an die Cloud gesendet.
Qlik Data Transfer enthält den Qlik-Datenverarbeitungsmotor. Das Anwendungsskript wird ausgeführt, es erstellt ein internes Datenmodell, QDT extrahiert alle Tabellen und sendet sie an die Cloud. Dies ist eine interessante Lösung, da Sie die Datenverarbeitung bereits in diesem Stadium programmieren können, bevor Sie sie an die Cloud senden.
Jede der oben genannten Übertragungsmethoden kann außerdem Neuladungen in der Cloud der angegebenen Qlik Sense-Anwendung auslösen (zum Beispiel eine Anwendung, die die übertragenen Daten in sich lädt).
Vorteile
- einfache Installation und Konfiguration, kann auf demselben Server installiert werden, auf dem z.B. Qlik Sense Client Managed ausgeführt wird, normalerweise sicherer als das Öffnen eines Datenbankservers, unterstützt ODBC-Treiber, ermöglicht das Hochladen von flachen Dateien (CSV, Excel) in die Cloud.
Nachteile
- kann instabil sein, insbesondere bei großen Tabellen, hat eine Grenze für die Größe (in GB) der zu sendenden Tabelle,
- Es ist erforderlich, sich jedes Mal auf dem firmeneigenen Server (RDP) anzumelden, wenn eine neue Datenquelle programmiert werden soll.
Hier sind Anleitungen zur Konfiguration von Qlik Data Transfer:
- Einfache Installationsanleitung: https://share.vidyard.com/watch/XYrKHrRm3NNLneLLVrhb89
- Beispielhafte Anweisungen zur Konfiguration der Datenübertragung: https://share.vidyard.com/watch/X9QJYTiajGxfSVjt2pP8yq
Ad 3. Qlik Data Gateway: Direct Access
It works completely securely behind the corporate firewall. It uses data encryption, transmits the data through a mutually authenticated connection – a “tunnel”. It allows you to use local sources as conveniently as if both servers (cloud and local source) were in the same network. Qlik Cloud sends a request to Qlik Data Gateway, this service sends a local request to the appropriate database, then the response (downloaded data) is sent directly to Qlik Cloud cloud drives via WS-Security.
Vorteile
- bequeme Datenauswahl mit der nativen Qlik-Benutzeroberfläche direkt zur Anwendung,
- direkte Übertragung von Daten in die Cloud, ohne sie in Zwischenstufen zu speichern,
- zuverlässig und effizient,
- nach der Installation – Service komplett im Qlik Sense Cloud Hub.
Nachteile
- eine etwas komplexere Installation auf einem lokalen Server ist erforderlich,
- empfohlene Installation auf einem Server, der nicht die Datenquelle und nicht Qlik Sense Client Managed ist – aufgrund der Serverbelastung während des Betriebs. Möglicherweise ist eine zusätzliche Investition in die Infrastruktur erforderlich.
- derzeit (März 2023) gibt es keine Unterstützung für ODBC-Treiber, aber zum Zeitpunkt des Lesens dieses Textes könnte die Ankündigung der Hinzufügung dieser Option bereits umgesetzt worden sein.
Ad 4. QDI – Qlik Data Integration
Qlik Data Integration ist eine Tool-Sammlung einer anderen Klasse als die oben genannten Beispiele. Es handelt sich um eine Cloud-Implementierung der von Qlik erworbenen Attunity Compose- und Replicate-Produkte. In einem separaten Tool-Set (obwohl es sich immer noch im gleichen Qlik Sense Cloud Hub befindet), entwerfen wir Streaming-Daten von lokalen Quellen zu Cloud-Laufwerken. Auf dem lokalen Server ist ein dedizierter Service erforderlich. Dies ist Qlik Data Gateway – jedoch in der “Data Movement” -Version (nicht “Direct Access”).
Die Lösung erfordert etwas mehr Investitionen in Implementierung und Infrastruktur (ein lokaler Linux-Server und Übertragungs-Festplattenressourcen, z. B. AWS, sind erforderlich), weshalb sie für größere Datensätze empfohlen wird. Es zeichnet sich durch Stabilität, die Möglichkeit, Daten-Transformationen professionell zu gestalten und eigene Unterstützung für die inkrementelle Datenladung (CDC – Change Data Capture) aus. Es handelt sich um ein ETL-Tool.
Am interessantesten ist, dass das Tool verwendet werden kann, um Daten zwischen beliebigen Umgebungen zu migrieren, von denen keine Qlik sein muss! Zum Beispiel: Lokale Daten zu Snowflake, SAP-Daten zu BigQuery usw.
Vorteile
- Eine stabile Lösung, die große Datenmengen unterstützt,
- unterstützt eigenständig die inkrementelle Datenladung (sogenannte CDC – Change Data Capture),
- nach der Installation vollständige Unterstützung im Qlik Sense Cloud Hub,
- ermöglicht das Design von Datenverarbeitung in der Transferphase – ein ETL-Tool,
- hat ein breites Anwendungsspektrum – es kann Daten zwischen Systemen übertragen, von denen keines Qlik ist!
Nachteile
- erfordert zusätzliche Investitionen in einen lokalen Linux-Server und eine Übertragungs-Festplatte (z. B. AWS), erfordert Fachwissen,
- um die Übertragung zu gestalten, den Linux-Server zu starten und die AWS-Ressource bereitzustellen.
Flache Konfigurationsdateien (Excel, CSV)
In den Lösungen 1, 3 (das wird sich bald ändern) und 4 müssen wir zur Übertragung häufig auftretender Konfigurationen in die Cloud flache Dateien mit Daten eine zusätzliche Lösung verwenden.
Es könnte sein:
- Dateispeicherung in OneDrive / SharePoint. Dateien sind für Benutzer leicht zugänglich – sie können einen Ordner mit Dateien mit ihren Computern “verbinden” und sie am Speicherort bearbeiten.
- Manuelles Hochladen von Dateien in Qlik Cloud. Gut für Konfigurationsdateien, die nur gelegentlich geändert werden. Nicht für Quelldateien, die täglich aktualisiert werden müssen.