- Chuyên mục khác :
- Git cơ bản và nâng cao
- ·
- MySQL cơ bản và nâng cao
- ·
- MongoDB cơ bản và nâng cao
- ·
- SQL cơ bản và nâng cao
- ·
- Linux cơ bản và nâng cao
- Cơ bản về MongoDB
- Học MongoDB cơ bản và nâng cao
- Tổng quan về MongoDB
- Lợi thế của MongoDB
- Cài đặt MongoDB
- Mô hình hóa dữ liệu trong MongoDB
- Tạo Database trong MongoDB
- Xóa Database trong MongoDB
- Tạo Collection trong MongoDB
- Xóa Collection trong MongoDB
- Kiểu dữ liệu trong MongoDB
- Chèn Document trong MongoDB
- Truy vấn Document trong MongoDB
- Cập nhật Document trong MongoDB
- Xóa Document trong MongoDB
- Projection trong MongoDB
- Giới hạn bản ghi trong MongoDB
- Sắp xếp bản ghi trong MongoDB
- Chỉ mục (Index) trong MongoDB
- Aggregation trong MongoDB
- Replica Set trong MongoDB
- Shard trong MongoDB
- Tạo Backup trong MongoDB
- MongoDB Deployment
- Hoạt động MongoDB nâng cao
- Relationship trong MongoDB
- Tham chiếu Database trong MongoDB
- Covered Query trong MongoDB
- Phân tích truy vấn trong MongoDB
- Hoạt động nguyên tử (Atomic Operation) trong MongoDB
- Hoạt động chỉ mục nâng cao trong MongoDB
- Hạn chế của chỉ mục trong MongoDB
- ObjectId trong MongoDB
- Map Reduce trong MongoDB
- Text Search trong MongoDB
- Regular Expression trong MongoDB
- Làm việc với Rockmongo
- GridFS trong MongoDB
- Capped Collection trong MongoDB
- Auto-Increment Sequence trong MongoDB
Capped collections là các Circular Collection có kích cỡ cố định mà theo sau thứ tự chèn để làm tăng cao hiệu suất của các hoạt động create, read và delete. Với Circular, nó nghĩa là khi kích cỡ cố định được cấp phát hết cho Collection, thì nó sẽ bắt đầu xóa Document cũ nhất trong Collection đó mà không cần cung cấp bất kỳ lệnh tường minh nào.
Capped Collection giới hạn các hoạt động cập nhật tới Document nếu các cập nhật đó làm tăng kích cỡ của Document. Khi Capped Collection lưu giữ các Document theo trật tự của Disk Storage, nó bảo đảm rằng kích cỡ tài liệu không tăng hơn kích cỡ được cấp phát trên Disk. Capped Collection là tốt nhất để lưu giữ thông tin log, cache data, …
Tạo Capped Collection trong MongoDB
Để tạo một Capped Collection, chúng ta sử dụng lệnh thường dùng là createCollection nhưng với tùy chọn capped là true và xác định kích cỡ tối đa (bằng byte) cho Collection đó.
>db.createCollection("cappedLogCollection",{capped:true,size:10000})
Với size của Collection, chúng ta cũng có thể giới hạn số Document trong Collection đó bởi sử dụng tham số max:
>db.createCollection("cappedLogCollection",{capped:true,size:10000,max:1000})
Nếu bạn muốn kiểm tra xem một Collection là capped hoặc không, sử dụng lệnh isCapped:
>db.cappedLogCollection.isCapped()
Nếu có một Collection đang tồn tại mà bạn có ý định muốn chuyển đổi thành capped, bạn sử dụng code sau:
>db.runCommand({"convertToCapped":"posts",size:10000})
Code này sẽ chuyển đổi posts collection đang tồn tại thành một Capped Collection.
Truy vấn trên Capped Collection
Theo mặc định, một truy vấn find trên một Capped Collection sẽ hiển thị các kết quả trong thứ tự chèn. Nhưng nếu bạn muốn lấy các Document theo thứ tự ngược lại, sử dụng lệnh sort như sau:
>db.cappedLogCollection.find().sort({$natural:-1})
Dưới đây là một số điều cần lưu ý trong khi làm việc với Capped Collection:
Chúng ta không thể xóa các Document từ một Capped Collection.
Không có chỉ mục mặc định có mặt trong một Capped Collection, ngay cả trên trường _id.
Trong khi chèn một Document mới, MongoDB không thực sự phải nhìn vào vị trí đặt Document mới đó trên Disk. Nó có thể chèn Document mới đó tại đuôi của Collection. Điều này làm cho hoạt động chèn trong Capped Collection diễn ra rất nhanh.
Tương tự, khi đọc các Document, MongoDB chỉ phải trả về các Document theo cùng thứ tự như trên Disk. Điều này làm cho hoạt động đọc diễn ra rất nhanh.
Các bài học lập trình MongoDB phổ biến khác tại s2sontech:
Bình luận (0)