Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # config
- //cmd1
- mongod --configsvr --port 27020 --dbpath C:\Users\wbazela\Desktop\Mongodb_p\config --replSet confSet
- //cmd2
- mongo --port 27020
- rs.initiate({_id:"confSet", configsvr:true, members:[{_id:0, host:"127.0.0.1:27020"}]})
- use ourProjectBase
- # shard 1
- //cmd3
- mongod --shardsvr --replSet shard1Set --dbpath C:\Users\wbazela\Desktop\Mongodb_p\sh11 --port 27021
- //cmd4
- mongod --port 27022 --dbpath C:\Users\wbazela\Desktop\Mongodb_p\sh12 --replSet shard1Set
- # shard 2
- //cmd5
- mongod --shardsvr --replSet shard2Set --dbpath C:\Users\wbazela\Desktop\Mongodb_p\sh21 --port 27023
- //cmd6
- mongod --port 27024 --dbpath C:\Users\wbazela\Desktop\Mongodb_p\sh22 --replSet shard2Set
- # sharding
- //cmd7
- mongo --port 27021
- rs.initiate({_id:"shard1Set", members:[{_id:0, host:"127.0.0.1:27021"}]})
- rs.add("127.0.0.1:27022")
- use ourProjectBase
- //cmd8
- mongo --port 27023
- rs.initiate({_id:"shard2Set", members:[{_id:0, host:"127.0.0.1:27023"}]})
- rs.add("127.0.0.1:27024")
- use ourProjectBase
- # finale
- //cmd9
- mongos --configdb confSet/127.0.0.1:27020
- //cmd10
- mongo
- sh.addShard("shard1Set/127.0.0.1:27021")
- sh.addShard("shard2Set/127.0.0.1:27023")
- sh.enableSharding("ourProjectBase")
- use ourProjectBase
- sh.shardCollection("ourProjectBase.Students",{album_nr:"hashed"})
- db.Students.insertMany([
- {
- 'album_nr': 110120,
- 'year_of_study': 3,
- 'year_in_dormitories': 2,
- 'major': 'Data Engineering',
- 'lives_in': 'DS6',
- 'function': {
- 'function_name': 'gym_master',
- 'dorm_id': 'DS6',
- 'points_granted': 13
- }
- },
- {
- 'album_nr': 110130,
- 'year_of_study': 5,
- 'year_in_dormitories': 1,
- 'major': 'Data Science',
- 'lives_in': 'DS6',
- 'function': {
- 'function_name': 'laundry_room_keeper',
- 'dorm_id': 'DS6',
- 'points_granted': 7
- }
- },
- {
- 'album_nr': 110140,
- 'year_of_study': 1,
- 'year_in_dormitories': 1,
- 'major': 'Chemistry',
- 'lives_in': 'DS7',
- }
- ])
- db.Dormitories.insertMany([
- {
- 'dorm_id': 'DS6',
- 'address': 'Gdansk ul. Pana Golaszewskiego 15',
- 'rooms': [
- {
- 'room_id': 100,
- 'room_capacity': 2
- },
- {
- 'room_id': 101,
- 'room_capacity': 3
- },
- {
- 'room_id': 102,
- 'room_capacity': 2
- },
- {
- 'room_id': 200,
- 'room_capacity': 2
- },
- {
- 'room_id': 201,
- 'room_capacity': 3
- },
- {
- 'room_id': 202,
- 'room_capacity': 3
- }
- ]
- },
- {
- 'dorm_id': 'DS7',
- 'address': 'Gdansk ul. Pana Golaszewskiego 14',
- 'rooms': [
- {
- 'room_id': 100,
- 'room_capacity': 3
- },
- {
- 'room_id': 101,
- 'room_capacity': 2
- },
- {
- 'room_id': 102,
- 'room_capacity': 4
- }
- ]
- }
- ])
- 1.
- db.Dormitories.aggregate([
- { '$unwind': '$rooms' },
- { '$match': {} },
- { '$group': { '_id': "$dorm_id", 'how_many_people_can_live': { '$sum': "$rooms.room_capacity" } } }
- ])
- 2.
- db.Students.find({$or:[{'major': /.*Data.*/}, {'major': /.*data.*/}]})
- 3.
- db.Students.aggregate([
- {
- $lookup:
- {
- from: "Dormitories",
- localField: "lives_in",
- foreignField: "dorm_id",
- as: "Dorm_info"
- }
- },
- { '$unwind': '$Dorm_info' },
- {'$project': {'Dorm_info.address':1, 'Students.album_nr':1}}
- ])
- 4.
- db.Students.find({$and:[{'year_in_dormitories': {$gt: 1}}, {'year_of_study': {$gt: 1}}]})
- 5.
- db.Students.find({$or:[{function:null},{function:{$size:0}}]})
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement