Wspierane bazy danych
Gifröst wykorzystuje konektory Kafka Connect do odczytu zmian z systemów źródłowych i przekazywania ich do pipeline'u platformy. Zakres wspieranych wersji baz zależy od dobranej wersji pluginu Debezium/Kafka Connect. Domyślny zestaw konektorów może korzystać z Debezium 3.1.3.Final, a dla starszych wersji baz można skonfigurować odpowiednią wcześniejszą wersję konektora.
Zakres bazuje na kompatybilności konektorów Debezium i Kafka Connect używanych w platformie oraz na wymaganych sterownikach baz danych.
Systemy źródłowe
Bazy źródłowe
Bazy źródłowe to systemy, z których Gifröst pobiera zmiany danych przy użyciu konektorów źródłowych Kafka Connect. Lista poniżej łączy obecne i historyczne zakresy wersji wspierane przez odpowiednie wersje konektorów Debezium.
IBM Db2
Konektor Debezium Db2
11.5Informix
Konektor Debezium Informix
12, 14MongoDB
Konektor Debezium MongoDB
3.2 - 8.0MySQL
Konektor Debezium MySQL
5.7 - 9.1Oracle
Konektor Debezium Oracle
11g - 23aiPostgreSQL
Konektor Debezium PostgreSQL
9.6 - 17
SQL Server
Konektor Debezium SQL Server
2017, 2019, 2022| Baza danych | Konektor źródłowy | Wspierane wersje bazy | Uwagi |
|---|---|---|---|
| IBM Db2 | io.debezium.connector.db2.Db2Connector | 11.5 | Wykorzystuje źródłowy konektor Debezium Db2. |
| Informix | io.debezium.connector.informix.InformixConnector | 12, 14 | W zestawie testowanym Debezium 3.1 używany jest sterownik Informix JDBC 4.50.11. |
| MongoDB | io.debezium.connector.mongodb.MongoDbConnector | 3.2, 3.4, 3.6, 4.0, 4.2, 4.4, 5.0, 6.0, 7.0, 8.0 | Odczytuje zmiany z replik lub klastrów sharded skonfigurowanych zgodnie z wymaganiami Debezium. |
| MySQL | io.debezium.connector.mysql.MySqlConnector | 5.7, 8.0.x, 8.4.x, 9.0, 9.1 | Wykorzystuje mechanizm CDC oparty o binary log MySQL. |
| Oracle | io.debezium.connector.oracle.OracleConnector | 11g, 12c, 19c, 21c, 23ai | Oracle CDC jest wspierane od Oracle 11g; dla 23ai wymagany jest tryb LogMiner. |
| PostgreSQL | io.debezium.connector.postgresql.PostgresConnector | 9.6, 10, 11, 12, 13, 14, 15, 16, 17 | Wykorzystuje logical decoding z pgoutput lub decoderbufs. |
| SQL Server | io.debezium.connector.sqlserver.SqlServerConnector | 2017, 2019, 2022 | Wykorzystuje mechanizmy CDC SQL Server. |
Lista konektorów jest elastyczna. Na żądanie można dodać inne standardowe, niestandardowe lub własne konektory, jeżeli są dostępne jako pluginy Kafka Connect i mogą zostać wdrożone na workerze Kafka Connect.
Bazy docelowe
Systemy docelowe
Bazy docelowe
Bazy docelowe to systemy, do których Gifröst zapisuje dane z tematów Kafka przy użyciu konektorów sink. Głównym konektorem dla relacyjnych baz danych jest JDBC Sink, który wykorzystuje dialekt bazy oraz odpowiedni sterownik JDBC.
| Baza docelowa | Konektor docelowy | Wersja konektora | Wspierane wersje bazy | Uwagi |
|---|---|---|---|---|
| PostgreSQL | io.confluent.connect.jdbc.JdbcSinkConnector / io.debezium.connector.jdbc.JdbcSinkConnector | Confluent 10.8.4, Debezium 3.4.0.Final | 9.6, 10, 11, 12, 13, 14, 15, 16, 17, 18 | Wymagany jest kompatybilny sterownik PostgreSQL JDBC. Confluent JDBC Sink zawiera sterownik PostgreSQL JDBC i obsługuje PostgreSqlDatabaseDialect. |
| Oracle | io.confluent.connect.jdbc.JdbcSinkConnector / io.debezium.connector.jdbc.JdbcSinkConnector | Confluent 10.8.4, Debezium 3.4.0.Final | 11g, 12c, 19c, 21c, 23ai | W JDBC Sink wymagany jest właściwy sterownik Oracle JDBC, np. ojdbc8 lub ojdbc10. |
| MySQL | io.confluent.connect.jdbc.JdbcSinkConnector / io.debezium.connector.jdbc.JdbcSinkConnector | Confluent 10.8.4, Debezium 3.4.0.Final | 5.7, 8.0.x, 8.4.x, 9.0, 9.1 | Wymagany jest kompatybilny MySQL Connector/J. Confluent JDBC Sink obsługuje MySqlDatabaseDialect. |
| Microsoft SQL Server | io.confluent.connect.jdbc.JdbcSinkConnector / io.debezium.connector.jdbc.JdbcSinkConnector | Confluent 10.8.4, Debezium 3.4.0.Final | 2017, 2019, 2022 | Confluent JDBC Sink zawiera sterowniki dla SQL Server i obsługuje SqlServerDatabaseDialect. |
| IBM Db2 | io.confluent.connect.jdbc.JdbcSinkConnector / io.debezium.connector.jdbc.JdbcSinkConnector | Confluent 10.8.4, Debezium 3.4.0.Final | 11.5 | Wymaga doinstalowania sterownika Db2 JDBC, np. db2jcc4.jar. |
| SAP HANA | io.confluent.connect.jdbc.JdbcSinkConnector | Confluent 10.8.4 | Zgodnie z użytym sterownikiem SAP HANA JDBC | Confluent JDBC Sink obsługuje SapHanaDatabaseDialect, ale dokumentacja Confluent nie publikuje zamkniętej listy wersji SAP HANA. |
| SQLite | io.confluent.connect.jdbc.JdbcSinkConnector | Confluent 10.8.4 | Zgodnie z dołączonym sterownikiem SQLite JDBC 4.0 | Zalecane głównie do testów i developmentu. |
| Apache Derby | io.confluent.connect.jdbc.JdbcSinkConnector | Confluent 10.8.4 | Zgodnie z użytym sterownikiem JDBC dla Derby | Obsługiwane przez DerbyDatabaseDialect; dokumentacja Confluent nie publikuje zamkniętej listy wersji Derby. |
| Sybase | io.confluent.connect.jdbc.JdbcSinkConnector | Confluent 10.8.4 | Zgodnie z użytym sterownikiem JDBC dla Sybase | Obsługiwane przez SybaseDatabaseDialect; dokumentacja Confluent nie publikuje zamkniętej listy wersji Sybase. |
| Vertica | io.confluent.connect.jdbc.JdbcSinkConnector | Confluent 10.8.4 | Zgodnie z użytym sterownikiem JDBC dla Vertica | Obsługiwane przez VerticaDatabaseDialect; dokumentacja Confluent nie publikuje zamkniętej listy wersji Vertica. |
| MongoDB | io.debezium.connector.mongodb.MongoDbSinkConnector | Debezium 3.1.3.Final | 6.0, 7.0, 8.0 | Debezium MongoDB Sink zapisuje zdarzenia CDC z tematów Kafka do docelowej bazy MongoDB. |
Konektory JDBC mogą obsługiwać również inne bazy danych zgodne z JDBC, jeżeli dostępny jest właściwy sterownik JDBC 4.0 i zostanie on zainstalowany na każdym workerze Kafka Connect. Dla części dialektów JDBC producent konektora nie publikuje zamkniętej listy wersji silnika bazy; kompatybilność wynika wtedy z użytego sterownika JDBC i testów wdrożeniowych. Lista może być rozszerzana na żądanie o standardowe, niestandardowe lub własne konektory Kafka Connect.
Widoczne w Connector Managerze konektory HDFS i AWS S3 są wspieranymi systemami docelowymi dla plików i obiektów, ale nie są relacyjnymi bazami danych. Można je dokumentować osobno jako docelowe systemy składowania.