MongoDB tạo bộ sưu tập giới hạn

Chúng tôi có thể tạo các bộ sưu tập trong mongoDb mà chúng tôi có thể áp dụng giới hạn kích thước. Những loại bộ sưu tập đặc biệt này được gọi là Bộ sưu tập được giới hạn. Đây là một loại hàng đợi vòng tròn, trong đó nếu đạt đến giới hạn kích thước được phân bổ, nó sẽ tạo khoảng trống cho các tài liệu mới bằng cách ghi đè lên các tài liệu cũ nhất trong bộ sưu tập

Cách tạo Bộ sưu tập được giới hạn.
______0
Ở đây các tham số xác định.

  • nameOfCollection. tên bộ sưu tập giới hạn
  • tùy chọn "giới hạn". đặt thành true trong trường hợp tạo bộ sưu tập giới hạn
  • tùy chọn "kích thước". chỉ định giới hạn kích thước cho bộ sưu tập theo byte (bắt buộc trong trường hợp bộ sưu tập bị giới hạn)
  • tùy chọn “tối đa”. chỉ định giới hạn về số lượng tài liệu tối đa được phép trong bộ sưu tập (tùy chọn kích thước được ưu tiên hơn tùy chọn tối đa)
  • tùy chọn “autoIndexId”. đặt thành false trong trường hợp bộ sưu tập bị giới hạn để tắt tính năng tạo chỉ mục tự động

Ví dụ: hãy tạo một bộ sưu tập giới hạn có tên là “demo”

MongoDB tạo bộ sưu tập giới hạn

Ở đây chúng tôi đã đặt giới hạn kích thước là 500 byte và số lượng tài liệu tối đa là 3. Bây giờ hãy chèn một số tài liệu vào bộ sưu tập này

MongoDB tạo bộ sưu tập giới hạn

Bây giờ, giới hạn kích thước tối đa đã đạt đến và nếu chúng tôi cố gắng thêm nhiều tài liệu hơn, tài liệu cũ sẽ bị tài liệu mới lấn át

MongoDB tạo bộ sưu tập giới hạn

Ghi chú. Lệnh db.collection.isCapped() được sử dụng để kiểm tra xem một bộ sưu tập có phải là một bộ sưu tập Capped hay không

Ưu điểm của Bộ sưu tập giới hạn.
1. Truy vấn không cần chỉ mục để trả về tài liệu theo thứ tự chèn do nó cung cấp thông lượng chèn cao hơn.

2. Các bộ sưu tập được giới hạn chỉ cho phép các bản cập nhật phù hợp với kích thước tài liệu gốc, điều này đảm bảo tài liệu không thay đổi vị trí của nó trên đĩa

3. Hữu ích để giữ các tệp nhật ký

Nhược điểm của Bộ sưu tập giới hạn.
1. Nếu thao tác cập nhật tăng kích thước ban đầu của bộ sưu tập giới hạn, thao tác cập nhật không thành công.

2. Chúng tôi không thể xóa tài liệu khỏi bộ sưu tập giới hạn. Để xóa tất cả các bản ghi khỏi bộ sưu tập được giới hạn, hãy sử dụng lệnh { emptycapped: nameOfCollection }

3. Chúng tôi không thể chia nhỏ bộ sưu tập giới hạn

Vì vậy, chúng tôi có thể đưa ra lựa chọn có sử dụng bộ sưu tập giới hạn theo trường hợp sử dụng của chúng tôi hay không

Hy vọng điều này sẽ giúp 🙂

TÌM THẤY NÀY HỮU ÍCH?

Nhãn -

giới hạn bộ sưu tập MongoDB

bình luận (2)

  1. MongoDB tạo bộ sưu tập giới hạn
    Dilee15 tháng 11, 2016 tại 7. 12 giờ trưa

    Có một số hạn chế cho vai trò. dbAdmin khi chạy các lệnh như find(), tổng hợp(), v.v. Bạn có biết nếu có những lựa chọn thay thế cho các tình huống như vậy trong 3. 2. x của mongodb?

    MongoDB Capped Collections không có gì khác ngoài kích thước cố định của bộ sưu tập hình tròn, theo sau phần chèn để hỗ trợ hiệu suất cao cho các thao tác tạo, xóa và đọc. Bộ sưu tập giới hạn tròn nói rằng khi chúng tôi phân bổ kích thước cố định cho bộ sưu tập, nó đã cạn kiệt. Bộ sưu tập được giới hạn sẽ xóa tài liệu cũ nhất khỏi bộ sưu tập, để xóa tài liệu này, chúng tôi không phải cung cấp bất kỳ lệnh rõ ràng nào cho cùng. Bộ sưu tập giới hạn là cần thiết và hữu ích để cung cấp kích thước cố định cho bộ sưu tập, theo thứ tự chèn

    Gói khoa học dữ liệu tất cả trong một(360+ khóa học, hơn 50 dự án)

    MongoDB tạo bộ sưu tập giới hạn
    MongoDB tạo bộ sưu tập giới hạn
    MongoDB tạo bộ sưu tập giới hạn
    MongoDB tạo bộ sưu tập giới hạn

    MongoDB tạo bộ sưu tập giới hạn
    MongoDB tạo bộ sưu tập giới hạn
    MongoDB tạo bộ sưu tập giới hạn
    MongoDB tạo bộ sưu tập giới hạn

    Giá
    Xem khóa học

    360+ Khóa học trực tuyến. hơn 50 dự án. Hơn 1500 giờ. Giấy chứng nhận có thể kiểm chứng. Truy cập Trọn đời
    4. 7 (83.902 xếp hạng)

    cú pháp

    Bắt đầu khóa học khoa học dữ liệu miễn phí của bạn

    Hadoop, Khoa học dữ liệu, Thống kê và những thứ khác

    db.createCollection (Collection_name, {capped: Boolean, autoIndexId: Boolean, size: number, max:number})

    Thông số

    Dưới đây là cú pháp mô tả tham số của capped collections trong MongoDB

    1. Tạo bộ sưu tập. Tạo bộ sưu tập là một phương pháp được sử dụng để tạo bộ sưu tập giới hạn mới

    2. Tên bộ sưu tập. Nó ghi tên bộ sưu tập giới hạn. Chúng tôi đã sử dụng bất kỳ tên nào cho bộ sưu tập giới hạn

    3. giới hạn. Chúng tôi đã đặt tùy chọn giới hạn là đúng hoặc sai nếu chúng tôi đã đặt tùy chọn giới hạn là đúng thì bộ sưu tập của chúng tôi sẽ được tạo dưới dạng bộ sưu tập được giới hạn. Nếu chúng tôi đã chỉ định tùy chọn bộ sưu tập giới hạn là sai, thì bộ sưu tập được tạo mà không có bộ sưu tập giới hạn

    4. Kích thước. Tùy chọn kích thước sẽ chỉ định giới hạn kích thước cho bộ sưu tập giới hạn. Chúng tôi có thể chỉ định kích thước của bộ sưu tập giới hạn theo byte. Tham số này là bắt buộc khi chúng tôi đã xác định bộ sưu tập của mình là bộ sưu tập được giới hạn trong MongoDB

    5. tối đa. Tùy chọn tối đa sẽ chỉ định giới hạn số lượng tài liệu tối đa được phép trong bộ sưu tập giới hạn. Tùy chọn kích thước sẽ ưu tiên hơn tùy chọn tối đa trong bộ sưu tập giới hạn MongoDB

    6. ID chỉ mục tự động. Chúng tôi đã đặt id chỉ mục tự động là đúng hoặc sai. Nếu chúng tôi đã đặt tham số ID chỉ mục tự động là sai tại thời điểm đó bộ sưu tập giới hạn sẽ vô hiệu hóa việc tạo chỉ mục tự động. Nếu chúng tôi đặt nó thành sự thật, thì nó sẽ tạo một chỉ mục tự động trên các bộ sưu tập được giới hạn

    Bộ sưu tập được giới hạn hoạt động như thế nào trong MongoDB?

    Dưới đây là hoạt động của capped collection trong MongoDB

    • Không có gì khác ngoài kích thước cố định của bộ sưu tập hình tròn, theo sau phần chèn để hỗ trợ hiệu suất cao cho các thao tác tạo, xóa và đọc
    • Bộ sưu tập giới hạn sẽ hạn chế cập nhật khi kết quả cập nhật đạt đến kích thước tài liệu
    • Bộ sưu tập được giới hạn sẽ lưu trữ các tài liệu theo thứ tự lưu trữ đĩa. Khi vượt quá giới hạn tối đa, thì không được phép chèn và cập nhật trên bộ sưu tập giới hạn
    • Bộ sưu tập được giới hạn sẽ đảm bảo rằng kích thước của bộ sưu tập sẽ không làm tăng kích thước được phân bổ trên đĩa
    • Bộ sưu tập được giới hạn trong MongoDB về cơ bản được sử dụng để lưu trữ thông tin nhật ký, khối lượng dữ liệu lớn và thông tin bộ đệm
    • Bộ sưu tập giới hạn tròn nói rằng khi chúng tôi phân bổ kích thước cố định cho bộ sưu tập, nó đã cạn kiệt. Lúc đó capped collection trong MongoDB sẽ xóa document cũ nhất khỏi collection
    • Để xóa tài liệu, chúng tôi không cần cung cấp bất kỳ lệnh rõ ràng nào cho cùng
    • Chúng tôi đã sử dụng lệnh thu thập giới hạn bình thường để tạo bộ sưu tập giới hạn, nhưng chúng tôi cần chỉ định tùy chọn giới hạn là đúng và cần chỉ định kích thước tối đa của bộ sưu tập theo byte
    • Chúng tôi đã sử dụng lệnh Capped để kiểm tra bộ sưu tập của chúng tôi có bị giới hạn hay không. Nó sẽ hiển thị cờ là true hoặc false. Nếu bộ sưu tập của chúng tôi được giới hạn, nó sẽ hiển thị đúng, nếu bộ sưu tập của chúng tôi không bị giới hạn, nó sẽ hiển thị sai. Dưới đây là ví dụ

    Mã số

    db.books.isCapped()
    db.capped_test.isCapped()

    đầu ra

    MongoDB tạo bộ sưu tập giới hạn

    Giải trình. Trong ví dụ trên bộ sưu tập sách không phải là bộ sưu tập bị giới hạn nên nó sẽ hiển thị cờ là sai, capped_test là bộ sưu tập bị giới hạn nên nó sẽ hiển thị cờ là đúng. Bộ sưu tập giới hạn sẽ nhường chỗ cho các tài liệu mới trong khi đạt đến giới hạn của bộ sưu tập giới hạn. Bộ sưu tập giới hạn sẽ duy trì thứ tự chèn, không lập chỉ mục bộ sưu tập giới hạn chi phí sẽ hỗ trợ chèn cao hơn xuyên suốt trong MongoDB

    Ví dụ về Bộ sưu tập được giới hạn MongoDB

    Dưới đây là ví dụ về capped collection trong MongoDB

    Ví dụ #1 – Tạo Capped Collection

    Chúng tôi đã tạo một tên bộ sưu tập giới hạn là capped_test_mongodb

    Mã số

    db.createCollection("capped_test_mongodb",{capped:true,size:1})
    db.capped_test_mongodb.isCapped()

    đầu ra

    MongoDB tạo bộ sưu tập giới hạn

    Giải trình. Trong ví dụ trên, chúng tôi đã sử dụng tham số kích thước là 1, vì vậy kích thước của bộ sưu tập được giới hạn là 1 byte. Sau khi tạo bộ sưu tập giới hạn, chúng tôi đã kiểm tra bộ sưu tập đã tạo có giới hạn hay không

    Ví dụ #2 – Sử dụng tham số tối đa

    Chúng tôi đã tạo một tên bộ sưu tập giới hạn là capped_max_mongodb. Chúng tôi đã thêm tham số kích thước và tối đa trong khi tạo bộ sưu tập trong MongoDB. Ví dụ dưới đây cho thấy tạo bộ sưu tập bằng cách sử dụng tham số kích thước và kích thước tối đa

    Mã số

    db.createCollection ("capped_max_mongodb", {capped: true, size: 10, max: 10})
    db.capped_max_mongodb.isCapped ()

    đầu ra

    MongoDB tạo bộ sưu tập giới hạn

    Giải trình. Trong ví dụ trên, chúng tôi đã sử dụng tham số kích thước là 10 và tham số tối đa là 10, vì vậy kích thước của bộ sưu tập được giới hạn là 10 byte và tài liệu tối đa là 10

    Ví dụ #3 – Chuyển đổi bộ sưu tập thành bộ sưu tập giới hạn

    Chúng tôi đã chuyển đổi bộ sưu tập sách thành bộ sưu tập giới hạn. Chúng tôi đã thêm tham số size và max trong khi chuyển đổi bộ sưu tập thành bộ sưu tập được giới hạn trong MongoDB

    Mã số

    db.books.isCapped ()
    db.runCommand({"convertToCapped":"books", size:10, max:10})

    đầu ra

    MongoDB tạo bộ sưu tập giới hạn

    Giải trình. Trong ví dụ trên, chúng tôi đã sử dụng tham số kích thước là 10 và tham số tối đa là 10, vì vậy kích thước của bộ sưu tập được giới hạn là 10 byte và tài liệu tối đa là 10

    Bài viết được đề xuất

    Đây là hướng dẫn về MongoDB Capped Collections. Ở đây chúng ta thảo luận về Giới thiệu về MongoDB Capped Collections và các tham số khác nhau của nó cùng với các ví dụ của nó. Bạn cũng có thể xem qua các bài viết được đề xuất khác của chúng tôi để tìm hiểu thêm –

    Tôi có thể tạo bao nhiêu bộ sưu tập trong MongoDB?

    Nói chung, chúng tôi khuyên bạn nên giới hạn bộ sưu tập ở mức 10.000 mỗi bộ bản sao . Khi người dùng bắt đầu vượt quá 10.000 bộ sưu tập, họ thường thấy hiệu suất giảm xuống.

    Bộ sưu tập nào sau đây được giới hạn?

    Bộ sưu tập nào sau đây bị giới hạn? . Trình lược tả cơ sở dữ liệu ghi dữ liệu vào hệ thống. bộ sưu tập hồ sơ , là bộ sưu tập có giới hạn.

    Giới hạn trong MongoDB là gì?

    Các bộ sưu tập được giới hạn là các bộ sưu tập có kích thước cố định có nghĩa là khi chúng ta tạo bộ sưu tập, chúng ta phải cố định kích thước tối đa của bộ sưu tập (tính bằng byte) và số lượng tài liệu tối đa mà nó có thể lưu trữ

    Làm cách nào để xóa bộ sưu tập giới hạn trong MongoDB?

    Bạn không thể xóa tài liệu khỏi bộ sưu tập giới hạn . Nó chỉ có thể bị xóa tự động khi chèn tài liệu mới khi kích thước được phân bổ cho bộ sưu tập đã hết. Sau khi đọc các tài liệu từ một bộ sưu tập được giới hạn, MongoDB trả về cùng một tài liệu theo thứ tự chúng có trên đĩa.