阿里云上的部署的mongodb數據庫怎么鏈接
連接是要消耗資源的,而且消耗的并不少。 內存:MongoDB為例,每個(gè)線(xiàn)程都要分配1MB的棧內存出來(lái)。1000個(gè)連接,1G內存就這么沒(méi)了,甭管是否是活躍連接 文件句柄:每個(gè)連接都要打開(kāi)一個(gè)文件句柄,當然從成本上講,這個(gè)消耗相對內存是小了很多。
如何評價(jià)阿里云的OTS產(chǎn)品?和Mongodb主要差異是什么
我沒(méi)有實(shí)際使用過(guò)MongoDB,了解不算太深,所以不好做對比,但是我確實(shí)碰到了不少客戶(hù)在使用MongoDB的過(guò)程中碰到運維和性能穩定性上的問(wèn)題,他們在考慮往OTS做遷移,但也需要承認在遷移的過(guò)程中會(huì )遇到一些困難,比如索引功能,這個(gè)我們也在想辦法解決,希望在不久我們會(huì )有完整的解決方案。至于是否會(huì )Lockin的問(wèn)題,我的看法是我們沒(méi)有辦法做到這一點(diǎn),應用可以使用OTS的接口把數據全部讀出去,所以我的看法是不存在lockin的問(wèn)題。未來(lái)我們也會(huì )提供Stream接口能夠讓用戶(hù)讀取實(shí)時(shí)增量數據。所以想lockin的話(huà)也做不到。我們更多的是考慮如何讓客戶(hù)在阿里云的平臺上能夠干更多的事情,比如數據的存儲放進(jìn)來(lái)之后,能夠直接使用這個(gè)平臺上的計算以及分析服務(wù),減少應用整體開(kāi)發(fā)的代價(jià)。我們現在正在考慮如何將OTS服務(wù)和ElasticSearch,EMR,Spark,以及Hive等開(kāi)源產(chǎn)品做深度的集成,提供應用搭建業(yè)務(wù)場(chǎng)景所需要的完整解決方案
怎么連接mongodb的數據庫
想在shell中連接數據庫,首先要在連接數據的機器上安裝mongodb的客戶(hù)端才可以??蛻?hù)端的安裝在這里不再重復,自己百度或者Google一下吧。連接mongodb的命令如下:/home/test/mongodb/mongodb-2.2.3/bin/mongo 127.0.0.1:8888這個(gè)是我的數據庫配置,沒(méi)有設置用戶(hù)名密碼。所以直接通過(guò)該命令就可以連接。連結后會(huì )有一個(gè)默認連接的數據庫。mongodb常用命令:查看數據庫命令:show dbs;查看集合命令:show collections;切換數據庫:use databaseName;查詢(xún)數據:db.集合名.find()插入數據:db.集合名.insert({name:'test',age:1});刪除:db.test.remove();sql="db.test.insert({name:'test',age:1});"http://定義執行的sqlecho
服務(wù)器上的Mongodb數據庫服務(wù)怎么默認一直開(kāi)啟
你查看一下,如果數據文件大于系統內存,查詢(xún)速度會(huì )下降幾個(gè)數量級,因為mongodb是內存數據庫。我以前測試過(guò),1000萬(wàn)數據的時(shí)候沒(méi)有索引情況下查詢(xún)可能會(huì )幾秒鐘甚至更久。這種情況,你最好給經(jīng)常查詢(xún)的項創(chuàng )建索引,有索引以后查詢(xún)速度會(huì )非常非常非常的快。另外一點(diǎn)是數據索引如果大于內存,速度也會(huì )下降很多。而且對于多條件查詢(xún),如果你查詢(xún)的順學(xué)和索引順序不同,也不能使用索引。這個(gè)要慢慢摸索如果你使用了replica set,這個(gè)會(huì )影響寫(xiě)入速度的,三個(gè)replica set,速度會(huì )降低到三分之一。大概主要影響速度的就是這幾點(diǎn)吧,如果你需求不是非常復雜,我以前測試mongodb速度方面優(yōu)化好的情況下還是可以接受的。希望能幫到你
如何打開(kāi)已經(jīng)創(chuàng )建的MongoDB數據庫
1)列出當前的數據庫MongoDB shell version: 1.8.1connecting to: test> show dbs -www.linuxidc.com-admin 0.03125GBlocal (empty) 可以使用show dbs來(lái)列出當前有多少個(gè)數據庫,上面看到的是有兩個(gè),分別是admin和local?! ?) 定義新的數據庫名 我們通過(guò)使用“use new-databasename”的語(yǔ)法去使用一個(gè)新的數據庫,注意,即使你的數據庫還沒(méi)建立起來(lái),依然可以這樣使用,因為mongodb會(huì )在真正插入了數據后,才會(huì )真正建立起來(lái)。>use mkyongdbswitched to db mkyongdb> show dbsadmin 0.03125GBlocal (empty) 注意,在use mkyongdb后,mkyongdb實(shí)際上還沒(méi)真正建立起來(lái),只是表明目前是在使用mkyongdb了