Tidak, SeaTunnel menyokong Zeta, Spark dan Flink sebagai pilihan untuk enjin penyepaduan. Anda boleh memilih salah satu daripada mereka. Komuniti terutamanya mengesyorkan menggunakan Zeta, enjin berprestasi tinggi generasi baharu yang dibina khusus untuk senario penyepaduan.
Komuniti memberikan sokongan paling banyak untuk Zeta, yang juga mempunyai ciri yang lebih kaya.
SeaTunnel menyokong pelbagai sumber data dan destinasi. Anda boleh mendapatkan senarai terperinci di laman web rasmi:
Pada masa ini, CDC disokong untuk MongoDB CDC, MySQL CDC, OpenGauss CDC, Oracle CDC, PostgreSQL CDC, SQL Server CDC, TiDB CDC, dll. Untuk butiran lanjut, rujuk dokumentasi Sumber.
Ya, ia disokong dengan melanggan binlog MySQL dan menghuraikan binlog pada pelayan penyegerakan.
Anda memerlukan kebenaran PILIH pada pangkalan data dan jadual yang berkaitan.
GRANT SHOW DATABASES, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'username'@'host' IDENTIFIED BY 'password'; FLUSH PRIVILEGES;
[mysqld] log-bin=/var/log/mysql/mysql-bin.log expire_logs_days = 7 binlog_format = ROW binlog_row_image=full
service mysql restart
Menggunakan SQL Server CDC sebagai sumber data memerlukan mendayakan ciri MS-CDC dalam SQL Server. Langkah-langkahnya adalah seperti berikut:
EXEC xp_servicecontrol N'querystate', N'SQLServerAGENT'; -- If the result is "running," it means the agent is enabled. Otherwise, it needs to be started manually.
/opt/mssql/bin/mssql-conf setup The result that is returned is as follows: 1) Evaluation (free, no production use rights, 180-day limit) 2) Developer (free, no production use rights) 3) Express (free) 4) Web (PAID) 5) Standard (PAID) 6) Enterprise (PAID) 7) Enterprise Core (PAID) 8) I bought a license through a retail sales channel and have a product key to enter.
Pilih pilihan yang sesuai berdasarkan situasi anda.
Pilih pilihan 2 (Pembangun) untuk versi percuma yang termasuk ejen. Dayakan ejen dengan menjalankan:
/opt/mssql/bin/mssql-conf set sqlagent.enabled true
Jika menggunakan Windows, dayakan Ejen Pelayan SQL (cth., untuk SQL Server 2008):
GRANT SHOW DATABASES, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'username'@'host' IDENTIFIED BY 'password'; FLUSH PRIVILEGES;
[mysqld] log-bin=/var/log/mysql/mysql-bin.log expire_logs_days = 7 binlog_format = ROW binlog_row_image=full
service mysql restart
Tidak, penyegerakan CDC tidak disokong untuk jadual tanpa kunci utama. Ini kerana, jika terdapat dua baris yang sama di hulu dan satu dipadamkan atau diubah suai, adalah mustahil untuk membezakan baris mana yang harus dipadamkan atau diubah suai di hiliran, yang berpotensi mengakibatkan kedua-dua baris terjejas.
Ralat ini berlaku apabila slot replikasi dalam PostgreSQL penuh dan perlu dilepaskan. Ubah suai fail postgresql.conf untuk meningkatkan max_wal_senders dan max_replication_slots, kemudian mulakan semula perkhidmatan PostgreSQL menggunakan arahan:
EXEC xp_servicecontrol N'querystate', N'SQLServerAGENT'; -- If the result is "running," it means the agent is enabled. Otherwise, it needs to be started manually.
Contoh konfigurasi:
/opt/mssql/bin/mssql-conf setup The result that is returned is as follows: 1) Evaluation (free, no production use rights, 180-day limit) 2) Developer (free, no production use rights) 3) Express (free) 4) Web (PAID) 5) Standard (PAID) 6) Enterprise (PAID) 7) Enterprise Core (PAID) 8) I bought a license through a retail sales channel and have a product key to enter.
Jika anda menghadapi masalah semasa menggunakan SeaTunnel yang tidak dapat anda selesaikan, anda boleh:
Adakah anda ingin tahu cara mengisytiharkan pembolehubah dalam konfigurasi SeaTunnel dan menggantikan nilainya secara dinamik semasa masa jalan? Ciri ini sering digunakan dalam kedua-dua pemprosesan luar talian berjadual dan tidak berjadual sebagai pemegang tempat untuk pembolehubah seperti masa dan tarikh. Begini cara melakukannya:
Isytiharkan nama pembolehubah dalam konfigurasi. Di bawah ialah contoh transformasi SQL (sebenarnya, sebarang nilai dalam format kunci = nilai boleh menggunakan penggantian berubah):
/opt/mssql/bin/mssql-conf set sqlagent.enabled true
Untuk menjalankan SeaTunnel dalam mod Zeta Local, gunakan arahan berikut:
Open "SQL Server Configuration Manager" from the Start menu, navigate to "SQL Server Services," right-click the "SQL Server Agent" instance, and start it.
Gunakan parameter -i atau --variable diikuti dengan key=value untuk menentukan nilai pembolehubah, memastikan kunci sepadan dengan nama pembolehubah dalam konfigurasi. Untuk butiran lanjut, rujuk: https://seatunnel.apache.org/docs/concept/config
Untuk memecahkan teks panjang kepada berbilang baris, gunakan petikan berganda tiga untuk menunjukkan permulaan dan akhir:
USE TestDB; -- Replace with your actual database name EXEC sys.sp_cdc_enable_db; -- Check if the database has CDC enabled SELECT name, is_cdc_enabled FROM sys.databases WHERE name = 'database'; -- Replace with the name of your database
Penggantian pembolehubah dalam teks berbilang baris adalah rumit, kerana pembolehubah tidak boleh disertakan dalam petikan ganda tiga:
USE TestDB; -- Replace with your actual database name EXEC sys.sp_cdc_enable_table @source_schema = 'dbo', @source_name = 'table', -- Replace with the table name @role_name = NULL, @capture_instance = 'table'; -- Replace with a unique capture instance name -- Check if the table has CDC enabled SELECT name, is_tracked_by_cdc FROM sys.tables WHERE name = 'table'; -- Replace with the table name
Lihat isu untuk mendapatkan maklumat lanjut: lightbend/config#456.
Fail konfigurasi log4j setunnel-e2e terletak di setunnel-e2e/seatunnel-e2e-common/src/test/resources/log4j2.properties. Anda boleh mengubah suai parameter pengelogan terus dalam fail konfigurasi.
Sebagai contoh, untuk mendapatkan log ujian E2E yang lebih terperinci, hanya turun taraf rootLogger.level dalam fail konfigurasi.
SeaTunnel mempunyai reka bentuk seni bina yang abstrak dan berstruktur serta pelaksanaan kod, menjadikannya pilihan yang sangat baik untuk mempelajari seni bina data besar. Anda boleh mula meneroka dan menyahpepijat kod sumber daripada modul contoh setunnel: SeaTunnelEngineLocalExample.java. Untuk butiran lanjut, rujuk: https://seatunnel.apache.org/docs/contribution/setup
Tidak, anda hanya perlu menumpukan pada antara muka yang berkaitan dengan sumber, sinki dan transformasi. Jika anda ingin membangunkan penyambung anda sendiri menggunakan API SeaTunnel (Penyambung V2), rujuk Panduan Pembangunan Penyambung.
Atas ialah kandungan terperinci Menakluki Cabaran SeaTunnel: Penyelesaian Pilihan Anda Didedahkan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!