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 verbrauchen und Verbrauchernachrichten für Transformationszuordnungen 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
Ersetzen Sie unbedingt<instance name> mit dem Namen Ihrer Instanz.
-
Um das Thema anzuzeigen, melden Sie sich bei der Instanz an, und navigieren Sie zu .
Hinweis: Das Erstellen eines Themas dauert ungefähr 10 Minuten.
-
Erstellen Sie einen -ETL-Verbraucher, um Daten aus dem Thema zu verbrauchen.
-
Navigieren zu .
-
Wählen Sie Neu.
-
Geben Sie im Formular „Kafka-Verbraucher“ im Feld Name einen Namen ein.
In diesem Beispiel wird der Name Mitgliedsimport verwendet.
-
Wählen Sie für das Feld „ Robuster Importsatz-Umwandler “ einen vorhandenen robusten Importsatz-Umwandler aus.
Wählen Sie für den robusten Transformator für Importsatz einen Umwandler aus, bei dem die Option zum Speichern von Daten in einer einzelnen Spalte nicht verwendet wird. Um die Nachrichten sehen zu können, stellen Sie sicher, dass für den robusten Importsatz -Umwandler die Option Ausführlich aktiviert ist.
-
Deaktivieren Sie die Option Daten in einzelner Spalte.
Diese Option sollte nur für Importsatztabellen mit Daten in einer einzelnen Spalte ausgewählt werden.
-
Legen Sie die Spaltenzuordnung auf Bezeichnung fest.
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 Formular „Kafka-Stream“ die folgenden Feldwerte fest.
-
Wählen Sie unter Zugehörige Links den Link Aktivieren aus.
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
Ersetzen Sie unbedingt<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, aber der JSON-Nachrichtenschlüssel muss mit den Tabellenbezeichnungen des Importsatzes übereinstimmen.
-
Navigieren Sie zurück zu dem von Ihnen erstellten -ETL-Verbraucher.
Nach etwa einer Minute sollten 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 Nummer der Importsatzzeile aus.
-
Erstellen Sie einen Transformationszuordnungsverbraucher, um Daten zu verbrauchen.
-
Navigieren zu .
-
Wählen Sie Neu.
-
Geben Sie im Formular „Verbraucher der Kafka-Transformationszuordnung“ im Feld Name einen Namen ein.
-
Wählen Sie im Feld Transformationszuordnung eine vorhandene Transformationszuordnung aus.
-
Speichern Sie das Formular.
-
Erstellen Sie einen Kafka-Stream für den Verbraucher.
-
Legen Sie im Formular „Kafka-Stream“ die folgenden Feldwerte fest.
-
Wählen Sie unter Zugehörige Links den Link Aktivieren aus.
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
Ersetzen Sie unbedingt<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, aber der JSON-Nachrichtenschlüssel muss mit den Tabellenbezeichnungen des Importsatzes übereinstimmen.
-
Wechseln Sie zu dem von Ihnen erstellten Verbraucher der Transformationszuordnung.
Nach etwa einer Minute sollten die Daten über den Importsatz importiert worden sein.
-
Um detaillierte Informationen zum Importsatz anzuzeigen, wählen Sie die Importsatznummer wie in Schritt 3d oben beschrieben aus.