HƯỚNG DẪN KẾT NỐI POWER BI VỚI SUPABASE DATABASE QUA REST API & API KEYS
2/23/2026
HƯỚNG DẪN KẾT NỐI POWER BI VỚI SUPABASE DATABASE QUA REST API & API KEYS
Giới thiệu
Trong thời đại phân tích dữ liệu hiện nay, việc kết nối một hệ thống cơ sở dữ liệu linh hoạt như Supabase với công cụ phân tích mạnh mẽ như Power BI là nhu cầu phổ biến của doanh nghiệp và các nhóm dữ liệu.
Với bản Free, Supabase không cấp quyền truy cập PostgreSQL trực tiếp, vì vậy kết nối Power BI bắt buộc thông qua REST API. Bài viết này cung cấp hướng dẫn chi tiết để bạn kết nối Power BI với Supabase một cách bảo mật, hiệu quả và tối ưu.
Supabase là gì?
Supabase là một nền tảng Backend-as-a-Service (BaaS) mã nguồn mở được xây dựng dựa trên PostgreSQL, hướng đến việc cung cấp một hạ tầng backend hiện đại, đơn giản, mạnh mẽ và dễ mở rộng.
Với Supabase: Bạn chỉ cần tạo một dự án trên Supabase và định nghĩa các bảng (projects, tasks, users) thông qua giao diện quản trị trực quan hoặc bằng SQL. Sau đó:
Supabase tự động tạo API RESTful cho tất cả các bảng
Bạn có thể thiết lập quyền truy cập bằng Row Level Security
Kích hoạt hệ thống xác thực chỉ với vài cú nhấp chuột
Sử dụng Storage để lưu trữ tệp đính kèm
Kích hoạt tính năng Realtime để cập nhật dữ liệu theo thời gian thực
Supabase không chỉ giúp bạn tiết kiệm đáng kể thời gian ban đầu mà còn giảm thiểu công sức bảo trì lâu dài, vì bạn không cần phải quản lý cơ sở hạ tầng backend phức tạp mà lại còn có thể tự self host được.
Hướng dẫn kết nối Power BI với Supabase REST API
Bước 1: Nạp dữ liệu
Cách 1: Nạp dữ liệu bằng cách import file trực tiếp ngay trong giao diện
Bước 1.1: Vào Database → Table editor
Chọn bảng bạn muốn nạp dữ liệu. Nếu chưa có bảng → nhấn Create table và tạo cấu trúc cột.
Bước 1.2: Lựa chọn Import data from CSV
Bước 1.3: Tải lên file CSV trong phần Upload file CSV hoặc copy một bảng tính từ Google Sheets or Excel rồi dán vào phần Paste text sau đó ấn Save
Cách 2: Dùng SQL Editor để nạp dữ liệu
Sử dụng SQL để trực tiếp tạo bảng và thêm dữ liệu
Ngoài ra sẽ còn các cách để tải dữ liệu lên Supabase như sử dụng API của Supabase hoặc sử dụng Supabase Storage nhưng bài viết này hướng đến các kết nối Power BI với Supabase nên sẽ không đi sâu vào phần này.
Bước 2: Lấy API URL và anon key
Với API URL, vào Project Settings → Data API → Project URL
Project URL sẽ có dạng https://xxxxx.supabase.co
Với anon key, Project Settings → API Keys → Legacy anon, service_role API keys → anon public
Bước 3: Mở Power BI → Get Data → Web → Advanced
Thêm URL vào URL part ở dạng https://xxxx.supabase.co/rest/v1/[ten_bang]?select=*
Nhấn vào dấu 3 chấm ở bên phải dòng URL part thứ 2 và chọn Delete
Nhấn vào Add header và nhập theo bảng sau:
Header | Value |
apikey | YOUR_PUBLISHABLE_KEY |
Authorization | Bearer YOUR_PUBLISHABLE_KEY |
Kết quả sau khi nhập các thông tin sẽ như hình dưới đây:
Nếu sau khi thêm bảng nhưng không thấy data của bảng có thể do Power BI nhận mảng rỗng [] vì RLS (Row Level Security) đang bật. Khi này cần chạy câu lệnh
ALTER TABLE ecommerce DISABLE ROW LEVEL SECURITY; #Tắt RLS
#hoặc
CREATE POLICY "Allow public read"
ON ecommerce
FOR SELECT
TO public
USING (true);
ALTER TABLE ecommerce ENABLE ROW LEVEL SECURITY; #Tạo Policy cho Select