1、如何設計MongoDB數據模型
這個問題需要考慮的太多
首先你的了解關系資料庫的設計模式。
mongodb的數據模型的設計和關系資料庫的有些不同。(原理是一樣的)
新系統設計和基於原有系統的設計也可能不同
你找找看,基本上每本關於mondodb的參考是基本上都有一些介紹
不過需要自己總結總結,根據自己的業務具體分析
2、如何設計mongodb schema
其實官網的這篇設計哲學還是很不錯的(http://www.mongodb.org/display/DOCS/S...)
MongoDB和傳統SQL schema設計上最大的區別就是關於模型關系用什麼方法表示比較好(在MongoDB里即可以用Link,又可以用Embedded)
簡單總結下:
FirstClass (比如「User」這種) 應該用獨立的Collection
"條目類型"的,應該 embedded
兩個模型之間如果是包含關系,用 embedded
多對多關系,用 link(類似sql裡面的foregin key)
如果一個模型,其可能存的對象很少,那麼就用獨立的collection,這樣有助於mongodb server做緩存
embedded方式不利於做復雜的關聯,復雜的查詢
embedded方式性能很有優勢,如果你有「性能」方面的要求,可以考慮用embbed!
3、mongoDB有什麼類似於powerdesigner的設計工具
這個應該是不對的吧
mongodb 是nosql 首先考慮的應該是其特性,文檔資料庫,無模式
既然如此,應該是需要 powerDesigner 這樣的設計工具設計表格,因為欄位本來就沒有約束,每一行的欄位名,欄位數都可以不一樣。
應該關注的是mongodb 如何生成新的 collection
mac 上推薦 gui 工具 mongdbHub,win 平台就不知道了
4、一個互聯網在線電子商務網站用到MongoDB,Redis,Oracle三種資料庫是否可行?
個人推薦你使用 MongoDB,現在架構相比較以前是齊全了很多,結構上與PG不相伯仲。
Redis 做分布式架構雖然也適合用於 Web 的Inno DB 架構形式的業務系統,但使用的效果會在業務量增大之後 顯得動力不足。
不推薦你用Oracle 因為電子商務這種商務公司 根本就買不起Oracle,不像ZF 或者 央企 那樣對錢不在乎。
5、如何用mongodb設計試題庫
StringBuilder sb=new StringBuilder(); foreach (var Student in jing) { sb.AppendFormart("姓名={0},Nameid={1},性別={2},班級={3},專業={4}",Student.姓名,Student.Nameid,Student.性別,Student.班級,Student.專業); } this.textBox1.text=sb.tostring();
6、用mongodb怎麼設計論壇這樣的資料庫
有效的數據模型是為應用服務的,設計構架的關鍵問題是文檔模型適合使用嵌入式模型(embed)還是使用引用模型(references)。
嵌入式數據模型(Embedded Data Models)
在MongoDB中,你可能將相關數據嵌入到一個單一結構或文檔,這些模式通常被稱為「非正規」模型,但是它充分利用了MongoDB富文檔模型的有點。
嵌入式數據模型允許應用程序存儲相關的信息在一條資料庫記錄中,這樣應用程序可能需要更少的查詢和更新來完成常規的操作。