Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez a cikk bemutatja, hogyan vehet fel PostgreSQL Database Change Data Capture (CDC) forrást egy eseménystreambe.
A PostgreSQL Database Change Data Capture (CDC) forrásösszekötője a Microsoft Fabric-eseménystreamekhez lehetővé teszi, hogy pillanatképet készítsen az aktuális adatokról egy PostgreSQL-adatbázisban. A PostgreSQL Database Change Data Capture (CDC) jelenleg az alábbi szolgáltatásokból támogatott, ahol az adatbázisok nyilvánosan elérhetők:
- Azure Database for PostgreSQL
- Amazon RDS for PostgreSQL
- Amazon Aurora PostgreSQL
- Google Cloud SQL for PostgreSQL
Miután hozzáadta a PostgreSQL Database CDC-forrást az eseménystreamhez, rögzíti a megadott táblák sorszintű módosításait. Ezek a módosítások ezután valós időben feldolgozhatók, és elküldhetők különböző célhelyekre további elemzés céljából.
Előfeltételek
Hozzáférés egy munkaterülethez a Fabric-kapacitás licencelési módban vagy a Próbaverziós licenc módban, közreműködői vagy magasabb engedélyekkel.
Regisztrált felhasználói hozzáférés a PostgreSQL-adatbázisban.
A PostgreSQL-adatbázisnak nyilvánosan elérhetőnek kell lennie, és nem lehet tűzfal mögött vagy biztonságos virtuális hálózaton.
A CDC engedélyezve van a PostgreSQL-adatbázisban és a táblákban.
Ha rendelkezik Azure Database for PostgreSQL-sel, a CDC engedélyezéséhez kövesse a következő szakaszban leírt lépéseket. Részletes információkért lásd az Azure Database for PostgreSQL – Rugalmas kiszolgáló logikai replikációja és dekódolása.
Más PostgreSQL-adatbázisok esetén lásd a PostgreSQL Debezium-összekötőjének dokumentációját:: Debezium Documentation.
Ha nem rendelkezik eseménystreamel, hozzon létre egy eseménystreamet.
CDC engedélyezése a PostgreSQL-adatbázisban
Ez a szakasz példaként Azure Database for PostgreSQL használ.
Ha engedélyezni szeretné a CDC-t a rugalmas Azure Database for PostgreSQL-kiszolgálón, kövesse az alábbi lépéseket:
Az Azure Portal rugalmas Azure Database for PostgreSQL-kiszolgáló lapján válassza a kiszolgálóparamétereket a navigációs menüben.
A Kiszolgáló paraméterei lapon:
- Állítsa a wal_level logikai értékre.
- Frissítse a max_worker_processes értékét legalább 16-ra.
Mentse a módosításokat, és indítsa újra a kiszolgálót.
Ellenőrizze, hogy a rugalmas Azure Database for PostgreSQL-kiszolgálópéldány engedélyezi-e a nyilvános hálózati forgalmat.
Adja meg a rendszergazdai felhasználói replikációs engedélyeket az alábbi SQL-utasítás futtatásával. Ha más felhasználói fiókkal szeretné csatlakoztatni a PostgreSQL DB-t a CDC lekéréséhez, győződjön meg arról, hogy a felhasználó a tábla tulajdonosa.
ALTER ROLE <admin_user_or_table_owner_user> WITH REPLICATION;
Az Adatforrás kiválasztása varázsló indítása
Ha még nem adott hozzá forrást az eseményfolyamhoz, válassza a Külső forrás csempe használata lehetőséget.
Ha hozzáadja a forrást egy már közzétett eseményfolyamhoz, váltson szerkesztési módra. A menüszalagon válassza a Külső forrás forrás hozzáadása> lehetőséget.
A Adatforrás kiválasztása lapon keresse meg a PostgreSQL DB (CDC) csempét, és válassza a Csatlakozás lehetőséget.
A PostgreSQL Database CDC konfigurálása és csatlakoztatása
A Csatlakozás lapon válassza az Új kapcsolat lehetőséget.
A Kapcsolat beállításai szakaszban adja meg a következő adatokat.
Kiszolgáló: A PostgreSQL-adatbázis kiszolgálócíme, például my-pgsql-server.postgres.database.azure.com.
Adatbázis: Az adatbázis neve, például my_database.
Kapcsolat neve: Adja meg a kapcsolat nevét.
Hitelesítési típus, Válassza az Alapszintű lehetőséget, és adja meg az adatbázis felhasználónevét és jelszavát .
Megjegyzés
A Fabric-eseménystreamek jelenleg csak az alapszintű hitelesítést támogatják.
Válassza a Csatlakozás lehetőséget a kapcsolati beállítások végrehajtásához.
Port: Adja meg a kiszolgáló portszámát. Az alapértelmezett érték 5432. Ha a kiválasztott felhőkapcsolat konfigurálva van Kapcsolatok és átjárók kezelése, győződjön meg arról, hogy a portszám megegyezik az ott beállított számmal. Ha nem egyeznek, a felhő alapú kapcsolat portszáma Kapcsolatok és átjárók kezelése esetén élvez elsőbbséget.
Az adatbázistáblák módosításainak rögzítésekor két lehetőség közül választhat:
- Minden tábla: Rögzítse az adatbázis minden táblájának módosításait.
-
Adja meg a tábla nevét: Lehetővé teszi a táblák részhalmazának megadását vesszővel tagolt lista használatával. Használhatja a következőt: teljes táblaazonosítók a formátumban
schemaName.tableNamevagy érvényes reguláris kifejezések. Példák: -
dbo.test.*: Jelölje ki az összes tábláttest, amelynek a neve adbosémában kezdődik. -
dbo\.(test1|test2): Jelölje kidbo.test1ésdbo.test2.
A listában mindkét formátum kombinálható. A teljes bejegyzés teljes karakterkorlátja 102 400 karakter.
Pont neve (nem kötelező): Adja meg annak a PostgreSQL logikai dekódoló pontnak a nevét, amely egy adott adatbázis/séma egy adott beépülő moduljának változásainak streamelésével jött létre. A kiszolgáló ezzel a ponttal streameli az eseményeket az Eventstream stream-összekötőjébe. Csak kisbetűket, számokat és aláhúzásjeleket tartalmazhat.
- Ha nincs megadva, a rendszer egy GUID azonosítót használ a pont létrehozásához, amelyhez a megfelelő adatbázis-engedélyek szükségesek.
- Ha létezik egy megadott slot név, az összekötő azt közvetlenül használja.
A Speciális beállítások kibontásával további konfigurációs beállítások érhetők el a PostgreSQL Database CDC-forráshoz:
Kiadvány neve: A használni kívánt PostgreSQL logikai replikációs kiadvány nevét adja meg. Ennek meg kell egyeznie az adatbázisban lévő meglévő kiadványsal, vagy automatikusan létre kell hoznia az automatikus létrehozási módtól függően. Alapértelmezett érték:
dbz_publication.Megjegyzés
Az összekötő felhasználójának superuser engedélyekkel kell rendelkeznie a kiadvány létrehozásához. Az engedélyekkel kapcsolatos problémák elkerülése érdekében javasoljuk, hogy manuálisan hozza létre a kiadványt az összekötő első indítása előtt.
Kiadvány automatikus létrehozási módja: Azt szabályozza, hogy a kiadvány automatikusan létrejön-e és hogyan. A lehetőségek a következők:
-
Filtered(alapértelmezett): Ha a megadott kiadvány nem létezik, az összekötő létrehoz egy olyan kiadványt, amely csak a kijelölt táblákat tartalmazza (a tábla belefoglalási listájában megadottak szerint). -
AllTables: Ha a megadott kiadvány létezik, az összekötő azt használja. Ha nem létezik, az összekötő létrehoz egyet, amely tartalmazza az adatbázis összes tábláját. -
Disabled: Az összekötő nem hoz létre kiadványt. Ha a megadott kiadvány hiányzik, az összekötő kivételt jelez, és leáll. Ebben az esetben a kiadványt manuálisan kell létrehozni az adatbázisban.
További információ: Debezium-dokumentáció a kiadvány automatikus létrehozása módról
-
Decimális kezelési mód: Meghatározza, hogy az összekötő hogyan kezeli a PostgreSQL
DECIMAL- ésNUMERICoszlopértékeket:-
Precise: Pontos decimális típusokat (például JavaBigDecimal) használó értékeket jelöl az adatmegjelenítés teljes pontosságának és pontosságának biztosítása érdekében. -
Double: Az értékeket dupla pontosságú lebegőpontos számokká alakítja. Ez javítja a használhatóságot és a teljesítményt, de a pontosság csökkenéséhez vezethet. -
String: Formázott sztringekként kódolja az értékeket. Ez megkönnyíti a használatukat az alsóbb rétegbeli rendszerekben, de elveszíti az eredeti numerikus típus szemantikai adatait.
-
Pillanatkép mód: Adja meg a pillanatképek végrehajtásának feltételeit az összekötő indításakor:
-
Initial: Az összekötő csak akkor futtat egy pillanatfelvételt, ha a logikai kiszolgáló nevének eltolásait nem rögzítették, vagy ha azt észleli, hogy egy előző pillanatfelvétel nem fejeződött be. A pillanatkép befejeződése után az összekötő megkezdi az eseményrekordok streamelésének megkezdését az adatbázis későbbi módosításaihoz. -
InitialOnly: A csatlakozó csak akkor futtat pillanatképet, ha a logikai kiszolgáló nevéhez nem lettek eltolási adatok rögzítve. A pillanatkép befejeződése után az összekötő leáll. Nem vált át streamelésre a változási események olvasásához a binlogból. -
NoData: Az összekötő egy pillanatképet futtat, amely csak a sémát rögzíti, táblázatadatokat azonban nem. Ha nincs szüksége konzisztens pillanatképre az adatokról, akkor állítsa be ezt a beállítást, de csak az összekötő elindítása óta bekövetkező változásokra van szüksége.
-
Szívverési művelet lekérdezése:Azt a lekérdezést adja meg, amelyet az összekötő a forrásadatbázison hajt végre, amikor az összekötő szívverési üzenetet küld.
Pillanatképkiválasztási utasítás felülbírálása:A pillanatképbe belefoglalandó táblázatsorokat adja meg. Használja a tulajdonságot, ha azt szeretné, hogy egy pillanatkép csak a tábla sorainak egy részét tartalmazza. Ez a tulajdonság csak a pillanatképekre vonatkozik. Ez nem vonatkozik azokra az eseményekre, amelyeket az összekötő a naplóból olvas be.
A Véleményezés + csatlakozás lapon tekintse át az összegzést, majd válassza a Hozzáadás lehetőséget.
Frissített eseményfolyam megtekintése
Az eseménystreamhez hozzáadott PostgreSQL Database CDC-forrás szerkesztési módban látható.
Az újonnan hozzáadott PostgreSQL DB CDC-forrás implementálásához válassza a Közzététel lehetőséget. A lépések elvégzése után a PostgreSQL DB CDC-forrás elérhető a vizualizációhoz élő nézetben.
Kapcsolódó tartalom
Egyéb összekötők:
- Amazon Kinesis-adatfolyamok
- Azure Cosmos DB
- Azure-eseményközpontok
- Azure Service Bus
- Azure IoT Hub
- Azure SQL Database Adatváltozás Rögzítése (CDC)
- Confluent Kafka
- Egyéni végpont
- Google Cloud Pub/Sub
- MySQL Database CDC
- PostgreSQL Database CDC
- Mintaadatok
- Azure Blob Storage-események
- Fabric munkaterület esemény