Apache Kafka ja suoratoistonkäsittelyn perusteet · Oppitunti

Sink-connectorit datan vientiin

Tutustu sink-connectorien käyttöön datan viemisessä Kafka-topiceista tietokantoihin, datajärviin ja muihin kohteisiin.

Oppitunti 3/411 vaihetta

Sink-connectorit datan vientiin on ilmainen Apache Kafka ja suoratoistonkäsittelyn perusteet-oppitunti CoddyKitissä. Tämä on oppitunti 3/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Apache Kafka ja suoratoistonkäsittelyn perusteet-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Apache Kafka ja suoratoistonkäsittelyn perusteet-kurssilla on yhteensä 4 oppituntia.

Datan vieminen Kafkasta

Tervetuloa Kafka Connectia käsittelevän viimeisen oppitunnin pariin! Olemme oppineet tuomaan dataa Kafkaan Source Connectorien avulla. Nyt tutustumme siihen, miten dataa saadaan ulos.

Tässä oppitunnissa keskitytään Sink Connector -liittimiin, jotka ovat olennaisia, kun dataa siirretään Kafka-aiheista ulkoisiin järjestelmiin, kuten tietokantoihin, data warehouse -järjestelmiin tai analytiikka-alustoille.

Miksi Sink Connectoreita käytetään?

Kuvitelkaa, että Kafkaan virtaa reaaliaikaista dataa, mutta liiketoimintatiedon hallinnan työkalut tai vanhat sovellukset tarvitsevat datan toisessa järjestelmässä.

  • Integrointi: Kafka voidaan yhdistää lähes mihin tahansa tietovarastoon.
  • Ei omaa koodia: Yleisten kohteiden käyttöä varten ei tarvitse kirjoittaa monimutkaisia kuluttajasovelluksia.
  • Luotettavuus: Sisäänrakennettu vikasietoisuus ja toimitustakuut.
  • Skaalautuvuus: Datan vientiä voi skaalata helposti lisäämällä liitintehtäviä.

Miten Sink Connectorit toimivat

Sink Connector toimii erikoistuneen Kafka-kuluttajan tavoin. Perustoimintaperiaate on seuraava:

  1. Liitin suoritetaan Kafka Connect -työntekijän sisällä.
  2. Se tilaa yhden tai useamman Kafka-aiheen.
  3. Se kuluttaa viestejä näistä aiheista.
  4. Se muuntaa datan (jos näin on määritetty) ja kirjoittaa sen kohteena olevaan ulkoiseen järjestelmään.
  5. Se hallitsee Kafkan offset-arvoja ja varmistaa datan luotettavan käsittelyn.

Yleisiä Sink Connectorien kohteita

Kafka Connect tarjoaa laajan ekosysteemin valmiita Sink Connectoreita monenlaisille kohteille. Suosittuja esimerkkejä ovat:

  • Tietokannat: PostgreSQL, MySQL, Oracle, SQL Server (JDBC:n kautta)
  • Pilvitallennus: Amazon S3, Google Cloud Storage, Azure Blob Storage
  • Hakukoneet: Elasticsearch, Solr
  • Data warehouse -järjestelmät: Snowflake, Redshift
  • Muut järjestelmät: HDFS, JMS-jonot, HTTP-päätepisteet

Sink Connectorin perusmääritykset

Sink Connectorin määrittäminen muistuttaa Source Connectorien määrittämistä. Sen ominaisuudet määritetään JSON-tiedostossa tai suoraan Connectin REST-rajapinnan kautta. Keskeisiä ominaisuuksia ovat:

  • name: Liittimen yksilöllinen nimi.
  • connector.class: Liittimen tietty toteutus (esimerkiksi JdbcSinkConnector).
  • topics tai topics.regex: Kafka-aiheet, joista data luetaan.
  • key.converter & value.converter: Tapa, jolla Kafka-datan sarjamuoto puretaan.

Esimerkki: FileStreamSinkConnector

Tarkastellaan yksinkertaista esimerkkiä: FileStreamSinkConnector-liitintä. Tämä sisäänrakennettu liitin kirjoittaa Kafka-aiheen dataa paikalliseen tiedostoon. Se sopii hyvin Sink Connectorien toiminnan havainnollistamiseen.

Tässä on sen perusmääritykset sisältävä JSON:

{ "name": "file-sink-connector",
  "config": {
    "connector.class": "org.apache.kafka.connect.file.FileStreamSinkConnector",
    "tasks.max": "1",
    "topics": "my_test_topic",
    "file": "/tmp/kafka-sink-output.txt",
    "key.converter": "org.apache.kafka.connect.storage.StringConverter",
    "value.converter": "org.apache.kafka.connect.storage.StringConverter"
  }
}

Sink Connectorin käyttöönotto

Kun liittimen määritykset ovat valmiit (kuten yllä oleva file-sink-config.json), liitin otetaan käyttöön Kafka Connect -klusterissa suorittamalla curl-komento Connectin REST-rajapintaa vasten:

Tämä komento käskee Connect-klusteria luomaan ja käynnistämään uuden liitininstanssin määritysten perusteella.

curl -X POST -H "Content-Type: application/json" \
  --data @file-sink-config.json \
  http://localhost:8083/connectors

Dataformaatit ja muuntimet

Kun Sink Connector lukee dataa Kafkasta, se käyttää muuntimia viestien avainten ja arvojen sarjamuodon purkamiseen. Yleisiä muuntimia ovat:

  • StringConverter: Pelkkää tekstidataa varten.
  • JsonConverter: JSON-muotoista dataa varten.
  • AvroConverter: Avro-sarjamuotoon muunnettua dataa varten (usein Schema Registryn kanssa).

Liitin ottaa tämän sarjamuodosta puretun datan ja muotoilee sen kohdejärjestelmälle sopivaksi (esimerkiksi SQL INSERT -lauseiksi tietokantaan kirjoittavassa sink-liittimessä).

Datan eheyden varmistaminen

Kafka Connect Sink Connectorit on suunniteltu luotettaviksi:

  • Vähintään kerran -toimitus: Useimmat Sink Connectorit takaavat, että jokainen viesti toimitetaan kohteeseen vähintään kerran myös virhetilanteissa.
  • Offset-arvojen hallinta: Liittimet vahvistavat offset-arvot automaattisesti Kafkaan ja seuraavat, mikä data on käsitelty onnistuneesti.
  • Virheenkäsittely: Liittimet voidaan määrittää yrittämään epäonnistuneita toimintoja uudelleen tai lähettämään ongelmalliset viestit Dead Letter Queueen (DLQ) myöhempää tarkastelua varten.

Sink Connector -haaste

Testataan, miten hyvin ymmärrätte Kafka Connect Sink Connectorit!

Kertaus: Sink Connectorit

Hienoa työtä! Nyt hallitsette Kafka Connect Sink Connectorien keskeiset käsitteet.

  • Sink Connectorit vievät dataa Kafka-aiheista erilaisiin ulkoisiin järjestelmiin.
  • Ne tarjoavat luotettavan, skaalautuvan ja koodittoman tavan integroida Kafka osaksi dataekosysteemiä.
  • Määrityksissä määritetään liitinluokka, aiheet ja kohteeseen liittyvät ominaisuudet.
  • Ne käsittelevät datan sarjamuodon purkamisen ja muotoilun sekä varmistavat toimitustakuut.

Kafka Connect yksinkertaistaa merkittävästi vankkojen dataputkien rakentamista!

Aloita maksutta

Opi Apache Kafka ja suoratoistonkäsittelyn perusteet tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
12
Oppitunnit
48

Usein kysytyt kysymykset

Onko oppitunti ”Sink-connectorit datan vientiin” ilmainen?

Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Apache Kafka ja suoratoistonkäsittelyn perusteet-oppimispolun 3 oppituntia, myös oppitunnin “Sink-connectorit datan vientiin”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Apache Kafka ja suoratoistonkäsittelyn perusteet-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Sink-connectorit datan vientiin”?

Tutustu sink-connectorien käyttöön datan viemisessä Kafka-topiceista tietokantoihin, datajärviin ja muihin kohteisiin. Harjoittelet Apache Kafka ja suoratoistonkäsittelyn perusteet-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Apache Kafka ja suoratoistonkäsittelyn perusteet-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Apache Kafka ja suoratoistonkäsittelyn perusteet-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/4.

Kuinka kauan ”Sink-connectorit datan vientiin”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Apache Kafka ja suoratoistonkäsittelyn perusteet-oppitunnilla?

Kyllä. Jokainen Apache Kafka ja suoratoistonkäsittelyn perusteet-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Johdatus Kafka Connectiin
  2. Lähdeconnectorit datan tuontiin
  3. Sink-connectorit datan vientiin
  4. Single Message Transform -muunnokset (SMT)
← Takaisin: Apache Kafka ja suoratoistonkäsittelyn perusteet