老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業提供網站建設、域名注冊、服務器等服務

CouchDB與MongoDB在查詢操作上有哪些區別

本篇文章為大家展示了CouchDB與MongoDB在查詢操作上有哪些區別,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

成都創新互聯公司-專業網站定制、快速模板網站建設、高性價比和碩網站開發、企業建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式和碩網站制作公司更省心,省錢,快速模板網站建設找我們,業務覆蓋和碩地區。費用合理售后完善,10年實體公司更值得信賴。

CouchDB與MongoDB一樣是文檔存儲,他們在很多方面都很相似。簡單的說,就是MongoDB的查詢是動態查詢,可以在已有數據上進行任何規定條件的查詢,當然,為了使我們的查詢更快,需要合理的設計索引。

CouchDB與MongoDB在查詢操作上有哪些區別

MongoDB和CouchDB都是面向文檔的數據庫,它們都使用JSON文檔格式,它倆通常都被看作是NoSql數據庫,并且現在都很時髦,有很多的共同點,但談到查詢時,兩者的差別就很明顯了,CouchDB需要預定義視圖(本質上是JavaScriptMapReduce函數),而MongoDB支持動態查詢(基本上和傳統關系數據庫上的即席查詢類似),更重要的是,談到查詢時,CouchDB的API是RESTful,而MongoDB的API更原生化,這意味著在代碼中發出一個查詢就要使用一個驅動。

例如,使用CouchDB時,為了插入一些數據,可以使用一些外部工具,如Groovy的RESTClient:

importstaticgroovyx.net.http.ContentType.JSON

importgroovyx.net.http.RESTClient

defclient=newRESTClient("http://localhost:5498/")

response=client.put(path:"parking_tickets/1234334325",

contentType:JSON,

requestContentType:JSON,

body:[officer:"RobertGrey",

location:"199CastleDr",

vehicle_plate:"NewYork77777",

offense:"Parkedinnoparkingzone",

date:"2010/07/31"])

注意,在這種情況下,我必須為停車票指定一個編號(1234334325),順便提一下,也可以要求CouchDB使用UUID,如向/_uuids路徑發出一個HTTPGET請求。

例如,如果我想找出由OfficerGrey開出的所有票,我必須定義一個視圖,視圖是執行JavaScriptMapReduce函數的簡單URL,因此我可以快速實現一個函數來提取officer屬性等于RobertGrey的所有文檔。

function(doc){

if(doc.officer=="RobertGrey"){

emit(null,doc);

}

}

我必須給這個視圖取一個名字,當我向這個視圖發出HTTPGET請求時,至少可以得到一個文檔。

response=client.get(path:"parking_tickets/_view/by_name/officer_grey",

contentType:JSON,requestContentType:JSON)

assertresponse.data.total_rows==1

response.data.rows.each{

assertit.value.officer=="RobertGrey"

}

CouchDB與MongoDB在查詢操作上有哪些區別

總的來說,使用CouchDB時,我不能很快地發出一個即席RESTful調用查詢信息,必須先定義一個查詢(也叫視圖),然后將其暴露出來。相反,使用MongoDB時,它和大多數關系數據庫沒多大區別,你可以在運行時查詢你想要看到的任何信息。

例如,下面是我使用MongoDB的原生Java驅動實現的停車票實例:

DBCollectioncoll=db.getCollection("parking_tickets");

BasicDBObjectdoc=newBasicDBObject();

doc.put("officer","RobertGrey");

doc.put("location","199CastleDr");

doc.put("vehicle_plate","NewYork77777");

//...

coll.insert(doc);

假設以后我要查詢RobertSmith發出的停車票,只需要簡單修改一下officer屬性值就可以了,如:

BasicDBObjectquery=newBasicDBObject();

query.put("officer","RobertSmith");

DBCursorcur=coll.find(query);

while(cur.hasNext()){

System.out.println(cur.next());

}

雖然MongoDB和CouchDB有很多相似之處,但在查詢方面的確有著本質的不同,CouchDB需要使用MapReduce,而MongoDB更多的是面向動態的查詢,當然MongoDB也是支持MapReduce的。

上述內容就是CouchDB與MongoDB在查詢操作上有哪些區別,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注創新互聯行業資訊頻道。


文章標題:CouchDB與MongoDB在查詢操作上有哪些區別
標題網址:http://www.xueling.net.cn/article/pipdoc.html

其他資訊

在線咨詢
服務熱線
服務熱線:028-86922220
TOP
主站蜘蛛池模板: 国产精品露脸国语对白99 | 国产精品自在线拍亚洲另类 | 亚洲日本欧美天堂在线手机版 | av网站播放 | 亚洲AV无码欧洲AV无码网站 | 久久华人 | 亚洲综合在线视频 | 激情九九| 91久草视频 | 日韩黄色片在线观看 | 草草视频在线观看 | 免费乱理伦片在线观看夜 | 成人爽a毛片免费啪啪 | 亚洲天堂中文字幕在线 | 久久久噜噜噜久久人人看 | 成人免费精品网站在线观看影片 | 午夜影院在线 | 欧洲性XXXX免费视频在线观看 | 影院亚洲| 黄大色黄大片女爽一次 | 99爱精品在线 | 国产色综合一区二区三区 | 国产成人精品久久一区二区三区 | 亚洲AV无码不卡无码 | 成人小视频免费看 | av在线免费看片 | 国产一区二区三区在线免费看 | 免费看欧美一级片 | 国产精品亚洲欧美卡通动漫 | 无码人妻一区二区三区免费视频 | 99久久超碰中文字幕伊人 | 伊人色综合久久天天 | 性欧美熟妇freetube | 3级毛片儿日本三级毛片 | 少妇无码一晚三次 | 8av国产精品爽爽va在线观看 | 亚洲精品97久久中文字幕无码 | 99久久夜色精品国产网站 | 国产一区二区三区欧美日韩 | 色妞www精品免费视频 | 91亚洲精华国产 |