Using Microsoft Azure, Integration with Power BI
9/19/2025•5 mins read
1. Giới thiệu
Microsoft Azure là một giải pháp cơ sở dữ liệu đám mây. Là một phần của hệ sinh thái sản phẩm Microsoft, Azure nằm trong số các nguồn dữ liệu bạn có thể sử dụng để cung cấp dữ liệu cho Power BI. Vì Azure hỗ trợ cả xác thực cơ bản và xác thực tóm tắt, Azure có thể sử dụng API của SurveyCTO để trả về dữ liệu từ máy chủ SurveyCTO của bạn, đóng vai trò như một cầu nối vào Power BI.
2 . Azure Data Factory để đẩy dữ liệu vào Azure Blob Storage
1. Tạo tài khoản lưu trữ Azure
Nếu bạn đã có Tài khoản lưu trữ Azure và muốn sử dụng tài khoản này để lưu trữ dữ liệu SurveyCTO, vui lòng bỏ qua bước này.
Trong cổng thông tin Azure của bạn , hãy chọn Tất cả dịch vụ > Lưu trữ > Tài khoản lưu trữ .
Trong trang Tài khoản lưu trữ , hãy tạo một Tài khoản lưu trữ mới .
Nhấp vào + Thêm .
Trong trường Nhóm tài nguyên , Tạo mới hoặc chọn nhóm tài nguyên đã có sẵn.
Đặt tên cho Tài khoản Lưu trữ của bạn và nhấp vào Xem lại + tạo để giữ nguyên các giá trị mặc định (lần đầu có thể không thành công, nhưng hãy thử lại sau một phút). Nếu không, bạn có thể tự điều chỉnh cho phù hợp với trường hợp sử dụng của mình và chọn Tiếp theo: Nâng cao để thêm các cài đặt khác.
Xin lưu ý rằng hướng dẫn này sẽ thực hiện theo các bước bằng cách sử dụng Tài khoản lưu trữ với loại Tài khoản StorageV2 (mục đích chung v2) và vị trí Đông Hoa Kỳ, Tây Hoa Kỳ.
2. Tạo Azure Data Factory
Nếu bạn đã có Azure Data Factory và muốn sử dụng nó với API SurveyCTO, vui lòng bỏ qua bước này. Các bước chung để tạo Azure Data Factory có thể được tìm thấy trong tài liệu Microsoft này . Nếu bạn muốn thực hiện việc này bằng các công cụ khác (ví dụ: Azure PowerShell, Python, v.v.), hãy nhấp vào liên kết tài liệu và thay đổi tùy chọn Khởi động nhanh cho phù hợp. Lưu ý rằng tại thời điểm viết bài này, giao diện người dùng Data Factory chỉ được hỗ trợ trên trình duyệt web Microsoft Edge và Google Chrome.
Trong Cổng thông tin Azure của bạn, hãy chọn + Tạo tài nguyên trên menu bên trái, chọn Phân tích , sau đó chọn Nhà máy dữ liệu .
|
|
Trên trang nhà máy dữ liệu mới, hãy nhập Tên . Tên của Nhà máy Dữ liệu Azure phải là duy nhất trên toàn cầu. Nếu bạn thấy lỗi, hãy đổi tên nhà máy dữ liệu và thử tạo lại.
Đối với Đăng ký , hãy chọn đăng ký Azure mà bạn muốn tạo Nhà máy dữ liệu.
Trong Nhóm tài nguyên , chọn Sử dụng tài nguyên hiện có và chọn nhóm tài nguyên nơi Tài khoản lưu trữ của bạn được tạo (nhóm bạn đã tạo trong 1.2).
Đối với Phiên bản , hãy chọn V2 .
Chọn vị trí.
Nếu được chọn, hãy bỏ chọn Bật GIT .
Chọn nút Tạo màu xanh bên dưới.
Sau khi tạo xong, bạn sẽ thấy trang Data Factory. Nếu không thấy, hãy chọn Tất cả dịch vụ > Phân tích > Data Factory và nhấp vào Data Factory gần đây của bạn.
Nhấp vào ô Tác giả & Giám sát để khởi động ứng dụng giao diện người dùng (UI) Azure Data Factory trên một tab riêng.
Trên trang Bắt đầu , hãy chuyển sang tab Tác giả (biểu tượng bút chì) ở bảng bên trái.
I. Tạo các dịch vụ được liên kết
Tóm lại, đây là luồng dữ liệu mà hướng dẫn này đề xuất:
Chúng ta vẫn đang ở phía Azure, vì vậy chúng ta sẽ tạm thời bỏ qua Power BI và tập trung vào liên kết đầu tiên. Nói ngắn gọn, giống như bạn có hai tập dữ liệu khác nhau (API SurveyCTO và Azure the Blob Container), và bạn muốn sao chép dữ liệu từ tập này sang tập kia. Trong Azure Data Factory, trước khi tạo các tập dữ liệu này, bạn phải tạo các dịch vụ được liên kết để xác định thông tin kết nối cần thiết để Data Factory kết nối với các tài nguyên bên ngoài.
Tạo hai dịch vụ được liên kết và hai tập dữ liệu tương ứng của chúng.
Kết nối API SurveyCTO
Trong Tab Tác giả (biểu tượng bút chì) của Data Factory, hãy nhấp vào Kết nối , sau đó chọn nút Mới trên thanh công cụ.
Trên trang Dịch vụ liên kết mới xuất hiện , hãy chuyển sang tab 'Tệp' và chọn 'HTTP', sau đó chọn Tiếp tục , một cửa sổ cấu hình sẽ mở ra:
Mặc dù bạn có thể nhập liên kết URL đầy đủ tại đây, bạn vẫn có tùy chọn chèn URL tương đối sau. Bằng cách này, bạn có thể sử dụng Dịch vụ Liên kết này để cung cấp dữ liệu cho nhiều Bộ dữ liệu, mang lại sự linh hoạt tối đa.
Đặt tên theo ý muốn cho Dịch vụ được liên kết này.
Đối với URL cơ sở, hãy nhập https:// servername .surveycto.com theo tài liệu API SurveyCTO (đảm bảo thay thế servername bằng tên máy chủ của bạn ).
Nếu bạn đang chạy máy chủ SurveyCTO phiên bản 2.70 trở lên, hãy chọn xác thực cơ bản , nếu không, hãy chọn Xác thực Digest và nhập tên người dùng và mật khẩu SurveyCTO của bạn. Người dùng này phải có quyền " Có thể tải xuống dữ liệu" . Vai trò người dùng "Quản lý dữ liệu" sẽ được sử dụng (tìm hiểu thêm tại đây: Quản lý vai trò người dùng ).
Nhấp vào Kiểm tra kết nối ở cuối trang và nếu thành công, hãy nhấp vào Hoàn tất . Lưu ý rằng thời gian chạy tích hợp sẽ được tự động điền.
|
|
Kết nối lưu trữ Azure Blob
Khi vẫn ở trong tài nguyên Data Factory, hãy nhấp để thêm + Dịch vụ liên kết mới.
Trên trang Dịch vụ được liên kết mới , chọn Azure Blob Storage , sau đó chọn Tiếp tục .
Đặt tên cho Dịch vụ được liên kết của bạn và kiểm tra kết nối bằng cách hoàn thành các bước sau:
Đối với Tên , hãy nhập “AzureStorageLinkedService” (không có dấu ngoặc kép).
Đối với Tên tài khoản lưu trữ , hãy chọn tên tài khoản lưu trữ Azure của bạn.
Chọn Kiểm tra kết nối để xác nhận rằng dịch vụ Data Factory có thể kết nối với tài khoản lưu trữ.
Chọn Hoàn tất để lưu dịch vụ được liên kết.
|
|
II. Tạo tập dữ liệu
Trong quy trình này, bạn sẽ tạo hai tập dữ liệu:
a.) tập dữ liệu đầu vào và
b.) tập dữ liệu đầu ra. Các tập dữ liệu này là tập dữ liệu JSON và chúng tham chiếu đến các dịch vụ được liên kết mà bạn đã tạo trong phần trước.
Bộ dữ liệu đầu vào biểu thị dữ liệu được API kéo, sau đó API sẽ sao chép dữ liệu vào bộ dữ liệu đầu ra được lưu trữ trong vùng chứa blob.
Khi bạn tạo kết nối này, sẽ không có nút "Lưu". Bạn sẽ tạo từng phần (mỗi phần sẽ nằm trong một tab riêng), sau đó xuất bản tất cả cùng một lúc.
Bộ dữ liệu đầu vào
Khi vẫn ở trang Tác giả Azure Data Factory, hãy chọn nút + (dấu cộng) ở góc trên bên trái (bên phải bên dưới Factory Resources ), sau đó chọn Dataset .
Trên trang Bộ dữ liệu mới , chọn HTTP , sau đó chọn Tiếp tục .
Chọn định dạng JSON và chọn Tiếp tục .
Đi đến tab Kết nối gần phía dưới (nó sẽ nằm giữa tab Chung và tab Sơ đồ )
Đối với dịch vụ được liên kết, hãy chọn dịch vụ được liên kết HTTP trước đó đã được cấu hình.
Thêm URL tương đối theo tài liệu API SurveyCTO . Trong trường hợp của tôi, tôi sẽ chèn /api/v2/forms/data/wide/json/ test ?date= 0 để lấy toàn bộ dữ liệu từ biểu mẫu có ID là "test" ở định dạng JSON.
Cuộn xuống. Đối với mẫu Tệp , chọn Mảng đối tượng .
Chọn Xem trước dữ liệu để kiểm tra xem dữ liệu có được kéo chính xác hay không. Thao tác này sẽ xem trước các lần gửi dữ liệu cho biểu mẫu đó. Nếu hiển thị "Không có dữ liệu", hãy xác nhận rằng chưa có lần gửi dữ liệu nào cho biểu mẫu đó trước khi tiếp tục (tuy nhiên, chúng tôi khuyên bạn nên gửi một số biểu mẫu thử nghiệm để đảm bảo có một số bản ghi). Nhấp vào X để thoát khỏi mục Xem trước dữ liệu .
Bộ dữ liệu đầu ra
Một lần nữa, chọn nút + (dấu cộng) ngay bên dưới Factory Resources , sau đó chọn lại Dataset .
Trên trang Bộ dữ liệu mới , chọn Azure Blob Storage, rồi chọn Tiếp tục . Sau đó, chọn định dạng JSON và chọn Tiếp tục một lần nữa.
|
|
Đi đến tab Kết nối giữa Chung và Sơ đồ
Đối với dịch vụ được liên kết, hãy chọn dịch vụ được liên kết Azure Blob Storage trước đó đã được cấu hình
Trong mục Đường dẫn tệp , hãy nhập tên thư mục và tên tệp bạn muốn cho dữ liệu biểu mẫu. Tên tệp cần có phần mở rộng chính xác - trong trường hợp này là .json . Cả hai đều chỉ được chứa chữ thường, số và dấu gạch ngang, và bắt đầu bằng một chữ cái hoặc số.
Trong File Pattern, chọn Mảng đối tượng .
III. Tạo Pipline
Chọn nút + (dấu cộng) bên dưới Factory Resources , sau đó chọn Pipeline .
Trong Menu Hoạt động , mở Di chuyển & Biến đổi .
Kéo Sao chép dữ liệu vào khoảng trắng bên phải.
Bạn đã ở trên tab Chung . Bạn phải đặt Tên cho đường ống này ; bạn có thể giữ nguyên tên mặc định.
Bây giờ, hãy bắt đầu cấu hình kết nối giữa tập dữ liệu đầu vào và tập dữ liệu đầu ra. Trong tab Nguồn (gần cuối, giữa General và Sink ), hãy chọn tập dữ liệu đầu vào (HttpFile1).
Đi tới tab Sink và chọn tập dữ liệu đầu ra của chúng tôi (AzureBlob1)
Gần đầu trang, nhấp vào Xác thực . Đảm bảo không có lỗi nào và sửa bất kỳ lỗi nào xuất hiện.
Chọn Gỡ lỗi . Giải quyết mọi vấn đề phát sinh.
Ở góc trên bên phải, chọn "Publish All ". Thao tác này sẽ kích hoạt kết nối. Bây giờ, bạn đã có dữ liệu trong Blob Storage.
Quay lại Azure Portal (có thể nó sẽ nằm trong một tab trình duyệt khác, nhưng hãy giữ tab Data Factory mở vì bạn sẽ cần đến nó sau).
Truy cập Tài khoản lưu trữ của bạn và truy cập vào vùng chứa Blob bằng cách nhấp vào Blobs trong Dịch vụ Blob hoặc trên trang chủ Tài khoản lưu trữ:
Bên trong Blob Storage, bạn có thể đã thấy vùng chứa blob (form-data) và tệp JSON (có tên là "test" trong ảnh chụp màn hình):
Để làm mới tệp này với dữ liệu được thu thập mới nhất gửi đến Máy chủ, bạn cần thêm một Trigger. Quay lại Menu Pipeline trong tab khác và nhấp vào Thêm Trigger > Mới/Chỉnh sửa.
Một cửa sổ sẽ mở ra để bạn cấu hình trình kích hoạt. Chọn menu thả xuống Chọn trình kích hoạt và chọn Mới .
Điền vào Trigger, bao gồm tần suất bạn muốn lấy dữ liệu qua API. Lưu ý rằng nếu bạn yêu cầu tất cả các lần gửi ( ngày = 0 ), Trigger của bạn phải có khoảng thời gian ít nhất 5 phút.
Sau khi lưu và hoàn tất, hãy nhấp vào "Xuất bản tất cả" để xuất bản cấu hình kích hoạt. Nếu bạn nhấp vào tab "Giám sát " (bên dưới biểu tượng bút chì), bạn sẽ có thể theo dõi các lần chạy Pipeline và các lần chạy Trigger.
3. Tạo truy vấn trong Power BI
Sau khi cấu hình mọi thứ trên Azure, bạn chỉ cần thiết lập kết nối trên Power BI. Hãy làm theo các bước sau:
Mở Power BI Desktop và chọn Lấy Dữ liệu từ Cửa sổ Giới thiệu. Nếu không, hãy chuyển đến Tab Trang chủ và nhấp vào Lấy Dữ liệu .
Nhấp vào Azure , chọn Azure Blob Storage và chọn Kết nối .
Sau đó, một cửa sổ sẽ mở ra để bạn nhập Tên tài khoản hoặc URL . Tại đây, hãy nhập Tên tài khoản lưu trữ của bạn ( ví dụ: "martacto" trong ảnh chụp màn hình ) và sau đó nhập Khóa tài khoản:
Trong cổng thông tin Azure, hãy quay lại Tất cả dịch vụ > Lưu trữ > Tài khoản lưu trữ và chọn tài khoản lưu trữ của bạn.
Trong bảng điều khiển bên mới xuất hiện, chọn Phím truy cập .
Sao chép các giá trị cho hộp Tên tài khoản lưu trữ và hộp key1 vào bảng tạm và dán chúng vào hộp Khóa tài khoản trên PowerBI.
Một cửa sổ mới sẽ mở ra hiển thị tất cả các vùng chứa Blob của bạn - hãy chọn vùng chứa dữ liệu của bạn (forma-data) và nhấp vào Chuyển đổi dữ liệu .
Tại đây, hãy nhấp vào Nhị phân để kiểm tra lại dữ liệu của bạn.
Nhấp vào Vào bảng . Một cửa sổ sẽ mở ra, nhấp vào Ok .
Nhấp vào mũi tên bên phải cột có tên "Cột 1". Tại đây, bỏ chọn tùy chọn Sử dụng tên cột gốc làm tiền tố - thao tác này sẽ thêm các tiền tố không cần thiết vào tên biến của bạn. Nếu bạn thấy cảnh báo " Danh sách có thể chưa hoàn thành" , hãy nhấp vào "Tải thêm …" rồi chọn "OK ".
Tập dữ liệu của bạn cuối cùng sẽ xuất hiện. Nhấp vào Đóng và Áp dụng , rồi chờ các thay đổi được áp dụng. Dữ liệu của bạn giờ đã sẵn sàng cho bất kỳ bảng điều khiển Power BI nào!
Từ đây, bạn có thể tạo Báo cáo và Bảng điều khiển bằng cách sử dụng tập dữ liệu được nhập qua yêu cầu API. Bất cứ khi nào bạn muốn làm mới bảng và đồ họa để chúng minh họa dữ liệu mới nhất có sẵn trên Máy chủ, hãy nhấp vào Làm mới trên thanh menu:
Nhấp vào Làm mới sẽ chạy tập lệnh của bạn, kích hoạt một yêu cầu API mới. Tập dữ liệu của bạn sẽ được cập nhật, cũng như tất cả đồ họa và bảng liên quan.