Muistiinpano
Tämän sivun käyttö edellyttää valtuutusta. Voit yrittää kirjautua sisään tai vaihtaa hakemistoa.
Tämän sivun käyttö edellyttää valtuutusta. Voit yrittää vaihtaa hakemistoa.
Tässä artikkelissa kerrotaan, miten voit lisätä PostgreSQL-tietokannan Change Data Capture (CDC) -lähteen tapahtumavirtaan.
PostgreSQL-tietokannan Change Data Capture (CDC) -lähdeliittimen avulla Voit tallentaa tilannevedoksen nykyisistä tiedoista PostgreSQL-tietokantaan. Tällä hetkellä PostgreSQL-tietokannan muutostietokantaa (CDC) tuetaan seuraavista palveluista, joissa tietokantoja voi käyttää julkisesti:
- Azure-tietokanta PostgreSQL-:lle
- Amazon RDS PostgreSQL:lle
- Amazon Aurora PostgreSQL
- Google Cloud SQL PostgreSQL:lle
Kun PostgreSQL-tietokannan CDC-lähde on lisätty tapahtumavirtaan, se tallentaa rivitason muutokset määritettyihin taulukoihin. Nämä muutokset voidaan sitten käsitellä reaaliaikaisesti ja lähettää eri kohteisiin tarkempaa analysointia varten.
Edellytykset
Työtilan käyttöoikeus Fabric-kapasiteetin käyttöoikeustilassa (tai) kokeiluversion käyttöoikeustilassa Osallistuja-oikeudella tai korkeammilla käyttöoikeuksilla.
Rekisteröity käyttöoikeus PostgreSQL-tietokannassa.
PostgreSQL-tietokannan on oltava julkisesti käytettävissä, eikä se saa olla palomuurin takana tai suojattu näennäisverkossa.
Cdc käytössä PostgreSQL-tietokannassa ja -taulukoissa.
Jos sinulla on Azure-tietokanta PostgreSQL:ää varten, ota CDC käyttöön noudattamalla seuraavan osion ohjeita. Lisätietoja on kohdassa Looginen replikointi ja looginen koodaus – Azure-tietokanta PostgreSQL: lle – joustava palvelin.
Muiden PostgreSQL-tietokantojen osalta katso Debezium-liitin PostgreSQL:: Debezium Documentation -tietokannalle.
Jos sinulla ei ole tapahtumastreamia, luo tapahtumavirta.
CDC:n ottaminen käyttöön PostgreSQL-tietokannassa
Tässä osassa käytetään esimerkkinä Azure Database for PostgreSQL.
Ota CDC käyttöön Azure-tietokannassa PostgreSQL-joustavalle palvelimelle seuraavasti:
Valitse Azure-portaali: Azure-tietokanta PostgreSQL:n joustavalle palvelimelle -sivulla palvelinparametrit siirtymisvalikosta.
Palvelimen parametrit -sivulla:
- Määritä wal_level loogisiksi.
- Päivitä max_worker_processes vähintään arvoon 16.
Tallenna muutokset ja käynnistä palvelin uudelleen.
Varmista, että PostgreSQL:n joustavan palvelimen Azure-tietokanta sallii julkisen verkkoliikenteen.
Myönnä järjestelmänvalvojan käyttäjien replikoinnin käyttöoikeudet suorittamalla seuraava SQL-lauseke. Jos haluat käyttää muuta käyttäjätiliä PostgreSQL DB:n yhdistämiseen CDC:n noutamiseksi, varmista, että käyttäjä on -taulukon omistaja.
ALTER ROLE <admin_user_or_table_owner_user> WITH REPLICATION;
Käynnistä ohjattu Tietolähteen valitseminen -toiminto
Jos et ole vielä lisännyt lähdettä eventstreamiin, valitse Käytä ulkoista lähdettä -ruutu.
Jos lisäät lähdekoodin jo julkaistuun tapahtumavirtaan, vaihda muokkaustilaan . Nauhalta valitse Lisää lähde>Ulkoiset lähteet.
Etsi
PostgreSQL-tietokanta CDC:n määrittäminen ja siihen yhdistäminen
Valitse Yhdistä-sivullaUusi yhteys.
Anna Yhteysasetukset-osiossa seuraavat tiedot.
Palvelin: PostgreSQL-tietokannan palvelinosoite, esimerkiksi my-pgsql-server.postgres.database.azure.com.
Tietokanta: Tietokannan nimi, esimerkiksi my_database.
Yhteyden nimi: Anna yhteyden nimi.
Todennuslaji: valitse Perus ja anna tietokannan käyttäjänimi ja salasana .
Muistiinpano
Tällä hetkellä Fabric-tapahtumavirrat tukevat vain perustodentamista.
Viimeistele yhteysasetukset valitsemalla Yhdistä .
Portti: Anna palvelimesi porttinumero. Oletusarvo on 5432. Jos valittu pilviyhteys on määritetty kohdassa Yhteyksien ja yhdyskäytävien hallinta, varmista, että porttinumero vastaa siinä määritettyä. Jos ne eivät täsmää, pilviyhteyden porttinumero Yhteyksien ja yhdyskäytävien hallinta etusijalla.
Voit valita kahdesta vaihtoehdosta, kun sieppaat muutoksia tietokantataulukoista:
- Kaikki taulukot: Sieppaa muutokset tietokannan jokaisesta taulukosta.
-
Anna taulukon nimet: Voit määrittää taulukoiden alijoukon käyttämällä pilkuin eroteltua luetteloa. Voit käyttää jompaakumpaa seuraavista: koko taulukon tunnisteita muodossa
schemaName.tableNametai kelvollisia säännönmukaisia lausekkeita. Esimerkkejä: -
dbo.test.*: Valitse kaikki taulukot, joiden nimi alkaatestdborakenteen mukaan. -
dbo\.(test1|test2): Valitsedbo.test1jadbo.test2.
Voit yhdistää molemmat muodot luettelossa. Koko merkinnän merkkirajoitus on 102 400 merkkiä.
Paikan nimi (valinnainen): Anna PostgreSQL:n loogisen koodauksen koodauksen paikan nimi, joka luotiin tietojen suoratoiston muutoksille tietystä laajennuksesta tietylle tietokannalle tai rakenteelle. Palvelin käyttää tätä ajanjaksoa tapahtumien suoratoistoon Eventstream-suoratoistoyhdistimeen. Sen tulee sisältää vain pieniä kirjaimia, numeroita ja alaviivoja.
- Jos tätä ei määritetä, paikan luomiseen käytetään GUID-tunnusta, joka edellyttää asianmukaiset tietokannan käyttöoikeudet.
- Jos määritetty paikan nimi on olemassa, liitin käyttää sitä suoraan.
Voit avata Lisäasetukset päästäksesi lisää konfiguraatiovaihtoehtoja PostgreSQL-tietokannan CDC-lähteelle:
Julkaisun nimi: Määrittää käytettävän PostgreSQL:n loogisen replikoinnin julkaisun nimen. Tämän on vastattava tietokannan olemassa olevaa julkaisua, tai se luodaan automaattisesti automaattisen luontitilan mukaan. Oletusarvo:
dbz_publication.Muistiinpano
Liittimen käyttäjällä on oltava yläkäyttäjän käyttöoikeudet julkaisun luomiseksi. Julkaisu kannattaa luoda manuaalisesti ennen yhdistimen ensimmäistä käynnistystä käyttöoikeuksiin liittyvien ongelmien välttämiseksi.
Julkaisun automaattinen luontitila: Määrittää, luodaanko julkaisu automaattisesti ja miten se luodaan. Vaihtoehtoja ovat seuraavat:
-
Filtered(oletus): Jos määritettyä julkaisua ei ole, liitin luo sellaisen, joka sisältää vain valitut taulukot (kuten taulukon sisällytysluettelossa on määritetty). -
AllTables: Jos määritetty julkaisu on olemassa, liitin käyttää sitä. Jos sitä ei ole olemassa, liitin luo sellaisen, joka sisältää kaikki tietokannan taulukot. -
Disabled: Yhdistin ei luo julkaisua. Jos määritetty julkaisu puuttuu, liitin aiheuttaa poikkeuksen ja pysähtyy. Tässä tapauksessa julkaisu on luotava tietokannassa manuaalisesti.
Lisätietoja on julkaisun automaattisen luonnin tilan Debezium-dokumentaatiossa
-
Desimaalikäsittelytila: Määrittää, miten liitin käsittelee PostgreSQL
DECIMAL- jaNUMERICsarakearvot:-
Precise: Edustaa arvoja käyttäen tarkkoja desimaalityyppejä (esimerkiksi JavaBigDecimal), joilla varmistetaan tietojen esityksen täysi tarkkuus ja tarkkuus. -
Double: muuntaa arvot kaksoistarkoiksi liukupisteluvuiksi. Tämä parantaa käytettävyyttä ja suorituskykyä, mutta saattaa johtaa tarkkuuden heikkenemiseen. -
String: Koodaa arvot muotoiltuina merkkijonoina. Tämän ansiosta niitä on helppo käyttää jatkojalostusjärjestelmissä, mutta ne menettävät semanttisia tietoja alkuperäisestä numeerisesta tyypistä.
-
Snapshot-tila: Määritä kriteerit snapshotin suorittamiselle, kun liitin käynnistyy:
-
Initial: Liitin suorittaa snapshotin vain, kun loogisen palvelimen nimen offsetteja ei ole kirjattu tai jos se havaitsee, että aiempi snapshotti epäonnistui valmistumaan. Snapshotin valmistuttua liitin alkaa striimata tapahtumatietueita myöhempiä tietokantamuutoksia varten. -
InitialOnly: Liitin suorittaa snapshotin vain, kun loogiselle palvelimen nimelle ei ole tallennettu offsetteja. Snapshotin valmistuttua liitin pysähtyy. Se ei siirry suoratoistoon lukeakseen muutoksia binlogista. -
NoData: Liitin suorittaa snapshotin, joka tallentaa vain skeeman, mutta ei taulukkodataa. Aseta tämä asetus, jos et tarvitse johdonmukaista tilannekuvaa datasta, vaan tarvitset vain ne muutokset, jotka tapahtuvat liittimen käynnistymisestä lähtien.
-
Heartbeat-toimintokysely: Määrittää kyselyn, jonka liitin suorittaa lähdetietokannassa, kun liitin lähettää heartbeat-viestin.
Snapshot-valintalauseen ohitus: Määrittää taulukon rivit, jotka sisällytetään snapshot-ohjelmaan. Käytä ominaisuutta, jos haluat, että tilannekuva sisältää vain osan taulukon riveistä. Tämä ominaisuus vaikuttaa vain snapshot-otoksiin. Se ei koske tapahtumia, joita liitin lukee lokista.
Tarkista yhteenveto Tarkista + yhdistä -sivulla ja valitse sitten Lisää.
Näytä päivitetty tapahtumavirta
Näet PostgreSQL-tietokannan CDC-lähteen lisättynä tapahtumavirtaasi Muokkaa-tilassa.
Jos haluat ottaa käyttöön tämän äskettäin lisätyn PostgreSQL DB CDC -lähteen, valitse Julkaise. Kun olet suorittanut nämä vaiheet, PostgreSQL DB CDC -lähde on visualisoitavissa reaaliaikaisessa näkymässä.
Liittyvä sisältö
Muut liittimet:
- Amazon Kinesis -tietovirrat
- Azure Cosmos DB
- Azure Tapahtumatoiminnot
- Azuren palveluväylä
- Azure IoT Hub
- Azure SQL -tietokannan muutos tietokaappaus (CDC)
- Yhtymäkohta Kafka
- Mukautettu päätepiste
- Google Cloud Pub/Sub
- MySQL-tietokannan CDC
- PostgreSQL-tietokannan CDC
- Mallitiedot
- Azure Blob -säilön tapahtumat
- Fabric-työtilatapahtuma