Đồng bộ hóa dữ liệu trên các môi trường Dataverse bằng Power Platform

Kiến trúc tham chiếu này cho thấy cách đồng bộ hóa dữ liệu chính giữa hai môi trường Dataverse bằng cách sử dụng Power Automate và luồng dữ liệu trong Power Platform. Nó thể hiện một mô hình đồng bộ hóa một-một, trong đó một môi trường đóng vai trò là nguồn có thẩm quyền và một môi trường khác nhận dữ liệu.

Mẹo

Bài viết này cung cấp một kịch bản ví dụ và kiến trúc ví dụ tổng quát để minh họa cách duy trì dữ liệu chính trong một môi trường Dataverse và đồng bộ hóa với một môi trường Dataverse khác. Ví dụ về kiến trúc có thể được sửa đổi cho nhiều tình huống và ngành công nghiệp khác nhau.

Sơ đồ kiến trúc

Sơ đồ đồng bộ hóa dữ liệu chính từ môi trường Dataverse chính sang môi trường phụ bằng cách sử dụng Power Automate dòng đám mây và luồng dữ liệu Power Platform.

Quy trình làm việc

Các bước sau mô tả quy trình làm việc được hiển thị trong sơ đồ kiến trúc mẫu:

  1. Đồng bộ hóa theo hướng sự kiện qua Power Automate< / c0>

    • Các hoạt động CRUD (tạo, đọc, cập nhật, xóa) trong môi trường Dataverse chính sẽ kích hoạt dòng Power Automate.

    • Đồng bộ hóa theo hướng sự kiện sử dụng chuỗi luồng hai bước:

      1. Luồng đám mây gửi HTTP POST đến điểm cuối đã phát hành.
      2. Luồng đám mây của người đăng ký được kích hoạt bởi webhook, xử lý tải trọng và áp dụng bản cập nhật trong môi trường Dataverse phụ gần như theo thời gian thực.
    • Điểm cuối được tham số hóa để quản lý vòng đời ứng dụng (ALM) và các nhóm bảo mật quản lý quyền truy cập.

  2. Đồng bộ hóa hàng loạt thông qua luồng dữ liệu

    • Môi trường Dataverse phụ chứa các luồng dữ liệu.

    • Mỗi luồng dữ liệu kết nối với môi trường Dataverse chính làm nguồn dữ liệu của nó.

    • Luồng dữ liệu chạy theo lịch trình cố định (ví dụ: hàng đêm hoặc sau khi luồng dữ liệu khác chạy thành công) hoặc theo yêu cầu (ví dụ: để thiết lập ban đầu).

    • Upsert được thực hiện bằng cách sử dụng một khóa thay thế để tránh trùng lặp. Phương pháp này cập nhật dữ liệu hiện có và chèn các bản ghi mới khi không có kết quả trùng khớp.

    • Các trường trạng thái được quản lý thông qua cột "trạng thái đồng bộ hóa" chuyên dụng. Dòng Power Automate cập nhật trường trạng thái thực tế cho phù hợp. Dòng này chạy sau luồng dữ liệu và là bắt buộc vì luồng dữ liệu không thể thay đổi trạng thái hàng hoặc xóa các bản ghi bị xóa (vắng mặt) trong môi trường Dataverse chính.

  3. Xử lý và đối chiếu lỗi

    • Luồng dữ liệu hàng đêm trong môi trường phụ sửa mọi bản cập nhật theo sự kiện bị bỏ lỡ hoặc không thành công.

    • Có thể cần can thiệp thủ công cho các vấn đề về chất lượng dữ liệu (ví dụ: thiếu khóa).

Cấu phần

  • Microsoft Dataverse: Hỗ trợ yêu cầu hai môi trường.

  • Luồng dữ liệu cho Power Platform: Lý tưởng cho các hoạt động hàng loạt, chẳng hạn như tổng hợp và đồng bộ hóa dữ liệu ban đầu. Sử dụng trích xuất, chuyển đổi và tải hàng loạt (ETL) để đồng bộ hóa theo lịch trình, được định cấu hình trong môi trường phụ.

  • Power Automate luồng đám mây: Cung cấp các bản cập nhật nhanh chóng, dành riêng cho bản ghi và bù đắp cho các hạn chế của luồng dữ liệu. Dòng đám mây có thể kích hoạt luồng dữ liệu khi một luồng dữ liệu khác hoàn thành thành công (chẳng hạn như khi một bảng chứa trường tra cứu cho một bảng khác và bản ghi được tham chiếu đó phải tồn tại trong môi trường Dataverse phụ), gửi thông báo lỗi khi luồng dữ liệu bị lỗi, cập nhật trạng thái bản ghi và xóa bản ghi.

  • Nhóm bảo mật và tài khoản dịch vụ: Cung cấp quyền quản lý và quyền sở hữu quyền truy cập.

Chi tiết tình huống

Kiến trúc này được thiết kế cho mối quan hệ một-một: một môi trường quản lý dữ liệu chính (MDM) duy nhất được liên kết với một môi trường duy nhất khác. Các tình huống trong đó một môi trường chính phải đồng bộ hóa với nhiều môi trường khác yêu cầu giải pháp phân tán hoặc có thể mở rộng hơn.

Vấn đề kinh doanh

Giải pháp này giải quyết thách thức đồng bộ hóa nhiều bảng giữa hai môi trường Dataverse riêng biệt. Môi trường chính đóng vai trò là nguồn có thẩm quyền, trong khi môi trường phụ chứa các bảng hiện có mà bạn phải điền và cập nhật dữ liệu chính.

Việc sử dụng bảng ảo là không khả thi khi các bảng của hệ thống phụ đã tồn tại và yêu cầu bảo mật cấp hàng.

Ví dụ về trường hợp sử dụng

Một tổ chức giải trí và khách sạn quản lý dữ liệu chính cốt lõi của mình, chẳng hạn như khách sạn và hàng tồn kho phòng, trong môi trường Dataverse chuyên dụng. Môi trường chính bao gồm một ứng dụng dựa trên mô hình mà nhóm quản lý dữ liệu chính sử dụng riêng để duy trì thông tin hoạt động chính xác và up-tongày.

Một bộ phận riêng biệt trong cùng một tổ chức chịu trách nhiệm về một số quy trình tài chính và đối chiếu. Để hợp lý hóa các quy trình này, bộ phận muốn xây dựng ứng dụng dựa trên mô hình của riêng mình trong môi trường Dataverse biệt lập. Tuy nhiên, ứng dụng của họ vẫn yêu cầu quyền truy cập vào dữ liệu chính cơ bản như chi tiết khách sạn và phòng.

Nhóm đã từ chối các bảng ảo vì nhóm tài chính cần làm phong phú các bản ghi với các thuộc tính dành riêng cho bộ phận được điều chỉnh bởi bảo mật cấp hàng nghiêm ngặt.

Nhúng ứng dụng tài chính vào môi trường MDM chính cũng không phải là một lựa chọn. Việc cho phép các nhà sản xuất tài chính hoặc quản trị viên vào môi trường MDM sẽ hiển thị các trình kết nối, giải pháp, quyền API và dữ liệu nhạy cảm phải bị hạn chế đối với nhóm phát triển MDM.

Những yêu cầu này đã khiến tổ chức áp dụng kiến trúc đồng bộ hóa được mô tả trong bài viết này.

Giá trị được tạo ra

Kiến trúc này cung cấp một giải pháp mạnh mẽ, có thể bảo trì để đồng bộ hóa dữ liệu chính giữa hai môi trường Dataverse khi bảng ảo không phải là một tùy chọn. Điền trực tiếp và cập nhật các bảng hiện có trong môi trường thứ cấp đảm bảo tính nhất quán của dữ liệu và độ tin cậy hoạt động.

Cách tiếp cận này chỉ sử dụng các thành phần Power Platform, chẳng hạn như luồng dữ liệu và Power Automate, dẫn đến giải pháp dễ triển khai, dễ quản lý và tránh sự phức tạp không cần thiết.

Bởi vì kiến trúc được điều chỉnh cho mối quan hệ môi trường một-một, nó giảm thiểu chi phí và tối đa hóa tính minh bạch. Nó lý tưởng cho các tổ chức cần đồng bộ hóa dữ liệu chính đơn giản, đáng tin cậy mà không cần quản lý đa môi trường quy mô lớn.

Điểm cần lưu ý

Những cân nhắc này thực hiện các trụ cột của Power Platform Kiến trúc tốt, một tập hợp các nguyên lý hướng dẫn giúp cải thiện chất lượng khối lượng công việc. Tìm hiểu thêm trong Microsoft Power Platform Well-Architected.

Độ tin cậy

  • Luồng dữ liệu hàng đêm đảm bảo tính nhất quán.

  • Dòng theo sự kiện cung cấp các bản cập nhật nhanh chóng.

  • Giám sát thủ công phát hiện các vấn đề về chất lượng dữ liệu.

Bảo mật

  • Tài khoản dịch vụ và nhóm bảo mật để kiểm soát truy cập. Khi sử dụng luồng dữ liệu, bạn không thể chỉ định dịch vụ chính làm chủ sở hữu.

  • Điểm cuối HTTP được tham số hóa để tương thích với ALM.

  • Luồng dữ liệu trong các giải pháp biệt lập để tránh công việc thủ công không cần thiết. Có một lý do cụ thể để cô lập luồng dữ liệu trong một giải pháp chuyên dụng: sau mỗi lần triển khai, bạn phải thiết lập lại kết nối luồng dữ liệu theo cách thủ công. Bằng cách đặt luồng dữ liệu trong một giải pháp riêng biệt mà bạn chỉ triển khai khi thay đổi luồng dữ liệu, bạn tránh được công việc thủ công không cần thiết khi triển khai các thành phần khác của giải pháp chính.

Hoạt động xuất sắc

  • Lập lịch tự động và điều phối luồng dữ liệu.

  • Giám sát và cảnh báo đồng bộ hóa không thành công.

Hiệu quả hoạt động

  • Luồng dữ liệu được tối ưu hóa cho các hoạt động hàng loạt.

  • Dòng Power Automate theo sự kiện giảm thiểu độ trễ cho các bản cập nhật quan trọng, cấp bản ghi. Khi thiết kế dòng theo sự kiện, hãy đảm bảo rằng khối lượng hành động và tính đồng thời vẫn nằm trong giới hạn dịch vụ Power Automate. Hoạt động CRUD tần suất cao có thể kích hoạt điều tiết, đặc biệt là trong các trường hợp dòng thực hiện hàng chục nghìn hành động mỗi ngày. Đối với các tích hợp quan trọng đối với doanh nghiệp hoặc thông lượng cao, hãy áp dụng cấp phép Power Automate thích hợp để tăng giới hạn thông lượng và tránh điều chỉnh bất ngờ. Cách tiếp cận này làm giảm rủi ro leo thang và đảm bảo hiệu suất có thể dự đoán được.

Tối ưu hóa trải nghiệm

  • Yêu cầu can thiệp thủ công tối thiểu.

  • Phân biệt rõ ràng đồng bộ hóa hàng loạt và đồng bộ hóa theo sự kiện.

Người đóng góp

Microsoft duy trì bài viết này. Những người đóng góp sau đây đã viết bài viết này.

Tác giả chính: