Kafka doel
Dit onderwerp beschrijft hoe u de verbinding met een Kafka-doel moet configureren met behulp van de Kafka doelconnector. Kafka kan alleen als doel worden gebruikt in een replicatietaak.
Kafka als doel instellen vereist het volgende:
- Voldoen aan de vereisten
- Een verbinding naar Kafka configureren
Verbindingseigenschappen instellen
Ga als volgt te werk om de connector te configureren:
-
Klik in Verbindingen op Verbinding maken.
-
Selecteer de Kafka doelconnector en stel de volgende instellingen in:
Gegevensdoel
Gegevensgateway
Bij het verplaatsen van gegevens naar Amazon MSK, is een Data Movement gateway alleen vereist als Amazon MSK niet toegankelijk is via Qlik Cloud en alleen kan worden geopend via een privékoppeling (bijvoorbeeld als het zich in een Virtual Private Cloud bevindt). In zo'n geval, selecteer de Data Movement gateway waarmee u toegang wilt krijgen tot de doeldatabase. Afhankelijk van uw gebruikssituatie, gebruikt u dezelfde Data Movement gateway die is geïmplementeerd om gegevens van de bron te verplaatsen of u gebruikt een andere gateway.
Als u gegevens verplaatst naar een Amazon MSK-instantie die direct toegankelijk is vanaf Qlik Cloud, selecteer dan Geen.
-
Als u gegevens verplaatst naar Kafka on-premises (zie Cloudprovider hieronder), moet u een Data Movement gateway selecteren, ongeacht of Kafka direct toegankelijk is vanaf Qlik Cloud.
-
Als u Data Movement gateway moet gebruiken, is versie 2025.5.40 of hoger vereist.
Voor informatie over usecases voor de Data Movement gateway, gaat u naar Wanneer is de Data Movement gateway vereist? en Veelvoorkomende toepassingen:.
Cloudprovider
Kies Geen om Kafka on-premises te gebruiken of Amazon MSK om Amazon MSK te gebruiken.
Brokerservers
Geef een of meer brokerservers op met behulp van het volgende formaat (voor hoge beschikbaarheid):
server1[:port1][,server2[:port2]]
Voorbeeld:
192.168.1.100:9092,192.168.1.101:9093
De gegevenstaak maakt verbinding met de eerst beschikbare host. Als een host is opgegeven zonder poort, dan wordt poort 9092 als standaard gebruikt.
Bij gebruik van SSL- of Kerberos-authenticatie moet u de FQDN van de broker opgeven (d.w.z. niet het IP-adres).
Alle brokerservers in uw cluster moeten toegankelijk zijn vanaf de Data Movement gateway machine. U hoeft echter niet alle servers op te geven in de Brokerservers . Dit komt doordat Data Movement gateway slechts verbinding hoeft te maken met één van de servers om de verbindingsgegevens voor de andere servers in het cluster op te halen. Het is daarom aanbevolen om de servers op te geven die het meest waarschijnlijk beschikbaar zijn wanneer de taak wordt uitgevoerd. De servers waarnaar de gegevenstaak berichten produceert, worden bepaald door het onderwerp en het partitioneringsonderwerp, evenals de partitioneringsinstellingen.
Accounteigenschappen
Verificatiemethode
Selecteer een van de volgende opties:
-
Geen: Geen verificatie.
InformatieNiet beschikbaar wanneer de geselecteerde Cloudprovider Amazon MSK is.
-
Certificaten:: Als u deze optie selecteert, moet u ook de volgende informatie opgeven:
OpmerkingDe openbare en persoonlijke sleutelbestanden moeten in PEM-indeling zijn.
- Openbaar sleutelbestand: Blader naar het bestand met de openbare sleutel in PEM-indeling. Wanneer u op Opslaan klikt, wordt het bestand geüpload naar Qlik Talend Cloud en geïmplementeerd op de Data Movement gateway die is geselecteerd in de connectorinstellingen.
- Privésleutelbestand: Blader naar het privésleutelbestand in PEM-indeling. Wanneer u op Opslaan klikt, wordt het bestand geüpload naar Qlik Talend Cloud en geïmplementeerd op de Data Movement gateway die is geselecteerd in de connectorinstellingen.
- Wachtwoord privésleutelbestand: Het wachtwoord voor het privésleutelbestand.
-
Kerberos (SASL/GSSAPI): Selecteer om te authenticeren bij het Kafka-cluster met Kerberos.
InformatieDeze authenticatiemethode is niet beschikbaar wanneer de geselecteerde Cloudprovider Amazon MSK is.
- Principal: De Kerberos-principal die wordt gebruikt om te authenticeren bij de brokerserver(s).
- Keytab-bestand: Blader naar het keytab-bestand. Wanneer u klikt op Opslaan, wordt het bestand geüpload naar Qlik Talend Cloud en geïmplementeerd op de Data Movement gateway geselecteerd in de connectorinstellingen.
InformatieOm Kerberos-authenticatie op Linux te kunnen gebruiken, moet het Kerberos-clientpakket (werkstation) geïnstalleerd zijn.
-
Gebruikersnaam en wachtwoord (SASL/PLAIN): U kunt deze optie selecteren om uzelf te authenticeren met een gebruikersnaam en wachtwoord (SASL/PLAIN). Om te voorkomen dat het wachtwoord in platte tekst wordt verzonden, wordt sterk aanbevolen om ook de optie TLS inschakelen in te schakelen.
InformatieDeze authenticatiemethode is niet beschikbaar wanneer de geselecteerde Cloudprovider Amazon MSK is.
-
Gebruikersnaam en wachtwoord (SASL/SCRAM-SHA-256): U kunt deze optie selecteren om uzelf te authenticeren met een gebruikersnaam en wachtwoord (SASL/SCRAM-SHA-256).
Merk op dat het selecteren van deze optie ook vereist dat het server.properties-bestand van elke broker wordt geconfigureerd met het bijbehorende SASL/SCRAM-mechanisme.
InformatieDeze authenticatiemethode is niet beschikbaar wanneer de geselecteerde Cloudprovider Amazon MSK is.
-
Gebruikersnaam en wachtwoord (SASL/SCRAM-SHA-512): U kunt deze optie selecteren om uzelf te authenticeren met een gebruikersnaam en wachtwoord (SASL/SCRAM-SHA-512).
Merk op dat het selecteren van deze optie ook vereist dat het server.properties-bestand van elke broker wordt geconfigureerd met het bijbehorende SASL/SCRAM-mechanisme.
SSL-opties
TLS inschakelen (ondersteunt TLS 1.0, 1.1 en 1.2)
Selecteer deze optie om de communicatie te versleutelen tussen de Qlik Talend Cloud en de brokerserver(s). Als de brokers zijn geconfigureerd om SSL te vereisen, dan moet u deze optie selecteren.
-
CA-bestand: Blader naar het CA-certificaat in PEM-indeling. Wanneer u klikt op Opslaan, wordt het bestand geüpload naar Qlik Talend Cloud en geïmplementeerd op de Data Movement gateway geselecteerd in de connectorinstellingen.
InformatieNiet nodig wanneer de geselecteerde Cloud provider Amazon MSK is.
Metagegevensbericht publiceren
Schemaregister is beschikbaar voor het publiceren van metadataberichten
Selecteer uit de vervolgkeuzelijst een van de volgende opties:
-
Nee
Wanneer deze optie is geselecteerd, worden alleen de databerichten gepubliceerd.
-
Confluent schemaregister
Als u deze optie selecteert, moet u ook de Verbindingskenmerken van schemaregister hieronder beschrijven.
WaarschuwingWanneer Confluent schemaregister is geselecteerd, moet u de volgende interne eigenschap instellen: CsrSkipGlobalConfig=false
-
De opties van het Confluent Schemaregister ondersteunen alleen het Avro-berichtformaat.
-
Het wordt sterk aanbevolen niet schemaberichten naar hetzelfde onderwerp te publiceren als databerichten.
-
Als de onderwerpen niet bestaan, configureer de brokers dan met auto.create.topics.enable=true om de datataak in staat te stellen de onderwerpen tijdens runtime aan te maken. Anders zal de taak mislukken.
Berichtformaat
Kies JSON of Avro als het berichtformaat. Avro is de enige beschikbare optie als u Confluent schema registry hebt geselecteerd.
Schemaregister verbindingseigenschappen
Schemaregisterservers
Geef één of meer Schemaregisterservers op met behulp van het volgende formaat (voor hoge beschikbaarheid):
Wanneer gegevensschema's worden gepubliceerd naar de Confluent Schema Registry:
server1:port1[,server2[:port2]]
Voorbeeld:
192.168.1.100:8081,192.168.1.101:8081
De gegevenstaak maakt verbinding met de eerst beschikbare host.
Verificatiemethode
Selecteer een van de volgende authenticatieopties voor Schema Registry:
- Geen: Geen verificatie.
Certificaten: Selecteer om te authenticeren met een certificaat.
Als u deze optie selecteert, moet u ook de volgende informatie opgeven:
- Bestand met openbare sleutel: Blader naar het bestand met de openbare sleutel in PEM-indeling. Wanneer u klikt op Opslaan, wordt het bestand geüpload naar Qlik Talend Cloud en geïmplementeerd op de Data Movement gateway geselecteerd in de connectorinstellingen.
- Privésleutelbestand: Blader naar het privésleutelbestand in PEM-indeling. Wanneer u klikt op Opslaan, wordt het bestand geüpload naar Qlik Talend Cloud en geïmplementeerd op de Data Movement gateway geselecteerd in de connectorinstellingen.
- Wachtwoord privésleutel: Het wachtwoord voor het privésleutelbestand.
Gebruikersnaam en wachtwoord: Selecteer om te authenticeren met een gebruikersnaam en wachtwoord. Voer vervolgens uw aanmeldingsgegevens in de velden Gebruikersnaam en wachtwoord in.
Certificaat + Gebruikersnaam en Wachtwoord: Selecteer om te authenticeren met zowel een certificaat als een gebruikersnaam en wachtwoord.
Wanneer deze optie is geselecteerd, voert u de vereiste informatie in de hierboven beschreven velden Openbare-sleutelbestand, Privé-sleutelbestand, Wachtwoord privésleutel, Gebruikersnaam en Wachtwoord in.
- TLS inschakelen (ondersteunt TLS 1.0, 1.1 en 1.2): Selecteer deze optie om de gegevens te versleutelen tussen de Data Movement gateway machine en de Schema Registry-server(s). Als de servers zijn geconfigureerd om SSL te vereisen, dan moet u deze optie selecteren.
CA-bestand: Blader naar het CA-certificaat in PEM-indeling. Wanneer u op Opslaan klikt, wordt het bestand geüpload naar Qlik Talend Cloud en geïmplementeerd op de Data Movement gateway die is geselecteerd in de connectorinstellingen.
Interne eigenschappen
Interne eigenschappen zijn bedoeld voor speciale toepassingen en worden daarom niet in het dialoogvenster weergegeven. U moet ze alleen gebruiken als Qlik Support dit aan u heeft geadviseerd.
Gebruik de knop en
aan de rechterkant van de velden om eigenschappen toe te voegen of te verwijderen.
Naam
De weergavenaam voor de verbinding.
Vereisten
Voordat u Kafka als doel kunt gebruiken, moet aan de volgende vereisten worden voldaan:
-
Open TCP-poorten naar alle brokers vanaf de Data Movement gateway machine
-
Stel machtigingen in waarmee de gegevenstaak naar de doeltopics kan schrijven. Eén manier om dit te doen is door het Kafka ACLs-script (kafka-acls) te gebruiken.
-
Maak een topic met de naam attrep_apply_exceptions voordat u de gegevenstaak start, of configureer de brokers met auto.create.topics.enable=true.
Merk op dat als dit topic niet bestaat, de taak altijd mislukt wanneer deze een gegevensfout tegenkomt, ongeacht het beleid voor foutafhandeling.
Voor een beschrijving van de controletabel attrep_apply_exceptions, zie Uitzonderingen toepassen.
Beperkingen en overwegingen
Bij het definiëren van een taak met Kafka als de doel-connector, gelden de volgende beperkingen:
-
Taakinstellingen die niet worden ondersteund:
-
De Kafka-doel-connector ondersteunt geen onbeperkte LOB-grootte. In de taakinstellingen wordt de optie LOB-kolommen opnemen en kolomgrootte beperken tot (KB) ingeschakeld en is deze alleen-lezen.
-
De modus Wijzigingen opslaan wordt niet ondersteund.
-
De modus Batchgewijs optimaliseren toepassen wordt niet ondersteund. Kafka werkt altijd in de modus transactioneel toepassen.
- De instelling voor het toepassen van wijzigingen ALTER negeren wordt niet ondersteund voor wijzigingen in brondatatypen en het hernoemen van tabellen.
- De optie Tabel verwijderen en maken van het veld Doeltabelvoorbereiding wordt niet ondersteund.
- De optie Trunceren vóór laden van het veld Doeltabelvoorbereiding wordt niet ondersteund.
- De Change Data Partitioning Control-tabel wordt niet ondersteund.
-
- Algemene beperkingen:
Kafka-topicnamen mogen geen spaties bevatten of langer zijn dan 255 tekens (249 vanaf Kafka 0.10) en mogen alleen de volgende tekens bevatten:
a-z|A-Z|0-9|. (punt)|_(onderstrepingsteken)|-(minteken)
Als de namen van de brontabel de maximaal toegestane lengte overschrijden of niet-ondersteunde tekens bevatten, moet u de namen wijzigen voordat u de taak start of een globale transformatie definiëren.
Kolomnamen moeten beginnen met [A-Za-z_] (letters of een onderstrepingsteken), gevolgd door [A-Za-z0-9_] (letters, cijfers of een onderstrepingsteken). Bijvoorbeeld, _Test_ is een geldige kolomnaam, terwijl &Test dat niet is.
Als een naam van een bronkolom niet aan deze regel voldoet, dan moet een transformatie worden gebruikt om de kolom te hernoemen.
- Het verwijderen of hernoemen van een brontabel wordt niet ondersteund.
Gegevenstypen
De volgende tabel toont de Kafka-gegevenstypen die worden ondersteund bij gebruik van Qlik Cloud en de standaardtoewijzing van Qlik Cloud-gegevenstypen.
Bij gebruik van de JSON-berichtindeling worden binaire waarden weergegeven als hexadecimale cijfers.
| Gegevenstypen Qlik Cloud | Kafka-doelgegevenstypen in schemaberichten |
|---|---|
|
DATUM |
DATUM |
|
TIJD |
TIJD |
|
DATETIME |
DATETIME |
|
BYTES |
BYTES (length) |
|
BLOB |
BLOB |
|
REAL4 |
REAL4 (7) |
|
REAL8 |
REAL8 (14) |
|
INT1 |
INT1 (3) |
|
INT2 |
INT2 (5) |
|
INT4 |
INT4 (10) |
|
INT8 |
INT8 (19) |
|
UINT1 |
UINT1 (3) |
|
UINT2 |
UINT2 (5) |
|
UINT4 Informatie
Waarden groter dan 2^31-1 worden niet ondersteund. |
UINT4 (10) |
|
UINT8 Informatie
Waarden groter dan 2^63-1 worden niet ondersteund. |
UINT8 (20) |
|
NUMERIEK |
NUMERIC (p,s) |
|
TEKENREEKS |
STRING (Length) |
|
WSTRING |
STRING (Length) |
|
CLOB |
CLOB |
|
NCLOB |
NCLOB |
|
BOOLEAANSE WAARDE |
BOOLEAN (1) |
Toewijzing aan JSON en Avro
De Avro-berichtindeling gebruikt logische typen voor een nauwkeurigere weergave van het gegevenstype.
Qlik Cloud gegevenstypen worden alleen toegewezen aan ondersteunde logische Avro-gegevenstypen als het selectievakje Logische gegevenstypen gebruiken voor specifieke gegevenstypen is ingeschakeld.
| Qlik Cloud-gegevenstypen | JSON | Logische Avro-gegevenstypen |
|---|---|---|
|
DATUM |
TEKENREEKS |
DATUM Annoteert een Avro INT. |
|
TIJD |
TEKENREEKS |
TIME-MILLIS Annoteert een Avro INT. |
|
TIMESTAMP |
TEKENREEKS |
TIMESTAMP-MICROS Annoteert een Avro LONG. |
|
TEKENREEKS |
TEKENREEKS |
- |
|
WSTRING |
TEKENREEKS |
- |
|
CLOB |
TEKENREEKS |
- |
|
NCLOB |
TEKENREEKS |
- |
|
NUMERIEK |
TEKENREEKS |
DECIMAL (p,s) Voorziet een Avro BYTES van annotaties. |
|
BYTES |
BYTES |
- |
|
BLOB |
BYTES |
- |
|
REAL4 |
FLOAT |
- |
|
REAL8 |
DOUBLE |
- |
|
INT1 |
INT |
- |
|
INT2 |
INT |
- |
|
INT4 |
INT |
- |
|
UINT1 |
INT |
- |
|
UINT2 |
INT |
- |
|
UINT4 |
LONG |
- |
|
INT8 |
LONG |
- |
|
UINT8 |
TEKENREEKS |
DECIMAL (20,0) Voorziet een Avro BYTES van annotaties. |
|
BOOLEAANSE WAARDE |
BOOLEAANSE WAARDE |
- |