Firestore
Database NoSQL. Dữ liệu dạng tài liệu linh hoạt, mạnh về realtime.
Firebase là bộ backend gói sẵn của Google. Nổi tiếng nhất ở khả năng realtime và hợp với app mobile. Gần đây Firebase mở rộng thêm cả database kiểu SQL, nên lựa chọn rộng hơn xưa.
Hiểu ngắn: một bộ backend đóng gói sẵn của Google, cắm vào là chạy, rất mạnh cho app cần dữ liệu sống động theo thời gian thực.
Bạn có ngay nhiều dịch vụ trong một dự án:
Đặc biệt mạnh ở vài điểm:
Không cần dùng hết. Hầu hết app chỉ cần một database và phần đăng nhập là chạy thật.
Database NoSQL. Dữ liệu dạng tài liệu linh hoạt, mạnh về realtime.
Lựa chọn SQL mới. Database kiểu Postgres cho dữ liệu quan hệ, vẫn có realtime.
Đăng nhập dựng sẵn. Email, Google, số điện thoại và nhiều cách khác.
Lưu file. Ảnh, video, tài liệu của người dùng.
Code chạy phía server. Cho logic riêng, gửi thông báo, gọi AI.
Chứa giao diện. Firebase có thể host luôn frontend, không bắt buộc dùng nơi khác.
Trình tự chung, mô tả mỗi bước làm gì. Giao diện Firebase có thể đổi theo thời gian nên hãy nắm ý chính.
Mở Firebase Console, tạo project mới gắn với tài khoản Google.
Vì sao: đây là "ngôi nhà" chứa toàn bộ backend của app.Chọn Firestore (NoSQL, linh hoạt, realtime) hoặc SQL Connect (kiểu Postgres) tùy dữ liệu của bạn.
Vì sao: chọn đúng kiểu dữ liệu ngay từ đầu đỡ phải sửa lớn về sau.Viết quy tắc bảo mật: ai được đọc, ai được ghi dữ liệu nào. Đây là phần khóa dữ liệu của Firebase.
Vì sao: để mặc định mở là bất kỳ ai cũng đọc ghi được, rất nguy hiểm.Trong phần Authentication, bật email, đăng nhập Google hoặc số điện thoại.
Vì sao: có đăng nhập mới biết dữ liệu là của ai.Firebase cấp một đoạn cấu hình (config) gồm khóa và mã dự án để app kết nối vào.
Vì sao: đây là thông tin để giao diện app tìm đúng dự án của bạn.Cài thư viện Firebase, dán config vào. Sau bước này app đã đọc ghi được dữ liệu thật.
Vì sao: đây là lúc giao diện và hậu trường bắt tay nhau.Nếu cần xử lý riêng như gửi thông báo hay gọi AI, viết một Cloud Function chạy phía server.
Vì sao: giữ logic nhạy cảm ở server, không lộ ra giao diện.Đăng nhập thử, thêm dữ liệu, thử bằng tài khoản khác xem rules có chặn đúng. Rồi đưa giao diện lên Firebase Hosting hoặc hosting khác.
Vì sao: chạy được mới tính, đừng tin là xong khi chưa thử.Firebase có điểm dễ nhầm: khóa trong config không phải bí mật. An toàn thật sự nằm ở Security Rules.
Khóa này dùng để nhận diện dự án, không phải mật khẩu. Để trong giao diện là bình thường. Cái thật sự giữ an toàn là Security Rules.
Khóa quản trị (Admin SDK), bỏ qua mọi quy tắc bảo mật. Chỉ dùng ở phía server hoặc Cloud Function, không bao giờ để trong giao diện hay đẩy lên GitHub.
environment variable, thêm .env vào .gitignore.
Mỗi lựa chọn có cái được và cái mất. Đây là bức tranh thật để bạn quyết.
Người mới hay vấp đúng vài chỗ này khi dùng Firebase.
Lúc làm thử hay để chế độ mở, rồi quên đóng. Ai cũng đọc ghi được dữ liệu.
Firestore tính tiền theo lượt đọc ghi. Tải lại liên tục hoặc đọc cả đống dễ tốn.
Firestore không nối bảng như SQL. Thiết kế kiểu SQL vào Firestore sẽ vướng.
AI gắn Firebase rất nhanh, nhưng có thể để rules lỏng hoặc lộ khóa service account.
Nắm được Firestore và SQL Connect khác nhau ra sao, viết Security Rules cho chặt, giữ khóa service account an toàn, là bạn đã có thể cho app chạy thật với người dùng một cách yên tâm.
← Về trang chủ backend · Phong Ho - AI Business