Các tùy chọn cấu hình nâng cao trong Azure Synapse Link
Azure Synapse Link cung cấp nhiều cách ghi và đọc dữ liệu của bạn để đáp ứng nhiều kịch bản phân tích.
Lưu ý
Azure Synapse Link for Dataverse trước đây được gọi là Xuất sang kho dữ liệu. Dịch vụ này có tên mới từ tháng 5 năm 2021 và sẽ tiếp tục xuất dữ liệu sang Azure Data Lake cũng như Azure Synapse Analytics.
Bài viết này sẽ trình bày về:
- Cập nhật tại chỗ so với Ghi chỉ gắn thêm.
- Phân vùng dữ liệu do người dùng chỉ định.
Cập nhật tại chỗ so với ghi chỉ gắn thêm
Khi ghi dữ liệu bảng Dataverse vào kho dữ liệu Azure, dựa trên giá trị createdOn
(ngày và giờ khi bản ghi được tạo), thì có hai cài đặt khác nhau để lựa chọn. Đó là Cập nhật tại chỗ và Chỉ gắn thêm.
Chế độ thiết đặt mặc định (đối với các bảng có createdOn
) là thực hiện cập nhật tại chỗ hoặc upsert (cập nhật hoặc chèn) dữ liệu gia tăng tại điểm đích. Nếu thay đổi là mới và một hàng tương ứng không tồn tại trong kho, trong trường hợp tạo, các tệp đích sẽ được quét và thay đổi được chèn vào phân vùng tệp tương ứng trong kho. Nếu thay đổi là một bản cập nhật và hàng tồn tại trong kho, thì tệp tương ứng trong kho sẽ được cập nhật, thay vì được chèn, với dữ liệu gia tăng. Nói cách khác, cài đặt mặc định cho tất cả các thay đổi CUD (tạo, cập nhật, xóa) trong Dataverse bảng, ở những nơi có sẵn createdOn
, là thực hiện cập nhật tại chỗ ở đích, trong hồ dữ liệu Azure.
Bạn có thể chuyển đổi hành vi mặc định của bản cập nhật tại chỗ bằng cách sử dụng một cài đặt tùy chọn được gọi là Chỉ gắn thêm. Thay vì Cập nhật tại chỗ, trong chế độ Chỉ gắn thêm, dữ liệu gia tăng từ bảng Dataverse được gắn thêm vào phân vùng tệp tương ứng trong kho. Đây là tùy chọn thiết đặt theo bảng và ở dạng hộp kiểm trong phần Nâng cao > Hiển thị thiết đặt cấu hình nâng cao. Đối với bảng Dataverse đã bật chế độ Chỉ gắn thêm, tất cả các thay đổi CUD sẽ được thêm dần vào các tệp đích tương ứng trong kho. Khi bạn chọn tùy chọn này, chiến lược phân vùng mặc định là Năm và khi dữ liệu được ghi vào kho dữ liệu, nó sẽ được phân vùng theo năm. Chỉ gắn thêm cũng là thiết đặt mặc định cho bảng Dataverse không có giá trị createdOn
.
Bảng dưới đây mô tả cách các hàng được xử lý trong kho so với các sự kiện CUD cho từng tùy chọn ghi dữ liệu.
Sự kiện | Cập nhật tại chỗ | Chỉ gắn thêm |
---|---|---|
Tạo | Hàng được chèn vào tệp phân vùng và dựa trên giá trị createdOn trên hàng. |
Hàng được thêm vào cuối tệp phân vùng và dựa trên giá trị createdOn của bản ghi. |
Cập nhật | Nếu hàng tồn tại trong tệp phân vùng, thì hàng đó sẽ được thay thế hoặc cập nhật bằng dữ liệu cập nhật. Nếu không tồn tại, hàng sẽ được chèn vào tệp. | Hàng, cùng với phiên bản cập nhật, được thêm vào cuối tệp phân vùng. |
Delete | Nếu tồn tại trong tệp phân vùng, hàng đó sẽ bị xóa khỏi tệp. | Hàng được thêm vào cuối tệp phân vùng với IsDelete column = True . |
Lưu ý
Đối với bảng Dataverse đã bật chế độ Chỉ gắn thêm, việc xóa một hàng trong nguồn sẽ không xóa hoặc xóa hàng trong kho. Thay vào đó, hàng đã xóa sẽ được thêm vào dưới dạng hàng mới trong hồ và cột isDeleted
được đặt thành True.
Đọc sai (ALLOW_INCONSISTENT_READS) cho serverless được bật cho chế độ chỉ nối thêm. ALLOW_INCONSISTENT_READS có nghĩa là người dùng có thể đọc các tệp có thể được sửa đổi liên tục trong khi SELECT
truy vấn đang chạy. Kết quả sẽ nhất quán và tương đương với việc đọc ảnh chụp nhanh của tệp. (Nó không tương đương với cách ly ảnh chụp nhanh cơ sở dữ liệu vì thời gian tạo ảnh chụp nhanh khác nhau.)
Không phải tất cả các thay đổi CUD sẽ được ghi lại chỉ nối thêm: Liên kết Synapse xử lý các thay đổi trong dữ liệu theo nhóm hoặc "lô" trước khi xuất bản chúng lên hồ dữ liệu. Kết quả là, nếu người dùng thực hiện thay đổi trong một khoảng thời gian ngắn thì không phải tất cả thay đổi CUD sẽ được ghi lại trong hồ dữ liệu.
Dưới đây là một số chi tiết bổ sung về thời điểm sử dụng một trong các tùy chọn.
- Cập nhật tại chỗ: Tùy chọn này là thiết đặt mặc định và chỉ được đề xuất nếu bạn muốn kết nối trực tiếp với dữ liệu trong kho và cần trạng thái hiện tại (không phải lịch sử hoặc các thay đổi gia tăng). Tệp chứa toàn bộ tập dữ liệu và có thể được sử dụng qua Power BI hoặc bằng cách sao chép toàn bộ tập dữ liệu cho các quy trình ETL (Trích xuất, Truyền tải, Nạp).
- Chỉ gắn thêm: Chọn tùy chọn này nếu bạn không kết nối trực tiếp với dữ liệu trong kho và muốn sao chép từng bước dữ liệu sang mục tiêu khác bằng quy trình ETL. Tùy chọn này cung cấp lịch sử các thay đổi để kích hoạt các kịch bản AI và ML.
Bạn có thể bật/tắt tùy chọn Hiển thị thiết đặt cấu hình nâng cao bên dưới phần Nâng cao trong Azure Synapse Link for Dataverse để tùy chỉnh chiến lược phân vùng dữ liệu rồi chọn các tùy chọn để ghi vào kho dữ liệu Azure.
Phân vùng dữ liệu
Khi bạn ghi dữ liệu bảng Dataverse sang Azure Data Lake Storage bằng Azure Synapse Link, các bảng được phân vùng (thay vì một tệp duy nhất) trong kho dữ liệu dựa trên giá trị createdOn
trên mỗi hàng trong nguồn. Chiến lược phân vùng mặc định là theo tháng và dữ liệu được phân vùng trong kho dữ liệu Azure theo tháng.
Tùy thuộc vào khối lượng bảng Dataverse và phân phối dữ liệu, bạn có thể chọn phân vùng dữ liệu của mình theo năm. Với tùy chọn này, khi dữ liệu bảng Dataverse được ghi vào kho dữ liệu Azure, dữ liệu đó sẽ được phân vùng theo năm dựa trên giá trị createdOn
trên mỗi hàng trong nguồn. Đối với các bảng không có cột createdOn
, các hàng dữ liệu được phân vùng thành một tệp mới mỗi bản ghi 5,000,000. Đây là tùy chọn thiết đặt theo bảng và ở dạng hộp kiểm trong phần Nâng cao > Hiển thị thiết đặt cấu hình nâng cao.
Chi tiết bổ sung với các ví dụ về cách dữ liệu được xử lý trong kho với chiến lược phân vùng hàng năm hoặc hàng tháng:
Xem thêm
Azure Synapse Link for Dataverse
Lưu ý
Bạn có thể cho chúng tôi biết bạn thích dùng ngôn ngữ nào cho tài liệu không? Làm một cuộc khảo sát ngắn. (xin lưu ý, khảo sát này bằng tiếng Anh)
Cuộc khảo sát sẽ mất khoảng bảy phút. Không có dữ liệu cá nhân nào được thu thập (điều khoản về quyền riêng tư).