Verwenden Sie ETL-Definitionen und Transformationszuordnungen, um Kafka-Ereignisse zu verarbeiten. ETL-Definitionen und Transformationszuordnungen geben die Transformationslogik an, die beim Abrufen von Daten über geplante Importe verwendet werden soll. Sie können dieselben ETL-Definitionen und Transformationszuordnungen verwenden, um die über Kafka empfangenen Ereignisse zu transformieren.
Prozedur
-
Erstellen Sie ein Thema, um ETL zu nutzen und Verbrauchernachrichten zu transformieren.
-
Verwenden Sie den folgenden Befehl, um ein Thema in Hermes zu erstellen.
In diesem Beispiel lautet der Themenname topic2.
bin/kafka-topics.sh --create --command-config config/bootcamp.properties --bootstrap-server <instance name>.service-now.com:4000,<instance name>.service-now.com:4001,<instance name>.service-now.com:4002, <instance name>.service-now.com:4003 --topic snc.<instance name>.topic2
Stellen Sie sicher, dass Sie ersetzen
<instance name> Mit dem Namen Ihrer Instanz.
-
Um das Thema anzuzeigen, melden Sie sich bei der Instanz an, und navigieren Sie zu an.
Hinweis: Es dauert etwa 10 Minuten, um ein Thema zu erstellen.
-
Erstellen Sie einen ETL-Verbraucher, um Daten aus dem Thema zu verbrauchen.
-
Navigieren zu an.
-
Wählen Sie Neu.
-
Geben Sie im Formular „Kafka-Verbraucher“ einen Namen in ein Name Feld.
In diesem Beispiel wird der Name Member Import verwendet.
-
Für Robuster Importsatz-Umwandler Wählen Sie einen vorhandenen robusten Importsatz-Umwandler aus.
Wählen Sie für den robusten Importsatz-Umwandler einen aus, der die Option zum Speichern von Daten in einer einzelnen Spalte nicht verwendet. Um die Nachrichten anzuzeigen, stellen Sie sicher, dass der robuste Importsatz-Umwandler über verfügt Ausführlich Option aktiviert.
-
Deaktivieren Sie Daten in einer Spalte Option.
Diese Option sollte nur für Importsatztabellen mit Daten in einer einzelnen Spalte ausgewählt werden.
-
Legen Sie fest Spaltenzuordnung Bis Bezeichnung .
Dies bedeutet, dass die JSON-Schlüssel der Eingabenachricht den Spaltenbezeichnungen der Importsatztabelle zugeordnet sind.
-
Speichern Sie das Formular.
-
Erstellen Sie einen Kafka-Stream Für den Verbraucher.
-
Legen Sie im Kafka-Stream-Formular die folgenden Feldwerte fest.
-
Wählen Sie aus Aktivieren Link unter zugehörige Links.
Sie sollten das aktivierte Abonnement sehen können.
-
Veröffentlichen Sie Nachrichten in Topic2.
-
Führen Sie den folgenden Befehl aus, um Nachrichten in Topic2 zu veröffentlichen.
bin/kafka-console-producer.sh --topic snc.<instance name>.topic2 --producer.config config/bootcamp.properties --bootstrap-server <instance name>.service-now.com:4000,<instance name>.service-now.com:4001,<instance name>.service-now.com:4002,<instance name>.service-now.com:4003
Stellen Sie sicher, dass Sie ersetzen <instance name> Mit dem Namen Ihrer Instanz.
Dieser Befehl fordert Sie zur Eingabe von Nachrichten auf.
-
Senden Sie die folgende JSON-Nachricht.
{"city":"San Diego","name":"Jhon","id":"SN001","state":"California"}
Sie können diese Nachricht mit beliebigen Werten senden, der JSON-Nachrichtenschlüssel muss jedoch mit den Tabellenbezeichnungen des Importsatzes übereinstimmen.
-
Navigieren Sie zurück zu dem von Ihnen erstellten ETL-Verbraucher.
Nach etwa einer Minute müssen die Daten über den Importsatz importiert worden sein.
-
Um detaillierte Informationen zum Importsatz anzuzeigen, wählen Sie die Importsatznummer aus.
-
Um detaillierte Informationen zu einer Importsatzzeile anzuzeigen, wählen Sie die Zeilennummer des Importsatzes aus.
-
Erstellen Sie einen Verbraucher der Transformationszuordnung, um Daten zu verbrauchen.
-
Navigieren zu an.
-
Wählen Sie Neu.
-
Geben Sie im Formular „Verbraucher umwandeln – Zuordnung umwandeln“ einen Namen in ein Name Feld.
-
Für Transformationszuordnung Wählen Sie eine vorhandene Transformationszuordnung aus.
-
Speichern Sie das Formular.
-
Erstellen Sie einen Kafka-Stream Für den Verbraucher.
-
Legen Sie im Kafka-Stream-Formular die folgenden Feldwerte fest.
-
Wählen Sie aus Aktivieren Link unter zugehörige Links.
Sie sollten das aktivierte Abonnement sehen können.
-
Veröffentlichen Sie Nachrichten in Topic2.
-
Führen Sie den folgenden Befehl aus, um Nachrichten in Topic2 zu veröffentlichen.
bin/kafka-console-producer.sh --topic snc.<instance name>.topic2 --producer.config config/bootcamp.properties --bootstrap-server <instance name>.service-now.com:4000,<instance name>.service-now.com:4001,<instance name>.service-now.com:4002,<instance name>.service-now.com:4003
Stellen Sie sicher, dass Sie ersetzen <instance name> Mit dem Namen Ihrer Instanz.
Dieser Befehl fordert Sie zur Eingabe von Nachrichten auf.
-
Senden Sie die folgende JSON-Nachricht.
{"city":"San Diego","name":"Jhon","id":"SN001","state":"California"}
Sie können diese Nachricht mit beliebigen Werten senden, der JSON-Nachrichtenschlüssel muss jedoch mit den Tabellenbezeichnungen des Importsatzes übereinstimmen.
-
Wechseln Sie zu dem von Ihnen erstellten Verbraucher der Transformationszuordnung.
Nach etwa einer Minute müssen die Daten über den Importsatz importiert worden sein.
-
Um detaillierte Informationen zum Importsatz anzuzeigen, wählen Sie die Importsatznummer wie oben in Schritt 3d aus.