python連線
try
: conn = mongoclient(ip, port)
database = conn[db]
#db為資料庫名稱
my_set = database[tb]
#tb為表名稱
# logger.info("需要檢測的字段:".format(field))
nm_all = my_set.estimated_document_count(
)#資料庫總條數
all_dates=my_set.find(
).limit(10)
return all_dates#返回需要檢測的數值,數量,第幾條
except exception as e:
logger.error(e)
1:資料庫的備份,恢復,資源監控
mongodump -h 127.0
.0.1
-d db -o path#將127.0.0.0.1上面的資料庫的資料備份到path路徑下面
mongorestore -h 127.0
.0.1
:27017
-d db path# 將資料恢復到本地的db資料庫中,db如果不存在就自動建立
mongostat
2:刪除,建立,重新命名
刪除資料庫
db.dropdatabase(
)建立集合
db.createcollection(name)
db.collection.insert(
)刪除集合
db.collection.drop(
)集合重新命名
db.collection.renamecollection(
"新名"
)
3,資料的插入
插入單個文件
db.collection.insert(
)插入多條
db.collection.insert([,
])insertone,插入一條
insertmany插入多條
insert 包含上面兩種功能
結果檢視
db.collection.find(
)
4:資料的查詢
db.collection.
find
(query, field)
query為查詢語句
field為要展示的域, 0為不顯示該網域名稱,1為顯示該網域名稱,無引數表示顯示所有
查詢符合條件的第一條資料
db.collection.
findone
()
5:條件操作符
大於 - $gt greater than
小於 - $lt less than
大於等於 - $gte
小於等於 - $lte
等於 $eq equal
不等於 $ne
包含 $in
不包含 $nin
邏輯與 and 逗號隔開,
邏輯或 or
邏輯非 not
既不也不 $nor
5:隨機取樣抽取資料,需要版本3.2以上。否則會報錯。
方式一:
db.tb.aggregate([}
])方式二:
通用性隨機取樣方式,將checke_number設定為隨機數,缺點資料量很大時,這個查詢效率很低(應該說任何帶有skip查詢的資料都非常的慢)
my_set.find(
).limit(1)
.skip(check_number -1)
]
6:模糊查詢
db.ods_mi_commodity_detail.find(
})
7:查詢某張表某個字段是否有重複值
db.getcollection('ods_gs_basic').aggregate([ } }, } }])
a=my_set.aggregate([}
},}}
])print
(a)
R對MongoDB的效能測試 RMongo
在九月初的時候,rmongodb正式發布了修訂版本,這也就意味著,從事數值計算的語言也可以於nosql產品相接軌了,但是鑑於我身邊並沒有公司真的在使用r和mongodb的結合,所以在效率問題上,我們也不敢掉以輕心,所以就做了乙個這樣的測試。測試環境是8核,64位機。用於測試的庫是乙個未經shardi...
Golang 對MongoDB的操作簡單封裝
golang 對mongodb的操作簡單封裝 使用mongodb的go驅動庫 mgo,對mongodb的操作做一下簡單封裝 初始化var globals mgo.session func init globals s 複製 func init 資料庫位址 dbhost mongodb timeout...
R對MongoDB的效能測試 RMongo
在九月初的時候,rmongodb正式發布了修訂版本,這也就意味著,從事數值計算的語言也可以於nosql產品相接軌了,但是鑑於我身邊並沒有公司真的在使用r和mongodb的結合,所以在效率問題上,我們也不敢掉以輕心,所以就做了乙個這樣的測試。測試環境是8核,64位機。用於測試的庫是乙個未經shardi...