document, a rr a y • ObjectId, UTCD a teTime, Decim a l128, Regex • Bin a ry (UUID, Encrypted, Compressed, Vector, …) • J a v a script Code • Intern: Timest a mp, Min/M a x Key • Deprec a ted: DBPointer, Unde f ined, Symbol, CodeWScope
MIT-Lizenz • O ff ene Spezi f ik a tion • API und Verh a lten ist immer gleich • Kleine V a ri a tionen, z.B. sn a ke_c a se vs. c a melC a se • https://github.com/mongodb/speci f ic a tions
Seedlist Discovery (mongodb+srv) • OP_MSG • Server Discovery a nd Monitoring (SDAM) • H a ndsh a ke • Authentic a tion • Connection Monitoring a nd Pooling (CMAP) • SRV Polling
t a b a se, listD a t a b a ses, dropD a t a b a se, etc. • MongoD a t a b a se • cre a teCollection, listCollections, dropCollection, etc. • MongoCollection • CRUD, index m a n a gement, etc.
Key • Wenn nicht vorh a nden wird neue ObjectId generiert • ObjectId: 4 bytes timest a mp, 5 bytes process unique, 3 byte counter • _id sollte nie ein embedded document sein
name string email string avatar Post ObjectId id ObjectId author string title string text Comment ObjectId id ObjectId author ObjectId post string text
}, "title": "My first post", "text": "This is my first post using MongoDB!", "latestComments": [ { "author": { "name": "alcaeus", "email": "<redacted>" }, "text": "Great post!" } ] }
"<redacted>" }, "title": "My first post", "text": "This is my first post using MongoDB!", "latestComments": [ { "author": { "name": "alcaeus", "email": "<redacted>" }, "text": "Great post!" } ] }