SQL Database

Định nghĩa

SQL Database là database quan hệ dùng bảng, schema rõ, keys, constraints và SQL để truy vấn dữ liệu có cấu trúc.

Cách hiểu bằng lời của tôi

SQL database mạnh khi dữ liệu có quan hệ rõ và correctness quan trọng. Schema, foreign key, transaction và join giúp database giữ invariant thay cho application code. Đổi lại, scale ngang và migration schema ở quy mô lớn cần thiết kế cẩn thận.

Khi phù hợp

  • Transactional workloads như payment, booking, inventory.
  • Dữ liệu có quan hệ nhiều bảng và cần query linh hoạt.
  • Cần ACID, constraints và Transaction Isolation.
  • Team muốn tận dụng tooling trưởng thành: SQL, EXPLAIN, migration, backup.

Trade-off

  • JOIN lớn có thể thành bottleneck nếu index/schema không tốt.
  • Vertical scaling có giới hạn.
  • Distributed SQL/strong consistency trả thêm latency coordination.

Liên kết