Data Engineering

Cơ sở dữ liệu NoSQL

GraphDB (Neo4j), Document DBs (MongoDB, Firestore), Wide Column (Cassandra, Bigtable), định lý CAP, trường hợp sử dụng

20 câu hỏi phỏng vấn·
Senior
1

Định lý CAP là gì và ba tính chất của nó là gì?

Câu trả lời

Định lý CAP nói rằng một hệ thống phân tán chỉ có thể đảm bảo hai trong ba tính chất đồng thời: Consistency (tất cả các node thấy cùng dữ liệu), Availability (hệ thống luôn phản hồi), và Partition tolerance (hệ thống tiếp tục hoạt động bất chấp phân vùng mạng). Định lý này là nền tảng để hiểu các đánh đổi kiến trúc trong cơ sở dữ liệu NoSQL.

2

Sự khác biệt chính giữa cơ sở dữ liệu Document (MongoDB) và cơ sở dữ liệu Wide Column (Cassandra) là gì?

Câu trả lời

Cơ sở dữ liệu Document như MongoDB lưu trữ tài liệu JSON/BSON với schema linh hoạt và cho phép truy vấn phức tạp trên bất kỳ trường nào. Cơ sở dữ liệu Wide Column như Cassandra tổ chức dữ liệu thành các column family với partition key, được tối ưu hóa cho việc ghi lớn và đọc dựa trên key. MongoDB xuất sắc cho dữ liệu phân cấp, Cassandra cho dữ liệu chuỗi thời gian tốc độ cao.

3

Trong trường hợp sử dụng nào nên ưu tiên Neo4j hơn MongoDB hoặc Cassandra?

Câu trả lời

Neo4j là cơ sở dữ liệu đồ thị được tối ưu hóa cho các mối quan hệ phức tạp đa cấp giữa các thực thể. Nó vượt trội cho mạng xã hội, hệ thống đề xuất, phát hiện gian lận và phân tích phụ thuộc. Ngôn ngữ Cypher cho phép duyệt qua hàng triệu mối quan hệ trong vài mili giây, trong khi join SQL hoặc lookup NoSQL sẽ quá chậm về hiệu năng.

4

Partition key trong Cassandra là gì và tại sao nó quan trọng đối với hiệu năng?

5

Cú pháp Cypher để tìm tất cả bạn bè của bạn bè của một người dùng trong Neo4j là gì?

+17 câu hỏi phỏng vấn

Các chủ đề phỏng vấn Data Engineering khác

Nắm vững Data Engineering cho lần phỏng vấn tiếp theo

Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.

Bắt đầu miễn phí