Hướng dẫn mongodb federated query - truy vấn liên kết mongodb
Tài liệu về nhà → MongoDB Atlas → MongoDB Atlas Trên trang này
Bạn có thể sử dụng Ngôn ngữ truy vấn MongoDB (MQL) trên Liên đoàn dữ liệu ATLAS để truy vấn và phân tích dữ liệu trên lưu trữ dữ liệu của bạn. Liên đoàn dữ liệu Atlas hỗ trợ hầu hết, nhưng không phải tất cả các lệnh máy chủ tiêu chuẩn. Để tìm hiểu thêm về các lệnh máy chủ MongoDB được hỗ trợ và không được hỗ trợ và các giai đoạn pipleline tổng hợp, hãy xem các lệnh MongoDB được hỗ trợ. Để truy vấn dữ liệu trên lưu trữ dữ liệu của bạn, cấu hình lưu trữ thể hiện cơ sở dữ liệu được liên kết của bạn phải chứa các cài đặt xác định:
Bạn có thể tạo hoặc cập nhật Cấu hình lưu trữ thể hiện cơ sở dữ liệu được liên kết của mình cho lưu trữ dữ liệu của mình bằng Trình chỉnh sửa trực quan hoặc Trình chỉnh sửa JSON. Để biết thêm thông tin, hãy xem Tạo từ UI.Visual Editor or the JSON Editor. For more information, see Create From the UI. Liên đoàn dữ liệu Atlas tạo cơ sở dữ liệu ảo và bộ sưu tập bạn đã chỉ định trong cấu hình thể hiện cơ sở dữ liệu được liên kết của bạn cho dữ liệu trong lưu trữ dữ liệu của bạn. Khi bạn kết nối với thể hiện cơ sở dữ liệu được liên kết và chạy các truy vấn, liên kết dữ liệu ATLAS sẽ xử lý các truy vấn của bạn đối với dữ liệu và trả về kết quả truy vấn. Người dùng cơ sở dữ liệu phải có một trong các vai trò sau để chạy các truy vấn đối với cá thể cơ sở dữ liệu được liên kết:
Bạn có thể chạy tối đa 30 truy vấn đồng thời trên thể hiện cơ sở dữ liệu được liên kết của mình chống lại:
MẹoNhìn thấy:
Các phần sau đây có chứa InformTaion liên quan đến việc chạy các truy vấn so với dữ liệu trong lưu trữ dữ liệu của bạn. Khi triển khai phiên bản cơ sở dữ liệu được liên kết của bạn, nếu bạn đã chỉ định một thùng S3 có cả quyền đọc và ghi hoặc AWSS3S3: PUTOBject, bạn cũng có thể lưu kết quả truy vấn của mình trong thùng S3 của mình bằng cách sử dụng Nếu bạn tạo thành công hoặc cập nhật một đối tượng trên lưu trữ dữ liệu S3 của mình, Liên đoàn dữ liệu sẽ trả về phiên bản mới nhất của đối tượng đó cho bất kỳ yêu cầu đọc tiếp theo nào và tất cả các hoạt động danh sách của các đối tượng cũng phản ánh các thay đổi. Nếu truy vấn của bạn chứa nhiều giai đoạn, mỗi giai đoạn sẽ nhận được dữ liệu gần đây nhất có sẵn từ lưu trữ dữ liệu vì giai đoạn đó được xử lý.S3 data store, Data Federation returns the latest version of that object for any subsequent read requests and all list operations of the objects also reflect the changes. If your query contains multiple stages, each stage receives the most recent data available from the data store as that stage is processed. Theo mặc định, Liên đoàn dữ liệu ATLAS không trả lại tài liệu theo bất kỳ thứ tự cụ thể nào cho các truy vấn trên các liên kết dữ liệu cho các cửa hàng dữ liệu S3. Liên đoàn dữ liệu Atlas đọc đồng thời các phân vùng và thứ tự phản hồi lưu trữ cơ bản xác định tài liệu nào liên đoàn dữ liệu ATLAS trả về trước, trừ khi bạn xác định thứ tự bằng cách sử dụng Bạn phải chịu chi phí "dữ liệu được xử lý" cho lượng dữ liệu mà các quy trình liên kết dữ liệu ATLAS trả lại kết quả cho các truy vấn của bạn ngoài chi phí "dữ liệu được trả về" cho lượng dữ liệu mà liên kết dữ liệu ATLAS trả về. Ví dụ: đối với tệp 10 GB, bạn phải chịu chi phí "dữ liệu được xử lý" sau ngoài chi phí "dữ liệu được trả về": chi phí:
Nếu bạn truy vấn một bộ sưu tập trong Liên đoàn dữ liệu Atlas được ánh xạ chỉ một bộ sưu tập Atlas, Liên đoàn dữ liệu Atlas hoạt động như một proxy và chuyển tiếp truy vấn của bạn đến Atlas. Khi hoạt động như một proxy, Liên đoàn dữ liệu Atlas không quét dữ liệu vào bộ sưu tập ảo của mình để truy vấn do đó cải thiện hiệu suất và giảm chi phí. Tối ưu hóa này không có sẵn cho các truy vấn trên các bộ sưu tập Liên đoàn dữ liệu ATLAS được ánh xạ tới nhiều bộ sưu tập Atlas. Thí dụXem xét cấu hình lưu trữ thể hiện cơ sở dữ liệu được liên kết sau: Cấu hình:
Đối với cấu hình lưu trữ trên, Liên đoàn dữ liệu ATLAS hoạt động như một proxy cho các truy vấn trên bộ sưu tập Bạn cũng có thể lưu kết quả truy vấn của mình trong cụm Atlas của mình bằng cách sử dụng Nếu bạn tạo thành công hoặc cập nhật một tài liệu trong bộ sưu tập của mình trên Atlas Cluster, Liên đoàn dữ liệu sẽ trả về phiên bản mới nhất của tài liệu đó cho bất kỳ yêu cầu đọc tiếp theo nào và tất cả các hoạt động danh sách của bộ sưu tập cũng phản ánh các thay đổi. Nếu truy vấn của bạn chứa nhiều giai đoạn, mỗi giai đoạn sẽ nhận được dữ liệu gần đây nhất có sẵn từ lưu trữ dữ liệu vì giai đoạn đó được xử lý. Atlas ghi lại các truy vấn của bạn đối với dữ liệu cụm của bạn trong nhật ký kiểm toán cụm Atlas. Mục nhập nhật ký cho người dùng cơ sở dữ liệu ở định dạng sau:
Ví dụ: đối với người dùng cơ sở dữ liệu được định cấu hình trong ATLAS là 2, nhật ký nhật ký trong nhật ký kiểm toán cụm Atlas giống như sau:
Ghi chúCơ chế kết nối luôn là 3 trong nhật ký kiểm toán cụm Atlas.Đối với các truy vấn, Liên đoàn dữ liệu Atlas sử dụng các phân vùng mà bạn đã tạo trên các trường trong quá trình tạo đường ống Atlas Data Lake. Thứ tự của các trường trong các phân vùng rất quan trọng theo cách tương tự như đối với các chỉ mục hợp chất. Dữ liệu được tối ưu hóa cho các truy vấn bởi trường thứ nhất, tiếp theo là trường thứ hai, v.v. Liên đoàn dữ liệu Atlas phân chia các phân vùng theo thứ tự; Nếu một truy vấn bỏ qua một phân vùng cụ thể, Liên đoàn dữ liệu Atlas kém hiệu quả trong việc sử dụng bất kỳ phân vùng nào theo điều đó.Compound Indexes. Data is optimized for queries by the first field, followed by the second field, and so on. Atlas Data Federation parses the partitions in order; if a query omits a particular partition, Atlas Data Federation is less efficient in making use of any partitions that follow that. Liên đoàn dữ liệu Atlas ít hoạt động hơn trong việc hỗ trợ các truy vấn trên các trường không có phân vùng. Liên đoàn dữ liệu Atlas không hỗ trợ các truy vấn trên các trường được loại trừ rõ ràng khi tạo đường ống Atlas Data Lake. Ghi chúCơ chế kết nối luôn là |