監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價(jià)咨詢(xún)管理系統(tǒng) | 工程設(shè)計(jì)管理系統(tǒng) | 簽約案例 | 購(gòu)買(mǎi)價(jià)格 | 在線(xiàn)試用 | 手機(jī)APP | 產(chǎn)品資料
X 關(guān)閉

PDM中的文件放在文件服務(wù)器還是數(shù)據(jù)庫(kù)中?

申請(qǐng)免費(fèi)試用、咨詢(xún)電話(huà):400-8352-114

來(lái)源:泛普軟件

PDM中的文件到底是放到文件服務(wù)器上還是放在數(shù)據(jù)庫(kù)中好?本來(lái)這是一個(gè)老話(huà)題了,很多年前大家都專(zhuān)門(mén)討論過(guò),但是我最近遇到幾位朋友都向我咨詢(xún)這個(gè)問(wèn)題,覺(jué)得有必要再次比較系統(tǒng)地來(lái)專(zhuān)題聊聊;另外近幾年的IT技術(shù)發(fā)展也很快,有很多新技術(shù)新方法出現(xiàn),我也希望以軟件開(kāi)發(fā)者的角度與大家一起探討這個(gè)問(wèn)題。

第一:文件放在文件服務(wù)器中的工作原理。

的確,最早以前PDM中的關(guān)于圖文檔一般由兩部分的數(shù)據(jù)組成,一是文檔主記錄,用于描述文檔的屬性,這部分的數(shù)據(jù)一般是放在數(shù)據(jù)庫(kù)中;另外一部分是文檔本身,這部分的數(shù)據(jù)一般是放在文件服務(wù)器中(PDM中經(jīng)常稱(chēng)為文件倉(cāng)庫(kù),英文是File-Vault)。而在文檔主記錄中,一般用一個(gè)字段來(lái)描述這個(gè)文件是放在哪個(gè)文件服務(wù)器的哪個(gè)具體路徑,從而將兩個(gè)部分的數(shù)據(jù)關(guān)聯(lián)起來(lái)。(如果有文檔的版本管理,這個(gè)模型會(huì)更加復(fù)雜一些,但基本原理是一樣的)如圖所示:

早期的PDM基本上都是采用這種數(shù)據(jù)庫(kù)+文件服務(wù)器的模式來(lái)管理圖文檔的;

文件服務(wù)器提供文件上下載的方法大致有這樣的幾種方法:

1. 文件的共享服務(wù),(windows編程中被稱(chēng)為“命名管道”);

2. 活動(dòng)目錄 Active Directory

3. FTP 服務(wù)器

以上幾種各有各的優(yōu)勢(shì)和缺點(diǎn),具體不展開(kāi)說(shuō)了。

第二:文件放在數(shù)據(jù)庫(kù)服務(wù)器中的工作原理。

隨著數(shù)據(jù)庫(kù)技術(shù)的發(fā)展,特別是面向?qū)ο蟮募夹g(shù)在數(shù)據(jù)庫(kù)領(lǐng)域的應(yīng)用,特別是數(shù)據(jù)庫(kù)處理大對(duì)象的能力和方法手段越來(lái)越豐富,很多新一代的PDM系統(tǒng)可以直接將文件對(duì)象放在數(shù)據(jù)庫(kù)中管理,其基本的原理如下圖所示:

也就是說(shuō)文件記錄在數(shù)據(jù)庫(kù)中是數(shù)據(jù)表中的一條數(shù)據(jù)記錄,而記錄文件本身內(nèi)容的是一個(gè)數(shù)據(jù)庫(kù)的特殊字段,這種字段有很多類(lèi)型,例如(BLOB,F(xiàn)LOB,CLOB)等,這種字段在存儲(chǔ)文件等大對(duì)象的時(shí)候,大對(duì)象實(shí)際上存儲(chǔ)在另外的“表空間”中,主記錄表中僅僅存儲(chǔ)大對(duì)象在這個(gè)表空間的地址指針。主記錄數(shù)據(jù)表的訪(fǎng)問(wèn)速度沒(méi)有任何影響。

而數(shù)據(jù)庫(kù)管理員可以將“大對(duì)象表空間”指定到不同的磁盤(pán)分區(qū),卷,硬盤(pán),甚至其他計(jì)算機(jī)的目錄中,數(shù)據(jù)庫(kù)管理員可以隨時(shí)追加“大對(duì)象表空間”的目錄空間。這樣雖然從存儲(chǔ)的物理位置上,文件記錄和文件內(nèi)容本身雖然在不同的“空間”存儲(chǔ),但從邏輯上他們是一體的,從根本上保證了數(shù)據(jù)的完整性,一致性,并盡量降低了系統(tǒng)管理員的部署和維護(hù)難度。

我個(gè)人的偏好:

我更傾向與采用數(shù)據(jù)庫(kù)存儲(chǔ)的方式來(lái)解決文件存儲(chǔ)的問(wèn)題,這種方式帶來(lái)的好處如下:

1.  數(shù)據(jù)的一致性、完備性得到根本保證:

由于文件本身,與文件記錄從邏輯上是一條數(shù)據(jù)庫(kù)記錄,從而從根本上保證了數(shù)據(jù)的一致性和完備性。

另外,從編程角度,對(duì)于邏輯上需要保證“元事務(wù)特性”的數(shù)據(jù)操作,在數(shù)據(jù)庫(kù)中得到了根本保證,比如某個(gè)文件要上傳到PDM系統(tǒng)中,在上傳過(guò)程中,網(wǎng)絡(luò)出現(xiàn)故障,如果采用數(shù)據(jù)存儲(chǔ)文件,那么這個(gè)文件在數(shù)據(jù)庫(kù)中沒(méi)有任何記錄存在;而如果采用文件服務(wù)器,很有可能是數(shù)據(jù)庫(kù)中有這個(gè)記錄存在,而文件服務(wù)器中由于網(wǎng)絡(luò)問(wèn)題造成上傳失敗,文件沒(méi)有存在,從而造成數(shù)據(jù)的不一致。

2.  部署更為簡(jiǎn)單, 對(duì)于數(shù)據(jù)存儲(chǔ),用戶(hù)只需要架設(shè)數(shù)據(jù)庫(kù)服務(wù)器就可以了。

3.  更為安全:

a)   文件的存儲(chǔ)更安全安全,避免了文件服務(wù)器的共享服務(wù),或者文件FTP服務(wù)帶來(lái)的不安全因素。

b)   數(shù)據(jù)在傳輸過(guò)程中都通過(guò)數(shù)據(jù)庫(kù)指定的TCP/IP協(xié)議和特定的端口進(jìn)行,文件在傳輸過(guò)程中沒(méi)有采用任何其他文件傳輸協(xié)議,與其他數(shù)據(jù)一樣都是IP數(shù)據(jù)包。

c)   文件的存儲(chǔ)避免了各種感染文件型病毒的可能。

3. 數(shù)據(jù)庫(kù)的平臺(tái)無(wú)關(guān)性:

a)   數(shù)據(jù)庫(kù)可以與操作系統(tǒng)平臺(tái)無(wú)關(guān),文件的存放也自然與操作系統(tǒng)無(wú)關(guān),進(jìn)一步提高了數(shù)據(jù)的安全性。

b)   數(shù)據(jù)庫(kù)還可以支持“裸盤(pán)”存儲(chǔ),也就是數(shù)據(jù)庫(kù)的存儲(chǔ)“空間”可以獨(dú)立于操作系統(tǒng)之外,這樣數(shù)據(jù)庫(kù)對(duì)數(shù)據(jù)的物理操作不通過(guò)操作系統(tǒng)提供的接口,而直接對(duì)物理硬盤(pán)進(jìn)行操作,更進(jìn)一步提高的大數(shù)據(jù)量的訪(fǎng)問(wèn)性能。

4.  容量的擴(kuò)展更為方便。由于數(shù)據(jù)庫(kù)表空間可以隨時(shí)擴(kuò)展, 并且這種擴(kuò)展不受到文件分區(qū)的限制,表空間可以擴(kuò)展到其他分區(qū),其他硬盤(pán),甚至其他計(jì)算機(jī)上,保證了系統(tǒng)的持久應(yīng)用。如果采用文件服務(wù)器的形式,這樣的擴(kuò)展會(huì)有較多的限制。

5.  數(shù)據(jù)備份和恢復(fù)更為容易。系統(tǒng)管理員只需要關(guān)心數(shù)據(jù)庫(kù)如何備份就可以,數(shù)據(jù)庫(kù)會(huì)自動(dòng)將邏輯上是一體的數(shù)據(jù)從邏輯完備性的角度一起備份出來(lái)。如果采用文件服務(wù)器的形式,那么系統(tǒng)管理員還要考慮數(shù)據(jù)庫(kù)本身的備份和文件備份的對(duì)應(yīng)關(guān)系,很容易出現(xiàn)差錯(cuò),特別是在熱備份的過(guò)程中,由于系統(tǒng)還在使用,備份也是需要有時(shí)間過(guò)程的,任何增刪改的操作,都可能使得備份出來(lái)的數(shù)據(jù)出現(xiàn)數(shù)據(jù)不一致的可能。

另外數(shù)據(jù)庫(kù)本省提供多種的備份形式,用戶(hù)在選擇的時(shí)候更容易。

6.  全文檢索更為方便,可以利用數(shù)據(jù)庫(kù)的全文檢索機(jī)制,對(duì)文件進(jìn)行全文檢索。

可能很多客戶(hù)對(duì)數(shù)據(jù)庫(kù)存儲(chǔ)文件還有一些顧慮,例如:

1.   文件太多了,數(shù)據(jù)庫(kù)會(huì)不會(huì)過(guò)于膨脹,這個(gè)庫(kù)會(huì)不會(huì)“爆炸”,管理會(huì)不會(huì)復(fù)雜?

實(shí)際上從原理上分析,數(shù)據(jù)庫(kù)中存放文件的管理模式,與文件的多少?zèng)]有關(guān)系,文件在“大對(duì)象表空間”中的具體存放,都有數(shù)據(jù)庫(kù)本身來(lái)維護(hù),系統(tǒng)管理員只需要定期的給“大對(duì)象表空間”擴(kuò)容就可以,并且這個(gè)擴(kuò)容也非常簡(jiǎn)單,可以隨時(shí)將其他分區(qū)的某個(gè)目錄指定到這個(gè)空間中。

反而采用文件服務(wù)器,文件記錄中要記錄文件的具體物理地址,反而給數(shù)據(jù)的遷移,擴(kuò)容帶來(lái)一些管理工作。

2.   文件太多了,數(shù)據(jù)庫(kù)會(huì)不會(huì)很慢?

兩種方式比較起來(lái),對(duì)文件主記錄表的影響沒(méi)有差別,不會(huì)因?yàn)槲募?,采用文件服?wù)器就比采用數(shù)據(jù)庫(kù)服務(wù)器更快;很多企業(yè)用這種形式存儲(chǔ)數(shù)據(jù)達(dá)到上百GB的數(shù)據(jù),沒(méi)有發(fā)現(xiàn)數(shù)據(jù)庫(kù)的速度降低。

反而,我認(rèn)為數(shù)據(jù)庫(kù)中用大對(duì)象表空間來(lái)儲(chǔ)存文件,有利于大數(shù)據(jù)量下的性能提高,因?yàn)閿?shù)據(jù)庫(kù)中可以建立索引,從而大大提高數(shù)據(jù)訪(fǎng)問(wèn)效率,這是文件服務(wù)器所不能。(e-works博客)

發(fā)布:2007-04-24 09:45    編輯:泛普軟件 · xiaona    [打印此頁(yè)]    [關(guān)閉]
相關(guān)文章:
廣州OA系統(tǒng)
聯(lián)系方式

成都公司:成都市成華區(qū)建設(shè)南路160號(hào)1層9號(hào)

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓

咨詢(xún):400-8352-114

加微信,免費(fèi)獲取試用系統(tǒng)

QQ在線(xiàn)咨詢(xún)

泛普廣州OA快博其他應(yīng)用

廣州OA軟件 廣州OA新聞動(dòng)態(tài) 廣州OA信息化 廣州OA快博 廣州OA行業(yè)資訊 廣州軟件開(kāi)發(fā)公司 廣州門(mén)禁系統(tǒng) 廣州物業(yè)管理軟件 廣州倉(cāng)庫(kù)管理軟件 廣州餐飲管理軟件 廣州網(wǎng)站建設(shè)公司