Mỗi tài liệu trong bộ sưu tập có một trường “_id” được sử dụng để xác định duy nhất tài liệu trong một bộ sưu tập cụ thể, trường này đóng vai trò là khóa chính cho các tài liệu trong bộ sưu tập. Trường “_id” có thể được sử dụng ở bất kỳ định dạng nào và định dạng mặc định là ObjectId của tài liệu Show
ObjectID là loại Trường BSON 12 byte
Định dạng của ObjectId ObjectId(<hexadecimal>) ObjectId chấp nhận một tham số là ObjectId thập lục phân tùy chọn trong Chuỗi Chúng tôi có thể cung cấp ObjectId của riêng mình cho tài liệu nhưng nó phải là duy nhất *db.<collectionname>.insertOne({"_id":"231231"}) Thí dụ
Phương thức của ObjectId
1. Tạo ObjectId. Để tạo ObjectId mới của tài liệu cụ thể
đầu ra
2. Dấu thời gian của ObjectID. Nó trả về thông tin dấu thời gian của đối tượng dưới dạng Ngày ở định dạng ISO Trang chủ > Trường _id của MongoDB là gì và cách sử dụng nó Trường _id của MongoDB là nền tảng cho mọi bộ sưu tập trong MongoDB và theo mặc định, trường này có một số thuộc tính hữu ích mà người dùng có thể tận dụng khi quen với cách tạo _id. Việc hiểu hành vi mặc định của trường cũng như các ưu điểm và cạm bẫy liên quan đến trường có thể hữu ích cho việc quản lý các bộ sưu tập của bạn cũng như hiểu khi nào nên ghi đè lên nó MongoDB ObjectID là gì?Như tài liệu MongoDB giải thích, "ObjectId nhỏ, có khả năng là duy nhất, tạo nhanh và có thứ tự. " Trường _id là Trường loại BSON 12 byte được tạo thành từ một số chuỗi 2-4 byte và là quy ước đặt tên/mã định danh duy nhất mà MongoDB sử dụng trên tất cả nội dung của nó. Mỗi chuỗi đại diện và chỉ định một khía cạnh cụ thể của danh tính của tài liệuMongoDB ObjectID hoạt động như thế nào?Về mặt kiến trúc, theo mặc định, trường _id là một ObjectID, một trong các loại BSON của MongoDB. ObjectID là khóa chính cho tài liệu được lưu trữ và được tạo tự động khi tạo tài liệu mới trong bộ sưu tập. Các giá trị sau tạo thành tổ hợp 12 byte đầy đủ của mọi _ID (được trích dẫn từ tài liệu của MongoDB)
MongoDB ObjectID có phải là duy nhất không?Theo MongoDB, ObjectID có thể được coi là duy nhất trên toàn cầu. Chín byte đầu tiên trong MongoDB _ID đảm bảo tính duy nhất của nó trên các máy và quy trình, liên quan đến một giây;Có trường nào mà tất cả tài liệu trong MongoDB phải có không?Tất cả tài liệu trong MongoDB phải có trường _id được điền. Nếu một tài liệu chưa được gán giá trị _id, MongoDB sẽ tự động tạo một giá trịCác lệnh MongoDB quan trọng cho ObjectIDNhờ tính chất phổ biến, bắt buộc của trường _id, người dùng có thể thực hiện một số thao tác để đơn giản hóa việc tổ chức và xử lý tài liệu của mìnhMongoDB lấy dấu thời gian từ _idNgười dùng sử dụng ObjectID mặc định có thể truy cập vào quá trình tạo dấu thời gian của họ bằng lệnh getTimestamp(), cung cấp một phương pháp dễ dàng và đáng tin cậy để xem chính xác thời điểm tài liệu được tạo. Ngoài ra, với một chút tính toán phía máy khách, bạn có thể tận dụng dấu thời gian tích hợp để tìm tài liệu dựa trên thời gian chènThứ tự MongoDB theo Dấu thời gianTương tự, vì dấu thời gian được bao gồm trong quá trình tạo ID, nên việc sắp xếp theo _id (hoặc bất kỳ trường ObjectID MongoDB nào) cũng sẽ sắp xếp tài liệu của bạn theo thời điểm chúng được tạo. Tuy nhiên, phương pháp sắp xếp này không thể hiện thời gian chèn nghiêm ngặt hoặc chính xác—các thành phần khác của ID có thể phát huy tác dụng ở đây, khiến thứ tự phản ánh các biến khác thay vì chỉ thời gian tạoBạn có thể thay thế _id trong MongoDB không?Trường _id là bất biến—nghĩa là, khi một tài liệu tồn tại trong hệ thống MongoDB của bạn, theo định nghĩa, nó đã được gán một _id và bạn không thể thay đổi hoặc cập nhật khóa chính của nó. Như đã nói, _id có thể được ghi đè khi bạn chèn tài liệu mới, nhưng theo mặc định, nó sẽ được điền bằng một ObjectID. Việc ghi đè trường _id cho một tài liệu có thể hữu ích, nhưng khi làm như vậy, bạn cần đảm bảo các giá trị cho mỗi tài liệu là duy nhấtMẹo đối tượng MongoDBDo các yếu tố và thuộc tính của trường _id, có (ít nhất. ) hai điều cần cảnh giác khi xử lý ObjectID
Các tài nguyên khác để cải thiện hiệu suất MongoDBMongoDB users are well known for valuing the database's capacity for growth. After all, the system's tagline is "for giant ideas," and for good reason. The system supports extreme scalability and has been designed to store exceptionally large numbers of documents. Hopefully this guide on MongoDB ObjectID has helped you understand its makeup and characteristics, so you can better use the ways your database is organizing your documents. Check out other popular MongoDB guides and resources designed to help you more easily optimize and fine tune database performance:ID đối tượng được tạo như thế nào?Về cơ bản, ObjectId được coi là khóa chính trong mọi bộ sưu tập MongoDB. Nó được tạo tự động bất cứ khi nào chúng tôi tạo tài liệu mới trong bộ sưu tập mới . Nó dựa trên giá trị thập lục phân 12 byte như bạn có thể quan sát theo cú pháp sau.
Loại ID đối tượng MongoDB là gì?ObjectId là một loại dữ liệu nằm trong Đặc tả BSON mà MongoDB sử dụng để lưu trữ dữ liệu. Đó là biểu diễn nhị phân của JSON và bao gồm các loại dữ liệu khác ngoài những loại được xác định trong JSON. Đây là một loại dữ liệu mạnh mẽ, cực kỳ hữu ích như một mã định danh duy nhất trong Tài liệu MongoDB.
ID đối tượng bao gồm những gì?ObjectId 12 byte bao gồm. Dấu thời gian 4 byte, thể hiện quá trình tạo ObjectId, được tính bằng giây kể từ kỷ nguyên Unix. Một giá trị ngẫu nhiên 5 byte được tạo một lần cho mỗi quy trình . Giá trị ngẫu nhiên này là duy nhất cho máy và quy trình. |