Cơ sở dữ liệu 22/09/2026 6 phút

Trigram pg_trgm trong PostgreSQL: tìm gần đúng, chịu được lỗi gõ

pg_trgm đo độ tương tự chuỗi bằng tỉ lệ trigram chung, nên tìm được cả khi gõ sai chính tả — điều LIKE và full-text search không làm được. Đo thật: KNN với GiST 190 ms, ngưỡng với GIN 104 ms, và Postgersql gõ sai vẫn tìm ra PostgreSQL. Chọn GiST hay GIN. PostgreSQL 16.

Cơ sở dữ liệu 22/09/2026 5 phút

text vs varchar vs char trong PostgreSQL: chọn kiểu chuỗi nào và vì sao

Trong PostgreSQL, text và varchar lưu và chạy y hệt nhau — varchar(n) chỉ thêm một ràng buộc độ dài. Đo thật: char(50) tốn gấp đôi text vì đệm khoảng trắng, và gây bẫy so sánh khi độ dài logic khác byte trên đĩa. Vì sao char cố định nhanh hơn là huyền thoại. PostgreSQL 16.

Cơ sở dữ liệu 22/09/2026 5 phút

Sắp thứ tự cột để giảm padding trong PostgreSQL: cùng bảng, khác dung lượng

PostgreSQL căn lề mỗi cột theo mốc kiểu của nó, chèn byte đệm khi lệch. Đo thật: cùng 7 cột y hệt, thứ tự xấu chiếm 403 MB còn thứ tự tối ưu chỉ 287 MB — chênh 116 MB chỉ do thứ tự khai báo. Quy tắc sắp xếp và truy vấn tự tìm thứ tự tối ưu. PostgreSQL 16.