Kafka-Clients, wenn Sie die volle Kontrolle über Ihren Code haben und Sie Experte sind, möchten Sie eine Anwendung mit Kafka verbinden und den Code der Anwendung ändern.
push data into Kafka
pull data from Kafka.
https://cwiki.apache.org/confluence/display/KAFKA/Clients
Kafka Connect, wenn Sie nicht die Kontrolle auf fremden Code neu in Kafka und Sie haben Kafka zu Datenspeichern zu verbinden, die Sie nicht Code ändern können.
Der Anwendungsbereich von Kafka Connect ist eng: Es konzentriert sich nur auf das Kopieren von Streaming-Daten von und nach Kafka und behandelt keine anderen Aufgaben.
http://docs.confluent.io/2.0.0/connect/
Ich füge einige Zeilen andere Blogs bilden zu erklären Unterschiede
Unternehmen, die Kafka schreibt eine Reihe von Code zu übernehmen wollen, dass ihre Datenströme zu veröffentlichen. Was wir aus Erfahrung gelernt haben, ist, dass dies richtiger ist, als es scheint. Insbesondere gibt es eine Reihe von Problemen, die jeder Connector zu lösen hat:
• Schemaverwaltung: Die Fähigkeit der Datenpipeline, Schemainformationen zu übermitteln, wenn sie verfügbar sind. In Ermangelung dieser Fähigkeit müssen Sie es stromabwärts neu erstellen. Wenn es mehrere Konsumenten für dieselben Daten gibt, muss jeder Verbraucher sie neu erstellen. Wir werden die verschiedenen Nuancen der Schemaverwaltung für Datenpipelines in einem zukünftigen Blogpost behandeln.
• Fehlertoleranz: Führen Sie mehrere Instanzen eines Prozesses und
• Parallelität zu Ausfällen elastisch sein: Horizontal Skala Datensätze in großem Maßstab
• Latency zu handhaben: Ingest, Transport- und Prozessdaten in Echtzeit und sich dadurch von einmaligen Daten-Dumps entfernen.
• Lieferung Semantik: starke Garantien bieten, wenn Maschinen Absturz oder Prozesse scheitern
• Operationen und Überwachung: die Gesundheit und den Fortschritt eines jeden Datenintegrationsprozess in konsistenter Weise
in
Diese sind wirklich harte Probleme überwachen es ist nicht möglich, sie einzeln in jedem Connector zu lösen. Stattdessen möchten Sie eine einzelne Infrastrukturplattform, auf der Connectors aufbauen können, um diese Probleme auf eine konsistente Weise zu lösen.
Bis vor kurzem erforderte die Übernahme von Kafka für die Datenintegration ein erhebliches Entwickler-Know-how. Entwicklung eines Kafka-Connectors, der auf den Client-APIs erstellt werden muss.
https://www.confluent.io/blog/announcing-kafka-connect-building-large-scale-low-latency-data-pipelines/