Bagikan melalui


Batasan dan masalah yang diketahui dengan Azure Synapse Link untuk SQL

Artikel ini mencantumkan batasandan masalah yang diketahui dengan Azure Synapse Link untuk SQL.

Batasan

Bagian berikut mencantumkan batasan untuk Azure Synapse Link untuk SQL.

Azure SQL Database dan SQL Server 2022

  • Tabel sumber harus memiliki kunci primer.
  • Hanya replika utama yang dapat ditulis yang didukung sebagai sumber data untuk Azure Synapse Link untuk SQL.
  • Jenis data berikut ini tidak didukung untuk kunci primer dalam tabel sumber.
    • real
    • float
    • hierarchyid
    • aql_variant
    • timestamp
  • Ukuran baris tabel sumber tidak boleh melebihi 7.500 byte. Untuk tabel yang kolom panjang variabelnya disimpan di luar baris, penunjuk 24 byte akan disimpan di rekaman utama.
  • Saat tabel sumber awalnya di-snapshot, data tabel sumber apa pun yang berisi data objek besar (LOB) yang berukuran lebih besar dari 1 MB tidak didukung. Jenis data LOB ini meliputi: varchar(max), nvarchar(max), varbinary(max). Kesalahan dilemparkan dan data tidak diekspor ke Azure Synapse Analytics. Gunakan prosedur tersimpan sp_configure untuk meningkatkan nilai maksimum yang dikonfigurasi untuk max text repl size opsi, yang defaultnya menjadi 64 K. Nilai yang dikonfigurasi -1 menunjukkan tidak ada batas, selain batas yang diberlakukan oleh jenis data.
  • Tabel yang diaktifkan untuk Azure Synapse Link untuk SQL dapat memiliki maksimum 1.020 kolom (bukan 1.024).
  • Meskipun database dapat mengaktifkan beberapa tautan, tabel tertentu tidak dapat menjadi milik banyak tautan.
  • Saat pemilik database tidak memiliki login yang dipetakan, Azure Synapse Link untuk SQL mengalami kesalahan saat mengaktifkan koneksi tautan. Pengguna dapat mengatur pemilik database ke pengguna yang valid dengan perintah ALTER AUTHORIZATION untuk memperbaiki masalah ini.
  • Jika tabel sumber berisi kolom atau kolom komputasi dengan jenis data yang tidak didukung kumpulan SQL khusus, kolom tidak direplikasi. Kolom yang tidak didukung mencakup yang berikut ini.
    • gambar
    • text
    • xml
    • timestamp
    • aql_variant
    • UDT
    • geometri
    • geografi
  • Ada maksimal 5.000 tabel yang dapat ditambahkan ke satu koneksi tautan.
  • Operasi bahasa definisi data tabel (DDL) berikut ini tidak diizinkan pada tabel sumber saat diaktifkan untuk Azure Synapse Link untuk SQL. Semua operasi DDL lainnya diizinkan, tetapi tidak direplikasi ke Azure Synapse Analytics.
    • Beralih Partisi
    • Menambah/Menghilangkan/Mengubah Kolom
    • Mengubah Kunci Primer
    • Menghilangkan/Memotong Tabel
    • Mengganti nama tabel
  • Jika bahasa definisi data (DDL) + bahasa manipulasi data (DML) dijalankan dalam transaksi eksplisit (antara BEGIN TRANSACTION dan END TRANSACTION pernyataan), replikasi untuk tabel terkait gagal dalam koneksi tautan.

    Catatan

    Jika tabel sangat penting untuk konsistensi transaksi di tingkat koneksi tautan, tinjau status tabel Azure Synapse Link di tab Pemantauan.

  • Azure Synapse Link untuk SQL tidak dapat diaktifkan jika salah satu fitur berikut digunakan untuk tabel sumber.
    • Ubah Pengambilan Data
    • Tabel riwayat temporal
    • Selalu dienkripsi
    • Tabel dalam memori
    • Indeks Penyimpan Kolom
    • Grafik
  • Tabel sistem tidak dapat direplikasi.
  • Konfigurasi keamanan dari database sumber TIDAK akan terlihat dalam kumpulan SQL khusus target.
  • Mengaktifkan Azure Synapse Link untuk SQL membuat skema baru bernama changefeed. Jangan gunakan skema ini, karena skema ini dicadangkan untuk digunakan oleh sistem.
  • Tabel sumber dengan kolase yang tidak didukung oleh kumpulan SQL khusus, seperti UTF-8 dan kolase Jepang tertentu, tidak dapat direplikasi. Berikut adalah kolase yang didukung di Kumpulan SQL Synapse.
    • Selain itu, Azure Synapse Link untuk SQL tidak mendukung beberapa kolase bahasa Thailand:
      • Thai100CaseInsensitiveAccentInsensitiveKanaSensitive
      • Thai100CaseInsensitiveAccentSensitiveSupplementaryCharacters
      • Thai100CaseSensitiveAccentInsensitiveKanaSensitive
      • Thai100CaseSensitiveAccentInsensitiveKanaSensitiveWidthSensitiveSupplementaryCharacters
      • Thai100CaseSensitiveAccentSensitiveKanaSensitive
      • Thai100CaseSensitiveAccentSensitiveSupplementaryCharacters
      • ThaiCaseSensitiveAccentInsensitiveWidthSensitive
    • Saat ini, kolase Latin1_General_BIN2 tidak didukung karena ada masalah yang diketahui di mana tautan tidak dapat dihentikan atau tabel yang mendasar dapat dihapus dari replikasi.
  • Pembaruan baris tunggal (termasuk penyimpanan di luar halaman) sebesar > 370 MB tidak didukung.
  • Ketika Azure Synapse Link untuk SQL di Azure SQL Database atau SQL Server 2022 diaktifkan, fitur pemotongan log agresif dari Accelerated Database Recovery (ADR) secara otomatis dinonaktifkan. Ini karena Azure Synapse Link untuk SQL mengakses log transaksi database. Perilaku ini mirip dengan tangkapan data yang diubah (CDC). Transaksi aktif terus menahan pemotongan log transaksi hingga transaksi dilakukan dan Azure Synapse Link untuk SQL mengejar ketinggalan, atau transaksi dibatalkan. Ini dapat mengakibatkan log transaksi mengisi lebih dari biasanya dan harus dipantau sehingga log transaksi tidak terisi.

Hanya Azure SQL Database

  • Azure Synapse Link untuk SQL tidak didukung pada tingkat Gratis, Dasar, atau Standar dengan kurang dari 100 DTU.
  • Azure Synapse Link untuk SQL tidak didukung pada SQL Managed Instance.
  • Perwakilan layanan tidak didukung untuk mengautentikasi ke Azure SQL DB sumber, sehingga saat membuat Layanan Azure SQL DB yang ditautkan, pilih autentikasi SQL, identitas terkelola yang ditetapkan pengguna (UAMI) atau layanan yang ditetapkan identitas terkelola (SAMI).
  • Jika server logis Azure SQL Database memiliki SAMI dan UAMI yang dikonfigurasi, Azure Synapse Link menggunakan SAMI.
  • Azure Synapse Link tidak dapat diaktifkan pada database sekunder setelah failover GeoDR, jika database sekunder memiliki nama yang berbeda dari database utama.
  • Jika Anda mengaktifkan Azure Synapse Link untuk SQL di database Anda sebagai pengguna Microsoft Entra, pemulihan point-in-time (PITR) gagal. PITR hanya berfungsi saat Anda mengaktifkan Azure Synapse Link untuk SQL di database Anda sebagai pengguna SQL.
  • Jika Anda membuat database sebagai pengguna Microsoft Entra dan mengaktifkan Azure Synapse Link untuk SQL, pengguna autentikasi SQL (misalnya, bahkan peran sysadmin) tidak akan dapat menonaktifkan/membuat perubahan pada Azure Synapse Link untuk artefak SQL. Namun, pengguna Microsoft Entra lain dapat mengaktifkan/menonaktifkan Azure Synapse Link untuk SQL pada database yang sama. Demikian pula, jika Anda membuat database sebagai pengguna autentikasi SQL, mengaktifkan/menonaktifkan Azure Synapse Link untuk SQL sebagai pengguna Microsoft Entra tidak berfungsi.
  • Replikasi data lintas penyewa tidak didukung di mana Azure SQL Database dan ruang kerja Azure Synapse berada di penyewa terpisah.

SQL Server 2022 saja

  • Azure Synapse Link untuk SQL tidak dapat diaktifkan pada database yang merupakan penerbit atau distributor replikasi transaksional.
  • Dengan replika asinkron dalam grup ketersediaan, transaksi harus ditulis ke semua replika sebelum diterbitkan ke Azure Synapse Link for SQL.
  • Azure Synapse Link untuk SQL tidak didukung pada database dengan dukungan mirroring database.
  • Memulihkan Azure Synapse Link untuk database dengan dukungan SQL dari lokal ke Azure SQL Managed Instance tidak didukung.

Perhatian

Azure Synapse Link untuk SQL tidak didukung pada database yang juga menggunakan Azure SQL Managed Instance Link. Berhati-hatilah bahwa dalam skenario ini, ketika instans terkelola beralih ke mode baca-tulis, Anda mungkin mengalami masalah penuh log transaksi.

Masalah umum

  • Berlaku Untuk - Azure Synapse Link untuk Azure SQL Database dan SQL Server 2022

  • Masalah - Saat Anda menghapus ruang kerja Azure Synapse Analytics, ada kemungkinan tautan yang berjalan mungkin tidak dihentikan, yang menyebabkan database sumber berpikir bahwa tautan masih beroperasi dan dapat menyebabkan log transaksi tidak terpotong, dan mengisi.

  • Resolusi - Ada dua kemungkinan resolusi untuk situasi ini:

    1. Hentikan tautan yang sedang berjalan sebelum menghapus ruang kerja Azure Synapse Analytics.
    2. Bersihkan definisi tautan secara manual di database sumber.
      1. table_group_id Temukan yang perlu dihentikan menggunakan kueri berikut.
        SELECT table_group_id, workspace_id, synapse_workgroup_name
        FROM [changefeed].[change_feed_table_groups]
        WHERE synapse_workgroup_name = <synapse workspace name>;
        
      2. Letakkan setiap tautan yang diidentifikasi menggunakan prosedur berikut.
        EXEC sys.sp_change_feed_drop_table_group @table_group_id = <table_group_id>;
        
      3. Secara opsional, jika Anda menonaktifkan semua grup tabel untuk database tertentu, Anda juga dapat menonaktifkan umpan perubahan pada database dengan perintah berikut.
        EXEC sys.sp_change_feed_disable_db;
        

Mengaktifkan kembali umpan perubahan pada tabel yang baru-baru ini dinonaktifkan akan menampilkan kesalahan

  • Berlaku Untuk - Azure Synapse Link untuk Azure SQL Database dan SQL Server 2022
  • Ini adalah perilaku yang jarang terjadi.
  • Masalah - Ketika Anda mencoba mengaktifkan tabel yang baru-baru ini dinonaktifkan dengan metadatanya belum dibersihkan dan status ditandai sebagai DISABLED, kesalahan dilemparkan yang A table can only be enabled once among all table groupsmenyatakan .
  • Resolusi - Tunggu hingga prosedur sistem tabel yang dinonaktifkan selesai lalu coba aktifkan kembali tabel lagi.
  • Berlaku Untuk - Azure Synapse Link untuk Azure SQL Database dan SQL Server 2022
  • Masalah - Untuk database SQL yang diaktifkan dengan Azure Synapse Link, saat Anda menggunakan operasi Impor/Ekspor dan Ekstrak/Sebarkan SSDT untuk mengimpor/menyiapkan database baru, changefeed skema dan pengguna tidak dikecualikan dalam database baru. Namun, tabel untuk umpan perubahan diabaikan oleh DacFX karena ditandai sebagai is_ms_shipped=1 dalam sys.objects, dan objek tersebut tidak pernah disertakan dalam operasi Impor/Ekspor dan Ekstrak/Sebarkan SSDT. Saat mengaktifkan Azure Synapse Link pada database yang diimpor/disebarkan, prosedur sys.sp_change_feed_enable_db tersimpan sistem gagal jika changefeed pengguna dan skema sudah ada. Masalah ini ditemui jika Anda telah membuat pengguna atau skema bernama changefeed yang tidak terkait dengan kemampuan umpan perubahan Azure Synapse Link.
  • Resolusi-
    • Letakkan skema dan changefeed pengguna kosong changefeed secara manual. Kemudian, Azure Synapse Link dapat berhasil diaktifkan pada database yang diimpor/disebarkan.
    • Jika Anda telah menentukan skema kustom atau pengguna bernama changefeed dalam database Anda yang tidak terkait dengan Azure Synapse Link, dan Anda tidak berniat menggunakan Azure Synapse Link untuk SQL, tidak perlu menghilangkan skema atau pengguna Anda changefeed .
    • Jika Anda telah menentukan skema pelanggan atau pengguna bernama changefeed dalam database Anda, saat ini, database ini tidak dapat berpartisipasi dalam Azure Synapse Link untuk SQL.