צור ObjectIDs חוקיים של MongoDB לצורכי בדיקה, פיתוח או חינוך. כלי זה יוצר מזהים ייחודיים בני 12 בתים המשמשים במסדי נתונים של MongoDB, המורכבים מחותמת זמן, ערך אקראי ומונה מתגבר.
ObjectID של MongoDB הוא מזהה ייחודי בשימוש במסדי נתונים של MongoDB. כלי זה מאפשר לך לייצר ObjectIDs תקפים של MongoDB לצורכי בדיקה, פיתוח או חינוך. ObjectIDs הם סוגי BSON בני 12 בתים, המורכבים מ-4 בתים של חותמת זמן, ערך אקראי בן 5 בתים, ומונה בן 3 בתים המתרחש.
ObjectID של MongoDB מורכב מ:
המבנה יכול להיות מוּמחש כך:
1|---- חותמת זמן -----|-- אקראי --|-- מונה -|
2 4 בתים 5 בתים 3 בתים
3
בעוד שאין נוסחה מתמטית לייצור ObjectIDs, התהליך ניתן לתיאור אלגוריתמית:
מחולל ה-ObjectID עוקב אחרי הצעדים הבאים:
ל-ObjectIDs של MongoDB יש מספר מקרי שימוש חשובים:
מזהי מסמכים ייחודיים: ObjectIDs משמשים כשטח _id
ברירת המחדל במסמכי MongoDB, ומבטיחים שכל מסמך יהיה בעל מזהה ייחודי.
מידע על חותמת זמן: ארבעת הבתים הראשונים של ObjectID מכילים חותמת זמן, המאפשרת חילוץ קל של זמן היצירה מבלי להזדקק לשטח נפרד.
מיון: ObjectIDs יכולים להיות ממוין כרונולוגית, מה שיכול להיות שימושי לשליפת מסמכים לפי סדר ההכנסה.
חיתוך: בקלסטר של MongoDB מחולק, ניתן להשתמש ב-ObjectIDs כמפתחות חיתוך, אם כי זה לא תמיד הבחירה הטובה ביותר לכל מקרה שימוש.
ניפוי באגים ורישום: רכיב החותמת זמן של ObjectIDs יכול להיות שימושי בניפוי באגים ובניתוח יומנים.
בעוד ש-ObjectIDs הם המזהה ברירת המחדל ב-MongoDB, ישנן חלופות:
ObjectIDs הוצגו עם השחרור הראשוני של MongoDB בשנת 2009. הם תוכננו לספק מזהה ייחודי שניתן לייצר במהירות ובאופן עצמאי על ידי שרתים שונים, מה שהופך אותם לאידיאליים עבור מערכות מבוזרות.
המבנה של ObjectIDs נשמר עקבי לאורך ההיסטוריה של MongoDB, אם כי היישום הספציפי של איך הם מיוצרים אופטימיזציה עם הזמן.
הנה קטעי קוד המדגימים כיצד לייצר ObjectIDs של MongoDB בשפות תכנות שונות:
1import bson
2
3## ייצור ObjectID בודד
4object_id = bson.ObjectId()
5print(object_id)
6
7## ייצור מספר ObjectIDs
8object_ids = [bson.ObjectId() for _ in range(5)]
9print(object_ids)
10
1const { ObjectId } = require('mongodb');
2
3// ייצור ObjectID בודד
4const objectId = new ObjectId();
5console.log(objectId.toString());
6
7// ייצור מספר ObjectIDs
8const objectIds = Array.from({ length: 5 }, () => new ObjectId().toString());
9console.log(objectIds);
10
1import org.bson.types.ObjectId;
2
3public class ObjectIdExample {
4 public static void main(String[] args) {
5 // ייצור ObjectID בודד
6 ObjectId objectId = new ObjectId();
7 System.out.println(objectId.toString());
8
9 // ייצור מספר ObjectIDs
10 for (int i = 0; i < 5; i++) {
11 System.out.println(new ObjectId().toString());
12 }
13 }
14}
15
1require 'bson'
2
3## ייצור ObjectID בודד
4object_id = BSON::ObjectId.new
5puts object_id.to_s
6
7## ייצור מספר ObjectIDs
8object_ids = 5.times.map { BSON::ObjectId.new.to_s }
9puts object_ids
10
קטעי קוד אלה מדגימים כיצד לייצר ObjectIDs באמצעות מנהלי התקנים רשמיים של MongoDB או ספריות BSON בשפות תכנות שונות. ה-ObjectIDs המיוצרים יהיו ייחודיים ויעקבו אחרי המבנה המתואר קודם.
גלה עוד כלים שעשויים להיות שימושיים עבור זרימת העבודה שלך