0
0
Lập trình
Hưng Nguyễn Xuân 1
Hưng Nguyễn Xuân 1xuanhungptithcm

30 Câu Hỏi Phỏng Vấn PostgreSQL Thường Gặp: Từ Cơ Bản đến Nâng Cao

Đăng vào 2 ngày trước

• 5 phút đọc

Tổng Quan Về PostgreSQL

PostgreSQL là một hệ quản trị cơ sở dữ liệu quan hệ mã nguồn mở (ORDBMS), nổi tiếng bởi tính ổn định, bộ tính năng phong phú, và khả năng hỗ trợ các truy vấn phức tạp. Trong bài viết này, chúng ta sẽ tổng hợp 30 câu hỏi phỏng vấn liên quan đến PostgreSQL, giúp bạn chuẩn bị tốt cho buổi phỏng vấn về cơ sở dữ liệu này.

1. Câu Hỏi Cấp Độ Cơ Bản

  1. PostgreSQL là gì?
    PostgreSQL là một hệ quản trị cơ sở dữ liệu quan hệ hướng đối tượng mã nguồn mở, nổi bật với tính bền bỉ và khả năng hỗ trợ các truy vấn phức tạp.

  2. Các tính năng chính của PostgreSQL?
    Bao gồm: giao dịch ACID, MVCC (Multi-Version Concurrency Control), nhiều kiểu dữ liệu phong phú, indexing, full-text search và hỗ trợ JSON.

  3. Table trong PostgreSQL là gì?
    Là bộ dữ liệu có cấu trúc, gồm hàng và cột, mỗi hàng là một bản ghi và mỗi cột là một thuộc tính của bản ghi.

  4. Database trong PostgreSQL là gì?
    Là một container chứa các table, views, và functions. Một server PostgreSQL có thể chứa nhiều databases.

  5. Schema trong PostgreSQL là gì?
    Là namespace để tổ chức và quản lý các đối tượng cơ sở dữ liệu như tables và functions.

  6. psql là gì?
    Là giao diện dòng lệnh để tương tác với PostgreSQL, giúp chạy truy vấn và quản lý databases.

  7. Primary key trong PostgreSQL là gì?
    Là một khóa duy nhất xác định các hàng trong một table, đảm bảo giá trị không trùng và không NULL.

  8. Foreign key trong PostgreSQL là gì?
    Là một cột kết nối dữ liệu giữa hai tables, đảm bảo tính toàn vẹn tham chiếu.

  9. Index trong PostgreSQL là gì?
    Là cấu trúc dữ liệu giúp tăng tốc độ truy xuất dữ liệu trên một table.

  10. View trong PostgreSQL là gì?
    Là bảng ảo một truy vấn, giúp đơn giản hóa các truy vấn phức tạp.

  11. Sequence trong PostgreSQL là gì?
    Là đối tượng tạo ra chuỗi số duy nhất, thường dùng cho các trường auto-increment.

  12. pgAdmin là gì?
    Là giao diện người dùng đồ họa để quản lý databases PostgreSQL.

  13. VACUUM trong PostgreSQL là gì?
    Là lệnh thu hồi bộ nhớ bị chiếm bởi các dead tuples và cải thiện hiệu suất của database.

  14. Sự khác biệt giữa CHAR, VARCHARTEXT là gì?

    • CHAR: Ký tự cố định.
    • VARCHAR: Ký tự có độ dài thay đổi với một giới hạn.
    • TEXT: Ký tự có chiều dài thay đổi không giới hạn.
  15. Transaction trong PostgreSQL là gì?
    Là chuỗi các câu lệnh SQL, thực thi như một khối đảm bảo tính toàn vẹn dữ liệu.

2. Câu Hỏi Cấp Độ Trung Bình

  1. MVCC trong PostgreSQL là gì?
    Là phương pháp cho phép xử lý các giao dịch đồng thời mà không chặn nhau.

  2. Mục đích của EXPLAIN trong PostgreSQL là gì?
    Để phân tích kế hoạch thực thi của một truy vấn, giúp tối ưu hóa hiệu suất.

  3. Các loại joins trong PostgreSQL?

    • INNER JOIN: Hàng khớp trong cả hai tables.
    • LEFT JOIN: Hàng từ table bên trái và hàng khớp từ bên phải.
    • RIGHT JOIN: Ngược lại LEFT JOIN.
    • FULL JOIN: Hàng khi có khớp ở bất kỳ table nào.
  4. CTE (Common Table Expression) trong PostgreSQL là gì?
    Một tập kết quả có thể được tham chiếu trong các câu lệnh SQL.

  5. Sự khác biệt giữa UNIONUNION ALL là gì?

    • UNION: Loại bỏ giá trị trùng lặp.
    • UNION ALL: Không loại bỏ giá trị trùng lặp, nhanh hơn.
  6. jsonjsonb trong PostgreSQL là gì?

    • json: Lưu trữ dưới dạng text.
    • jsonb: Lưu trữ ở định dạng nhị phân, hỗ trợ indexing.
  7. Stored procedure trong PostgreSQL là gì?
    Tập hợp lệnh SQL có thể tái sử dụng và thực hiện các hoạt động phức tạp.

  8. Trigger trong PostgreSQL là gì?
    Function tự động gọi trước hoặc sau một sự kiện xảy ra trên table.

  9. Window function trong PostgreSQL là gì?
    Thực hiện phép tính trên một tập hợp các hàng liên quan đến hàng hiện tại.

  10. PostgreSQL xử lý đồng thời như thế nào?
    Qua MVCC và cơ chế khóa, cho phép nhiều giao dịch diễn ra mà không xảy ra xung đột.

3. Câu Hỏi Cấp Độ Nâng Cao

  1. Partitioned table trong PostgreSQL là gì?
    Cấu trúc cho phép chia nhỏ tables lớn, cải thiện hiệu suất.

  2. Replication trong PostgreSQL hoạt động như thế nào?
    Hỗ trợ streaming replication và logical replication cho các tables cụ thể.

  3. pg_stat_activity là gì?
    View cung cấp thông tin về các truy vấn và kết nối đang hoạt động trên server.

  4. Tablespace trong PostgreSQL là gì?
    Vị trí trên đĩa nơi lưu trữ các tệp dữ liệu, cho phép quản lý hiệu suất tốt hơn.

  5. Cách tối ưu hóa truy vấn trong PostgreSQL?
    Sử dụng indexing, phân tích kế hoạch truy vấn với EXPLAIN, phân vùng tables lớn và thường xuyên sử dụng VACUUM.
    source: viblo

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào