Bạn nên để tạo ObjectID cho các máy khách / trình điều khiển. Điều này đảm bảo rằng các ID được tạo là duy nhất trong số nhiều thứ, chẳng hạn như thời gian, máy chủ và quy trình. Sử dụng ObjectID tiêu chuẩn cũng có nghĩa là các phương thức được triển khai bởi trình điều khiển (chẳng hạn như getTimestamp ()) hoạt động.
Tuy nhiên, nếu bạn đang nghĩ đến việc sử dụng của riêng bạn loại ID cho trường _id (tức là, không phải loại ObjectID tiêu chuẩn), thì điều đó sẽ tạo ra một lựa chọn khả thi. Ví dụ:nếu bạn muốn lưu trữ thông tin về một người dùng twitter, thì việc sử dụng ID twitter của người dùng dưới dạng giá trị _id là hoàn toàn hợp lý. Cá nhân tôi cố gắng dựa vào loại ObjectID ít nhất có thể, vì thường thì các bộ sưu tập sẽ có một trường trong mỗi tài liệu đã xác định duy nhất từng tài liệu.