NoSQL Studio
Tài liệu tổng quan cho không gian làm việc NoSQL của Data Explorer: cách chọn collection, viết MQL, đọc kết quả, dùng AI, và giữ an toàn cho các thao tác có thể làm thay đổi dữ liệu.
Theo collection
Khi chưa chọn collection, workspace hiển thị một dashboard định hướng. Khi chọn collection, toàn bộ toolbar, editor, schema tools và result panel sẽ bám theo ngữ cảnh đó.
Guardrails rõ ràng
Không gian NoSQL luôn phản ánh trạng thái an toàn của kết nối như read-only, query execution disabled, giới hạn kết quả, và trạng thái `truncated` khi aggregate hoặc find bị cap.
AI hiểu collection hiện tại
NoSQL AI box không chỉ là chat. Nó dùng collection đang mở, database đang active, và lịch sử prompt gần nhất để sinh MQL có thể áp dụng ngay vào editor.
Workspace được tổ chức như thế nào?
Tìm kiếm collection qua chỉ mục
Sidebar có ô tìm kiếm điều hướng qua chỉ mục search đã sync sẵn, giúp nhảy tới đúng database/collection ngay cả khi cluster có hàng trăm collection.
Trước khi chọn collection
Workspace hiển thị dashboard NoSQL để bạn kiểm tra kết nối, trạng thái health, và định hướng điểm bắt đầu. Đây là bước tốt để xác nhận bạn đang ở đúng cluster hoặc database.
Sau khi chọn collection
Header trung tâm đổi sang ngữ cảnh `db.<collection>`, các nút view mode xuất hiện, editor nhận đúng target collection, và result panel phản ánh chính xác lần chạy gần nhất.
Editor và kết quả tách rời
Bạn có thể viết hoặc chỉnh MQL mà không làm mất kết quả cũ ngay lập tức. Panel kết quả có thể mở/ẩn riêng để giữ không gian soạn thảo rộng hơn khi cần.
AI là trợ lý tại chỗ
AI panel chạy song song với editor NoSQL, nên workflow phổ biến là: mô tả ý định bằng tiếng thường, nhận MQL, áp vào editor, rồi chạy hoặc tinh chỉnh tiếp.
MQL trong app này có hình dạng gì?
# Lấy 20 document mới nhất theo createdAt
{
"action": "find",
"collection": "orders",
"filter": { "status": "paid" },
"sort": { "createdAt": -1 },
"limit": 20
}
# Pipeline tổng hợp nhiều bước
{
"action": "aggregate",
"collection": "orders",
"pipeline": [
{ "$match": { "status": "paid" } },
{ "$group": { "_id": "$country", "total": { "$sum": 1 } } },
{ "$sort": { "total": -1 } }
],
"limit": 500
}
Các action như `insertOne`, `updateOne`, `updateMany`, `deleteOne`, hoặc `deleteMany` là mutation. App sẽ không nên coi chúng như “chạy vô tư như find”. Hãy dùng chúng với kết nối phù hợp, review kỹ filter, và ưu tiên chạy thử trên môi trường an toàn trước.
Với `aggregate`, backend áp giới hạn trên cursor trước khi gọi `toArray()`. Response có `appliedLimit`, `limitSource` và `truncated`, nên nếu kết quả bị cap thì UI sẽ nói rõ thay vì khiến bạn tưởng đó là toàn bộ collection.
Guardrails và quyền thực thi
Execution disabled
Nếu kết nối bị tắt quyền chạy query, UI vẫn cho bạn đọc tài liệu, soạn payload, hoặc dùng AI để chuẩn bị lệnh, nhưng nút thực thi sẽ không còn là đường chạy hợp lệ.
Read-only mode
Với read-only, app ưu tiên các action đọc như `find` và `aggregate`. Đây là chế độ rất hợp cho production browsing, audit nhanh, hoặc review dataset mà không chạm vào dữ liệu thật.
Result panel không chỉ để nhìn output
Panel kết quả còn là nơi app hiển thị summary label, số document đã về, badge khi kết quả bị cap, gợi ý đọc kết quả theo grid/tree, và phản hồi ngắn cho mutation. Điều này giúp bạn không phải đoán liệu truy vấn vừa rồi “đã chạy đúng ý” hay chưa.
Đọc kết quả bằng đúng góc nhìn
Tree (JSON)
Auto-Flatten Grid
Schema Analysis và Aggregation Builder
Mẹo thực tế: hãy bắt đầu bằng `find` hoặc `aggregate` nhỏ để hiểu shape dữ liệu trước, sau đó mới viết mutation. Với collection lớn, thêm `$match`, `$project` hoặc `limit` sớm để tránh pipeline quá rộng rồi mới chuyển sang schema analysis hoặc aggregation builder.
Nếu bạn đang kẹt ở bước viết MQL, hãy dùng NoSQL AI box như một “bản nháp thông minh”: mô tả ý định bằng tiếng thường, nhận payload, áp vào editor, rồi chỉnh tay các field nhạy cảm trước khi chạy.
Sẵn sàng khám phá dữ liệu?
Tham gia cộng đồng trên GitHub để đóng góp cho IDE cơ sở dữ liệu địa phương thông minh nhất.
Mở Ứng dụng