2012-05-10 - ug karlsruhe: nosql in .net - mit redis und mongodb
DESCRIPTION
TRANSCRIPT
![Page 1: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/1.jpg)
![Page 2: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/2.jpg)
![Page 3: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/3.jpg)
![Page 4: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/4.jpg)
![Page 5: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/5.jpg)
![Page 6: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/6.jpg)
![Page 7: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/7.jpg)
![Page 8: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/8.jpg)
![Page 9: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/9.jpg)
![Page 10: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/10.jpg)
![Page 11: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/11.jpg)
![Page 12: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/12.jpg)
![Page 13: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/13.jpg)
![Page 14: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/14.jpg)
![Page 15: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/15.jpg)
› SET note1:title "Mittag"
› SET note1:message "nicht vergessen"
› KEYS note1:*
› GET note1:title
› DEL note1:title note1:message
![Page 16: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/16.jpg)
![Page 17: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/17.jpg)
![Page 18: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/18.jpg)
http://bit.ly/ISv9f6
![Page 19: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/19.jpg)
![Page 20: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/20.jpg)
![Page 21: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/21.jpg)
![Page 22: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/22.jpg)
![Page 23: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/23.jpg)
![Page 24: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/24.jpg)
![Page 25: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/25.jpg)
![Page 26: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/26.jpg)
![Page 27: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/27.jpg)
![Page 28: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/28.jpg)
![Page 29: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/29.jpg)
![Page 30: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/30.jpg)
![Page 31: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/31.jpg)
![Page 32: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/32.jpg)
![Page 33: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/33.jpg)
![Page 34: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/34.jpg)
››
![Page 35: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/35.jpg)
![Page 36: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/36.jpg)
![Page 37: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/37.jpg)
![Page 38: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/38.jpg)
![Page 39: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/39.jpg)
![Page 40: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/40.jpg)
![Page 41: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/41.jpg)
![Page 42: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/42.jpg)
![Page 43: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/43.jpg)
![Page 44: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/44.jpg)
![Page 45: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/45.jpg)
![Page 46: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/46.jpg)
![Page 47: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/47.jpg)
![Page 48: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/48.jpg)
![Page 49: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/49.jpg)
![Page 50: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/50.jpg)
![Page 51: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/51.jpg)
![Page 52: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/52.jpg)
![Page 53: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/53.jpg)
![Page 54: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/54.jpg)
![Page 55: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/55.jpg)
![Page 56: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/56.jpg)
![Page 57: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/57.jpg)
http://bsonspec.org
![Page 58: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/58.jpg)
![Page 59: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/59.jpg)
![Page 60: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/60.jpg)
![Page 61: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/61.jpg)
![Page 62: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/62.jpg)
![Page 63: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/63.jpg)
–
› use WebNote
› db.Notes.save( { Title: 'Mittag', Message: 'nicht vergessen‘ } );
› db.Notes.save
![Page 64: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/64.jpg)
–
› db.Notes.find();
› db.Notes.find({ Title: /Test/i });
› db.Notes.find( { "Categories.Color": "red"}).limit(1);
![Page 65: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/65.jpg)
–
› db.Notes.update({Title: 'Test'}, {'$set': {Categories: []}});
› db.Notes.update({Title: 'Test'}, {'$push': {
Categories: {Color: 'Red'} }
});
![Page 66: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/66.jpg)
–
› db.dropDatabase();
› db.Notes.drop();
› db.Notes.remove();
![Page 67: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/67.jpg)
![Page 68: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/68.jpg)
![Page 69: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/69.jpg)
![Page 70: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/70.jpg)
![Page 71: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/71.jpg)
![Page 72: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/72.jpg)
![Page 73: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/73.jpg)
NULL NULL
NULL NULL
NULL
![Page 74: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/74.jpg)
> db.shapes.find()
› { _id: "1", type: "c", area: 3.14, radius: 1}
› { _id: "2", type: "s", area: 4, length: 2}
› { _id: "3", type: "r", area: 10, length: 5, width: 2}
// Shapes mit radius > 0 finden
> db.shapes.find( { radius: { $gt: 0 } } )
![Page 75: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/75.jpg)
![Page 76: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/76.jpg)
blogs: { author : “Johannes", date : ISODate("2011-09-18T09:56:06.298Z"), comments : [ { author : “Klaus", date : ISODate("2011-09-19T09:56:06.298Z"), text : “toller Artikel" } ] }
![Page 77: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/77.jpg)
![Page 78: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/78.jpg)
blogs: { _id: 1000, author: “Johannes", date: ISODate("2011-09-18"), comments: [ {comment : 1)} ]}
comments : { _id : 1, blog: 1000, author : “Klaus", date : ISODate("2011-09-19")} > blog = db.blogs.find({ text: "Destination Moon" }); > db.comments.find( { blog: blog._id } );
![Page 79: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/79.jpg)
![Page 80: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/80.jpg)
// Jedes Produkt verlinkt die IDs der Kategorien
products: { _id: 10, name: "Destination Moon", category_ids: [ 20, 30 ] }
![Page 81: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/81.jpg)
// Jedes Produkt verlinkt die IDs der Kategorien
products: { _id: 10, name: "Destination Moon", category_ids: [ 20, 30 ] }
// Jede Kategorie verlinkt die IDs der Produkte
categories:
{ _id: 20, name: "adventure",
product_ids: [ 10, 11, 12 ] }
categories:
{ _id: 21, name: "movie",
product_ids: [ 10 ] }
![Page 82: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/82.jpg)
// Jedes Produkt verlinkt die IDs der Kategorien
products: { _id: 10, name: "Destination Moon", category_ids: [ 20, 30 ] }
// Jede Kategorie verlinkt die IDs der Produkte
categories:
{ _id: 20, name: "adventure",
product_ids: [ 10, 11, 12 ] }
categories:
{ _id: 21, name: "movie",
product_ids: [ 10 ] }
// Alle Kategorien für ein Produkt
> db.categories.find( { product_ids: 10 } )
![Page 83: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/83.jpg)
![Page 84: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/84.jpg)
// Jedes Produkt verlinkt die IDs der Kategorien
products: { _id: 10, name: "Destination Moon", category_ids: [ 20, 30 ] }
// Kategorien beinhalten keine Assoziationen
categories:
{ _id: 20,
name: "adventure"}
![Page 85: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/85.jpg)
// Jedes Produkt verlinkt die IDs der Kategorien
products: { _id: 10, name: "Destination Moon", category_ids: [ 20, 30 ] }
// Kategorien beinhalten keine Assoziationen
categories:
{ _id: 20,
name: "adventure"}
// Alle Produkte für eine Kategorie
> db.products.find( { category_ids: 20 } )
![Page 86: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/86.jpg)
// Jedes Produkt verlinkt die IDs der Kategorien
products: { _id: 10, name: "Destination Moon", category_ids: [ 20, 30 ] }
// Kategorien beinhalten keine Assoziationen
categories:
{ _id: 20,
name: "adventure"}
// Alle Produkte für eine Kategorie
> db.products.find( { category_ids: 20 } )
// Alle Kategorien für ein Produkt product
> product = db.products.find( { _id: some_id } )
> db.categories.find({_id: {$in : product.category_ids}})
![Page 87: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/87.jpg)
![Page 88: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/88.jpg)
![Page 89: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/89.jpg)
![Page 90: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/90.jpg)
![Page 91: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/91.jpg)
![Page 92: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/92.jpg)
![Page 93: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/93.jpg)
![Page 94: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/94.jpg)
![Page 95: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/95.jpg)
![Page 98: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/98.jpg)
›
›
›››
![Page 99: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/99.jpg)
›››
![Page 100: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/100.jpg)
››
›
![Page 101: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/101.jpg)
›
›
![Page 102: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/102.jpg)
![Page 103: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/103.jpg)
IBM’s IMS
Codd publishes relational model paper
in 1970
1966 1969 1970 1985 2000 2004 2007
Agile becoming more popular
1990’s 2009
CODASYL model published
Term “object-oriented database” appears
Brewer’s CAP born
Google BigTable
Amazon Dynamo
Apache Cassandra initial release
2008
MongoDB initial release
1973 1974
INGRES
SQL invented
1977
Oracle founded
10gen founded
NoSQL Movement
![Page 104: 2012-05-10 - UG Karlsruhe: NoSQL in .NET - mit Redis und MongoDB](https://reader034.vdocuments.net/reader034/viewer/2022051818/549a42abb47959424d8b58f2/html5/thumbnails/104.jpg)