在本指南中,尋找適用於 SQL 的 Azure Synapse Link 最常見的問題。
我可以使用適用於 SQL 的 Azure Synapse Link 將數據復寫至 Azure Synapse SQL 無伺服器集區作為目的地存放區嗎?
否,目前適用於 SQL 的 Azure Synapse Link 僅支援 Synapse 專用 SQL 集區作為資料目的地存放區。
適用於 SQL 的 Azure Synapse Link 是否支援 Azure SQL 受控執行個體 作為來源存放區?
否,目前適用於 SQL 的 Azure Synapse Link 僅支援 Azure SQL 資料庫 和 SQL Server(從 SQL Server 2022 開始)作為來源。
當我想要新增或移除要復寫的數據表時,是否需要停止連結連線?
否,當鏈接連接執行時,您可以新增或移除資料表。 拿掉的數據表將停止自動複寫。 新加入的數據表會從具有完整快照集的初始載入開始,然後執行累加同步處理。 相同連結連線中的其餘數據表將不會受到影響。
我的目的地數據表存在於目標專用 SQL 集區中,導致我的連結連線無法啟動。 我該怎麼做?
您應該先移除目的地數據表,再啟動連結連線。 您可以手動從 Synapse 專用 SQL 集區移除數據表,或在 [現有目標數據表上的動作] 下拉式清單中,選擇 [卸除並重新建立目標上的數據表] 選項,讓它在每次啟動時自動卸除 Synapse 專用 SQL 集區上的現有數據表。
如果數據表數據行已從來源存放區新增或卸除,我的執行中連結聯機會發生什麼情況?
將數據表新增至連結連接之後,源資料庫中的這些數據表將不會允許加入、卸除或改變數據行。 若要進行這些架構變更,數據表應該暫時從連結連接中移除,並在架構變更后重新新增。
我可以從連結連線暫停數據復寫,然後從暫停的位置繼續數據復寫嗎?
是的,可以。
我可以在 Synapse 工作區中選取具有 Synapse 受控私人端點的受控虛擬網路,這可讓連結連線私下連線到源資料庫嗎?
是的,可以。 類似於 Synapse 中的所有工作負載。 您可以在 Azure Synapse 受控虛擬網路中啟用適用於 SQL 的 Azure Synapse Link,以安全的方式將數據從 SQL 複寫至 Synapse。 您可以藉由只允許來自受控虛擬網路的輸出連線到使用受控私人端點核准的目標,來保護數據外泄。
在建立連結連線時,選取將數據表從來源存放區復寫至 Synapse 專用 SQL 集區的核心計數,最佳做法為何?
核心計數表示將數據從來源存放區複寫至 Synapse 專用 SQL 集區所需的計算大小。 這取決於源資料庫的復寫工作負載模式、數據表數目、發生的變更率,以及數據列的大小等等。建議您從小型核心計數開始,並使用實際工作負載測試延遲。 復寫延遲可以反映在鏈接數據表的監視頁面中;上次處理過的數據行時間會指出複寫的執行距離。
我是否應該選擇「跨數據表啟用交易一致性」?
啟用此選項時,來源資料庫上跨越多個資料表的交易跨越一律會複寫至單一交易中的目的地資料庫。 不過,這將會在整體複寫輸送量上建立額外負荷。 停用此選項時,每個數據表都會以平行連線將本身交易界限中的變更複寫至目的地,進而改善整體復寫輸送量。 當您想要跨數據表啟用交易一致性時,也請確定 Synapse 專用 SQL 集區中的交易隔離等級為 READ COMMITTED SNAPSHOT ISOLATION。
如何在 Synapse 專用 SQL 集區中選取目的地數據表的結構類型?
您可以參考 索引數據表 - Azure Synapse Analytics |Microsoft Docs 以了解數據表結構類型的三個選項。 選擇叢集數據行存放區索引時,不支持長度上限 (例如 VARCHAR(MAX)) 的數據類型。
我需要清除登陸區域中的數據嗎?
否。 只要鏈接持續執行,背景線程會在大約24小時後移除認可的檔案。 當連結停止時,會移除整個登陸區域資料夾。
適用於 SQL 的 Azure Synapse Link 可在哪些區域中使用?
下列區域提供適用於 SQL 的 Azure Synapse Link:
區域圖 | 區域 |
---|---|
亞太地區 | 東亞 東南亞 |
澳大利亞 | 澳大利亞東部 澳大利亞東南部 |
Azure Government | US Gov 亞利桑那州 US Gov 德克薩斯州 US Gov 維吉尼亞州 |
巴西 | 巴西南部 |
Canada | 加拿大中部 加拿大東部 |
中國 | 中國東部 2 中國東部 3 中國北部 2 中國北部 3 |
歐洲 | 北歐 西歐 |
法國 | 法國中部 法國南部 |
德國 | 德國中西部 |
印度 | 印度中部 印度南部 |
日本 | 日本東部 日本西部 |
南韓 | 南韓中部 |
挪威 | 挪威東部 |
卡達 | 卡達中部 |
瑞典 | 瑞典中部 |
瑞士 | 瑞士北部 瑞士西部 |
阿拉伯聯合大公國 | 阿拉伯聯合大公國北部 |
英國 | 英國南部 英國西部 |
美國 | 美國中部 美國東部 美國東部 2 美國中北部 美國中南部 美國中西部 美國西部 美國西部 2 美國西部 3 |
我的登陸區域位於何處?
針對 Azure SQL 資料庫,登陸區域會完全受控,且位於與目標 Azure Synapse Analytics 工作區相同的區域中。 針對 SQL Server 2022,登陸區域是客戶管理的,而且可以位於您想要的位置。
哪種類型的加密會套用至登陸區域?
對於 Azure SQL 資料庫,登陸區域會完全受控,並使用與目標 Azure Synapse Analytics 工作區相同的密鑰進行加密-平臺管理或客戶管理。 針對 SQL Server 2022,登陸區域是客戶管理的,而且可以使用平臺管理的密鑰或客戶管理的金鑰來加密。
我更新了源數據表中的所有記錄。 當我針對專用 SQL 集區執行查詢時,我看到所有數據都消失了。 我重新執行查詢,並傳回所有數據 - 更新。 為何發生此狀況?
擷取服務會以刪除方式處理更新,後面接著插入 , 全都在相同的交易中。 根據預設,專用 SQL 集區會在 READ UNCOMMITTED 模式中執行,這可讓您在認可交易之前查看變更。 若要確保您未看到這些進程內變更,您可以開啟 READ COMMITTED SNAPSHOT ISOLATION。
新增至源資料庫的新數據表是否會自動新增至連結連線?
否。 您必須在 Azure Synapse Analytics 環境中編輯連結連線,以新增數據表。 您可以將資料表新增至執行中的連接,而不停止它 - 當您將變更發佈至連結連接時,新的數據表將會包含在複寫中。
從 Azure SQL 資料庫 和 SQL Server 2022 複寫至 Azure Synapse Analytics 專用 SQL 集區的數據延遲為何?
我們沒有發佈延遲 SLA。 如果您看到高延遲,您可以調整配置給連結連線的核心數目、目標專用 SQL 集區的大小,或調整寫入組態上的交易一致性,以符合您的工作負載。
登陸區域數據使用何種格式? 它可以用於其他用途嗎?
登陸區域是暫時性數據存放區,我們不支持針對 Azure Synapse Link for SQL 以外的任何用途使用該數據。
適用於 SQL 的 Azure Synapse Link 與使用 ADF/Synapse 管線複製活動有什麼不同?
適用於 SQL 的 Azure Synapse Link 會使用推送模型,讓源資料庫將數據寫入登陸區域,並透過擷取服務,以連續執行(提供近乎實時的數據處理)或排程模式移至目標專用 SQL 集區。 複製活動會使用提取模型,其中會從源資料庫查詢數據,並依排程寫入目標位置。
Azure Synapse Link for SQL 的每個數據列有 7,500 個字節的檔限制。 如果我在源資料庫中有較大的數據列,該怎麼辦?
這項限制僅適用於頁面數據。 對於離頁數據,唯一計入 7,500 位元組限制的動作是離頁數據的 24 位元組指標。
Azure Synapse Link for SQL 會使用哪些數據復寫機制?
新的變更摘要處理器已整合到 Azure SQL 資料庫 和 SQL Server 2022 引擎中,以啟用這項功能。
如何? 輪替或變更適用於 SQL Server 的 Azure Synapse Link 登陸區域的 SAS?
如果登陸區域的使用者受控記憶體帳戶 SAS 已過期,請使用 ALTER DATABASE SCOPED CREDENTIAL 來更新新 SAS 的資料庫認證。
當使用者移除包含 Azure Synapse Link 至 Azure SQL 資料庫 的 Azure Synapse 工作區時,有何影響?
如果移除 Azure Synapse 工作區,Azure SQL 資料庫 將會停止將數據復寫從登陸區域到 Azure Synapse。 系統預存程式 sp_change_feed_drop_table_group 會自動呼叫,並管理登陸區域的記憶體帳戶,並會自動清除。 如果失敗,您可能會在 sys.dm_change_feed_errors 中收到 SynapseGatewayClient 的錯誤 22739。 如果發生這種情況,您可以使用 手動卸 changefeed
除數據表群組 sp_change_feed_drop_table_group
。
當使用者移除包含適用於 SQL Server 的 Azure Synapse Link 的 Azure Synapse 工作區時,有何影響?
在 SQL Server 中,由於登陸區域記憶體帳戶受使用者管理,因此數據會繼續發佈至登陸區域。 您應該卸除具有 sp_change_feed_drop_table_group的相關數據表群組,並手動移除登陸區域的記憶體帳戶,以停用 Azure Synapse Link。
當使用者刻意移除 Azure Synapse Link for SQL Server 的 Azure Synapse Link 登陸區域時,有何影響?
在 SQL Server 中,登陸區域記憶體帳戶是使用者管理的。 如果無法再存取登陸區域記憶體帳戶,您將會在sys.dm_change_feed_errors中看到錯誤。 您應該卸除具有 sp_change_feed_drop_table_group的相關數據表群組,以停用 Azure Synapse Link。