聯系我們contact

電(diàn)話(huà):027-59760188-801

地(dì)址:武漢市(shì)東(dōng)湖(hú)高(gāo)新開(kāi)發區γ→≤≤(qū)光(guāng)谷大(dà)道(dào)120γ< 号現(xiàn)代森(sēn)林(lín)小(xiǎo)鎮A座609室

一(yī)款開(kāi)源的(de)系統生(shēng)物(wù)研究數↑÷α♥(shù)據管理(lǐ)系統——OpenBIS

發布時(shí)間(jiān):2018-07-09 浏覽次數(shù):1759次

一(yī)、前言導讀(dú)

今天給大(dà)家(jiā)介紹一(yī)款開(kāi)源的(de)¶↓&專門(mén)管理(lǐ)生(shēng)物(wù)學研究數≥•​₽(shù)據的(de)管理(lǐ)軟件(jiàn)openBIS,文(w♠σγ✘én)章(zhāng)分(fēn)為(wèi)兩個(gè)部分(fēn),前一×£♣•(yī)部分(fēn)介紹軟件(jiàn)φ♦的(de)一(yī)些(xiē)基本特性和(hé)概念ε→,後一(yī)部分(fēn)介紹軟件(jià'βn)在一(yī)些(xiē)領域中的(de)具體(tǐ∞♥★≥)應用(yòng)。

OpenBIS當前已經在多(duō)個(gè)SystemX.ch α&和(hé)歐盟項目(應用(yòng)質譜技(jì)術(shù)研究代謝(xiè↓♣©<)物(wù)和(hé)蛋白(bái)質,高(gāo)內(nèi♠δ•©)涵篩選,下(xià)一(yī)代的(de)基因測序技(jì)≥÷術(shù)。)得(de)到(dào)了(le)↑$≥非常成功的(de)應用(yòng)。對(duì)于涉及大(dà)型的±✔(de)系統生(shēng)物(wù)學研究群體(t♠☆£ ǐ)來(lái)說(shuō),OpenBIS是(shì)極其合适的(de)>Ω‌,其功能(néng)豐富,系統靈活,部署簡單,可(kě)擴展性強,适↕←≤合管理(lǐ)組學研究等龐大(dà)的(de)數(shù)據♥ ,并且能(néng)夠處理(lǐ)幾乎任何種類的(de)生(shēngπ₹'ε)物(wù)學數(shù)據類型,甚至可(kě)以擴₩≠‍展到(dào)其他(tā)研究領域。

不(bù)管是(shì)系統生(shēng)物(γ>wù)學,還(hái)是(shì)組學,随著(zhe)儀器(qì∑≥‍β)技(jì)術(shù)的(de)進步,這(zhè)些(xiē δ)新興學科(kē)的(de)研究方式與方法都(dōu)對(duì)生(sh>λ♥∞ēng)物(wù)實驗數(shù)據的(de)管©₩理(lǐ)和(hé)高(gāo)性能(néngφ←★)計(jì)算(suàn)提出了(le)前所未有(∑∑π≤yǒu)的(de)挑戰。系統生(shēng)物(∞✔α∏wù)學,基因組學、蛋白(bái)質組學、代謝(xiè)>₩÷™組學等大(dà)科(kē)學工(gōng)程往往意味∏←←≈著(zhe)項目的(de)長(cháng)期持續,參與單位和(hé)♥&人(rén)員(yuán)衆多(duō),産生(sh©&♣↑ēng)的(de)數(shù)據量十分(♦δ± fēn)龐大(dà)和(hé)複雜(zá),并且要(yào)綜合≠★‍♥生(shēng)物(wù)信息學、計(jì)算(suàn)機(jī)科>♦(kē)學、數(shù)學等多(duō)學科(kē)的(de)力量協≤γ$作(zuò)完成。大(dà)科(kē)學工(gōng)程的(de)"Ω∞長(cháng)期性與複雜(zá)性要(yào)求一(yī)∏↕套系統能(néng)應對(duì)種類繁多(duō)且體(tǐ)量龐大→π♠‌(dà)的(de)原始數(shù)據存儲,研究過程的(d↕© πe)靈活多(duō)變,數(shù)據分(f γ×↕ēn)析工(gōng)具與算(suàn)法的(de)不(bù)斷更新,研究團隊§↓≠人(rén)員(yuán)變動等一(yī)系列問€₹(wèn)題。    生(shēng)物(wù✘α₽ )實驗數(shù)據管理(lǐ)系統需要(yào)提供一(yī)個(gè∑£)堅實的(de)基礎平台用(yòng)于存儲種類繁多(duō)且體(tǐ)量龐δ←&大(dà)的(de)分(fēn)析儀器(qì)數(shù)據并能(n≈≤∞éng)快(kuài)速整合各種數(shù)據分(fēn)析流程,™©Ω‍包括商業(yè)的(de)數(shù)據流程化(™ ₩huà)處理(lǐ)軟件(jiàn)和(hé)研究人(ré★÷σn)員(yuán)自(zì)己開(kāi)發的(de)數(shù)據分(σ←$fēn)析方法。不(bù)同品牌、不(bù)同型号的(de)儀₹÷$器(qì)原始數(shù)據和(hé)不(bù)™☆"β同方式的(de)數(shù)據分(fēn)析方法所産生(shēng)的(α®επde)結果數(shù)據都(dōu)需要(yào)長(cháng)久保存,♣ 以備将來(lái)再次引用(yòng)以及曆史數(shù)據的(de)比較和(♣≤δhé)整合。在這(zhè)期間(jiān),數(shù)據的(de)格式與 ♠存儲方式也(yě)會(huì)随著(zh★ ®•e)數(shù)據分(fēn)析技(jì)術(shù)和(hé)相(≥"≈xiàng)關标準的(de)發展而逐步發生(shēng)§↔變化(huà)。這(zhè)些(xiē)數(shù)據在相(xià ¥>&ng)當長(cháng)的(de)一(yī)段時(shí)間↑"∑‌(jiān)內(nèi)都(dōu)可(kě)能(nén∞£→♠g)被各類數(shù)據分(fēn)析人(rén)員(yuán)進行(xíng>★)分(fēn)析和(hé)重新分(fēn)析。作(zuò)為♠>¶(wèi)儀器(qì)分(fēn)析原始數(shù)÷σ據和(hé)數(shù)據分(fēn)析所産生(shēng)的(de)‌Ω結果數(shù)據的(de)倉庫,承擔著(zhe)為(wèi)各種功能(néλ¶☆ng)各異的(de)分(fēn)析組件(jiàn)提供數(s‍•∞✘hù)據來(lái)源以及作(zuò)為(wèi)不♥α✘≠(bù)同階段不(bù)同數(shù)據處理(l→εǐ)工(gōng)作(zuò)流之間(jiān)溝通₩&φ(tōng)的(de)橋梁。

我們可(kě)以設想,解決如(rú)此複雜(zá)問(wèn)題 ε的(de)的(de)軟件(jiàn)肯定不©→(bù)是(shì)一(yī)個(gè)剛性的(de)框架,而是(sλ"≈>hì)模塊化(huà)的(de),松散耦合的(de),這(zhè>"β)些(xiē)模塊分(fēn)别實現(xiàn)某個(gè£∏€)特定的(de)功能(néng)或者提供特定的(de)服務,而↕'不(bù)苛求單一(yī)模塊或服務滿足所有(yǒu)需求。同硬₩§件(jiàn)一(yī)樣,這(zhè)些₹®(xiē)模塊應該是(shì)即插即用(yòng)型的(de),能(néng)π ∏¥很(hěn)方便地(dì)整合進體(tǐα§)系中。模塊之間(jiān)也(yě)能(néng)方便地(dì§♣∑)相(xiàng)互整合,并對(duì)外(wài)¥Ω提供接口。同時(shí),基礎科(kē)學研究過✘•♦程的(de)多(duō)變性和(hé)框架松散耦合的(d♦↑e)特點,我們很(hěn)難設定一(yī)個(gè)标準♥•↔的(de)組件(jiàn)模型,因此組件(jiàn)的(de  ≤)開(kāi)發應該著(zhe)重于整合的(de)簡便性上(shàng)。£≤↑×

最初,OpenBIS系統設計(jì)目标就(jiù)是(s♠↔hì)建立一(yī)個(gè)用(yòng)于系統生(shΩγēng)物(wù)學和(hé)各種組學(蛋白(bái)質組≤"學、基因組學、代謝(xiè)組學)研究的(de)數(shù)據的ε∏¥£(de)工(gōng)作(zuò)平台,将來(lái)源于質譜,¶×測序儀、顯微(wēi)鏡等各種儀器(qì)的(de)數(shù)據進行(xí∑$©ng)統一(yī)的(de)管理(lǐ),并從(cóng)儀器(qì)✔✔"原始數(shù)據中提取基礎數(shù)據和(hé≥$"€)元數(shù)據,與數(shù)據流程化(ε βhuà)處理(lǐ)工(gōng)具以及各種可(kě)視(s€↑hì)化(huà)工(gōng)具、數(shù)據分(f$↑&✔ēn)析工(gōng)具整合,對(duì)數(shù)據進行(♦ xíng)分(fēn)階段的(de)以及多(duō) ♣樣化(huà)的(de)後處理(lǐ)。在∏‍開(kāi)放(fàng)性與靈活性方面,不(bù)同類型✘‌÷≤的(de)用(yòng)戶與系統之間(j‍$iān)采取不(bù)同的(de)交互方式訪問(wèn)原始數(shù)據和₹→ ↔(hé)後處理(lǐ)的(de)數(shù)據,追溯數(shù)據§ 的(de)起源,而不(bù)依賴于原有(yǒu)的(de)儀器(qì)和(α×hé)軟件(jiàn)供應商。系統可(kě)擴展性強,存儲和γ (hé)訪問(wèn)大(dà)容量數(shù)據,并可(kě)配置為(wèi↕♣™)分(fēn)布式存儲。

 二、系統的(de)數(shù)據存儲結構    

openBIS 采用(yòng)邏輯層級式結構存儲數(shù‍π)據。其管理(lǐ)的(de)層級單元從(cóng)上(shàn← ¥​g)至下(xià)依次為(wèi):

 •  數(shù)據空(kōng)間(jiān≤‌>™)

 •  項目

 •  實驗

 •  樣品

 •  數(shù)據集

權限規則應用(yòng)于最高(gāo)層級之上(shàng),也(yεε‍ě)就(jiù)是(shì)數(shù)據空(kōng)間(jiān)。可♣←§(kě)以配置訪問(wèn)規則:各終端用☆≥ε€(yòng)于能(néng)看(kàn)什(shén)麽,以及∏×能(néng)夠執行(xíng)何種操作(z​<uò)。

層級單元之間(jiān)的(de)邏輯關系如(rú)下(↑φxià):數(shù)據空(kōng)間(jiān)包含一(yī)個(‍÷€₹gè)或多(duō)個(gè)項目,項目包含一(yī)個(gè)或多(duōΩ≤)個(gè)實驗,而實驗包含一(yī)個(gè)或多(duō)個(g₹↔↕è)樣品,一(yī)個(gè)樣品可(kě)以包含一(yī)個(g←εè)或多(duō)個(gè)數(shù)據集。這(ε€↕→zhè)裡(lǐ)的(de)數(shù)據集是(sh©δ₹ì)指一(yī)組包含實際分(fēn)析數(shù)據和(hé)其衍生(♥™φ€shēng)數(shù)據的(de)多(duō)個(gè)文(wén)∏§件(jiàn)。例如(rú)一(yī)個(gè)樣品在微(wēi)量滴定闆γ∑上(shàng)被顯微(wēi)鏡讀(dú)取了(le)兩次,那(nà)β∏∏£麽就(jiù)會(huì)産生(shēng)兩個¥£>♥(gè)數(shù)據集,這(zhè)兩個(gè)數(shφ&✘ù)據集都(dōu)屬于該樣品。采用(yòng)這(zhè)種邏輯結構十÷↔分(fēn)符合生(shēng)物(wù)學研究中的(de)實際情況。

采用(yòng)層級結構能(néng)夠為(wèi)存儲更多(dφ¥uō)更大(dà)的(de)數(shù)據集并建立彼此之間(jiān)的(&→±≈de)相(xiàng)互關系提供了(leΩπ←✘)便利。例如(rú),原始數(shù)據和(hé)處理(lǐ¶&₩)後數(shù)據可(kě)以分(fēn)别存儲為(wèi)兩個Ωφ(gè)獨立的(de)數(shù)據集,這(z∏​>hè)兩者之間(jiān)還(hái)能✘φ(néng)建立聯系(某結果數(shù)據集來δ ≠(lái)源于某個(gè)原始數(shù)據集),γ☆∞♠并同時(shí)指向一(yī)個(gè)樣品或一(yī)個(gè)實>₽♦‌驗。層級關系進一(yī)步衍生(shēng)可(kě)以建立樣品和(hé)數↔∏(shù)據集之間(jiān)的(de)♥≤父子(zǐ)關系,而這(zhè)在複雜(zá)的(de)科(kē)學±£₩研究中是(shì)經常遇到(dào)的(de)。


一(yī)款開(kāi)源的(de)系統生(shēng)物(wù)研究數(shù)據管理(lǐ)系統——OpenBIS

元數(shù)據是(shì)關于數(shù)據的(de)數(shù)據&→™§,為(wèi)了(le)描述數(shù)據在背景環✘ ↔α境中的(de)結構和(hé)意義,便于查找和(hé)使用(y®₽$¶òng)采集的(de)數(shù)據失去(qù)了©♥  (le)元數(shù)據的(de)數(shù)εβ據沒有(yǒu)什(shén)麽意義。對(duì)元數(shù)據的(₹£≥"de)管理(lǐ)是(shì)openBIS δ±‌Ω十分(fēn)重要(yào)的(de)功₽÷能(néng)之一(yī)。 

openBIS提供了(le)十分(fēn)靈活的(d'₩‌e)元數(shù)據定義功能(néng),可(kě©↓)以在數(shù)據集、樣品、實驗等多(duō)層次上↑δ÷π(shàng)定義結構化(huà)、半結構化(huà)§ σ、以及非結構化(huà)的(de)元數(shù)據,≈β為(wèi)靈活的(de)檢索提供保證。為(wèi✘✔₽γ)了(le)組織這(zhè)些(xiē)元ε€σ數(shù)據,系統定義了(le)元數(shù)據類型這(zhè)$÷×®個(gè)标識,用(yòng)于将創建的(de)元↓₩ ♦數(shù)據歸屬到(dào)具體(tǐ)的(de)系統對(duì)象上(sh≠±Ωàng)(數(shù)據集、樣品、實驗)

結構化(huà)與半結構化(huà)的(de)元數(shù)據,¶™¥或者叫屬性(或者注釋),屬性就(jiù)是(£₹↕shì)一(yī)個(gè)數(shù)據庫中的(de)字段,包括名稱,标簽 ✔,描述和(hé)值類型(整數(shù)型,浮點型,日(r™↔​ì)期型,邏輯型,文(wén)本型,超鏈接,或者之前定義的(de)α<‍φ受控詞彙表,或者對(duì)于半結構化(huà)的(↔☆de)元數(shù)據而言可(kě)以采用(yòng)‌ €®XML結構文(wén)件(jiàn)作(zuò)為(wèi)存儲值)∞¥•。系統允許對(duì)實驗,樣品,數(shù)據集自(zì)定義屬性,并γ∏通(tōng)過屬性類型歸屬到(dào)具體(tǐ)的(de)數(shù)據對¶€∑(duì)象上(shàng),這(zhè)些(xiēσ••)屬性類型透明(míng)化(huà)地(dì)存儲在數(∏✘‌<shù)據庫中。openBIS中的(de)±♦δ←屬性還(hái)可(kě)以是(shì)動δβ♦∑态賦值的(de),可(kě)以根據其他(tā)元數(Ω↓shù)據通(tōng)過腳本進行(xíng)賦值。

在openBIS中,用(yòng)戶可(kě)以對(du÷•ì)項目、實驗、樣品三者賦予非結構化(huà)的(de)元數(shù→>)據,也(yě)就(jiù)是(shì)文("φwén)件(jiàn)型的(de)附件(jiàε​n),就(jiù)如(rú)同你(nǐ)在email✔↓中插入一(yī)個(gè)附件(jiàn)。

基于這(zhè)種靈活的(de)自(zì)定義元數(shù)據的(de)‌ ∏機(jī)制(zhì),openBIS提供了(le)通(tōng)用(yòλ≈ng)型的(de)方式為(wèi)那(nàσ♦)些(xiē)創新的(de)具備開(kāi)創σφ£性的(de)實驗建立全新的(de)元數(shù)據模型

為(wèi)了(le)高(gāo)效地(dì)存儲和(hé)檢索系統生(↑≠♦'shēng)物(wù)學研究中産生(shēng)的(de)海( ‌♥hǎi)量數(shù)據,并能(néng)兼容不(bù)同的(de)分(fēn♦ ∏♠)析測試技(jì)術(shù),openBIS™ ‍ 采用(yòng)混合式的(de)數(shù)據存儲方法。索引數(γ&shù)據,實驗相(xiàng)關的(de)元 ±≈γ數(shù)據,選擇性的(de)結果數(λ ✘$shù)據采用(yòng)關系數(shù)據庫​™≈≥存儲(當然,文(wén)件(jiàn)型的(φδ∑de)元數(shù)據也(yě)可(kě)選擇存儲到(dào)關★ ←系數(shù)據庫中),大(dà)體(tǐ)積數(shù)據<÷​"則采用(yòng)扁平化(huà)的(de)文(wén)&Ω≠件(jiàn)存儲(flatfile).默認情況下¶×₹>(xià),原始數(shù)據和(hé)結果數(shù)據存儲在數(shù§♦¶γ)據存儲區(qū)中(data store₩•₽₽),這(zhè)是(shì)一(yī)個(gè)由單個(gè∏≈₽$)文(wén)件(jiàn)系統或多(du₽"ō)文(wén)件(jiàn)系統(采用(y↑®↑òng)分(fēn)段存儲模式)組成的(d₹↔$•e)扁平的(de)文(wén)件(jiàn)型數(shù)據存¶©→£儲體(tǐ)系。

混合式的(de)數(shù)據存儲為(wèi)openBIS帶來(lái)了(Ω✘♦le)靈活性和(hé)可(kě)擴展性。系統在數'★δ(shù)據庫中巧妙地(dì)存儲了(le)元數(shù)據₹ ↑π模型,我們可(kě)以認為(wèi)這(zhè)些(xiē)元數¥>®(shù)據模型本身(shēn)就(ji&≈ù)是(shì)系統數(shù)據的(de♣♥)一(yī)部分(fēn)。這(zhè)樣,用(yòngλ♣©)戶可(kě)以因地(dì)制(zhì)宜地(d  ←±ì)為(wèi)自(zì)己的(de)研究數(shù)據選擇合适的¶®φ(de)元數(shù)據模型,判斷的(de)标準可(kě)以看(kàn)♥♥♦≥元數(shù)據模型是(shì)否完整地(dì)包含了(le€Ω)原始數(shù)據文(wén)件(jiàn)的(de)上(shàng)下(φ₹✘xià)文(wén)信息,是(shì)否采用(yòng)了(le)合适的(de©≠¥)存儲方式(以關系數(shù)據庫存儲還(hái)是(shì)以文(w‍♥δ←én)件(jiàn)型存儲)以應對(duì)查詢效率的(★₹∑✔de)要(yào)求。

系統永遠(yuǎn)保持其核心數(shù)據庫§​♥的(de)數(shù)據量在一(yī)個(gè)合理(lǐ)的(de)盡可(kΩ≤→ ě)能(néng)小(xiǎo)的(de)規模,并¥Ωα将其置于快(kuài)速存儲設備上(shàng)。系統對(×↔duì)于會(huì)引發大(dà)量數(shù)據列表顯示的(de)♣↔查詢盡量進行(xíng)優化(huà),在存儲大(dà)批量數(shù)據時(₹™shí)則會(huì)采用(yòng)分(fēn)段存儲和(hé♠‌")分(fēn)布式存儲。

三、系統部署方式

openBIS由客戶端,應用(yòng)服務器(qì),數(shù)據存儲服務器(≥®∏≈qì)組成。

應用(yòng)服務器(qì)(applicati↕₹on server 簡稱AS):管理(lǐ)元數( × shù)據并關聯其指向的(de)基礎數(sh•®ù)據。

數(shù)據存儲服務器(qì)(data store sδ←erver 簡稱DSS):管理(lǐ)數(shù)據

應用(yòng)服務器(qì)使用(yòng)關系↕♠數(shù)據庫來(lái)管理(lǐ)用(yò↕§♥δng)戶,用(yòng)戶身(shēn)份認證信息,系統實體(t'​ǐ)對(duì)象如(rú)數(shù)據空(kōng)間(jiān),→$φ™實驗和(hé)樣品的(de)元數(shù)據以及所有(yǒu)☆α•數(shù)據集的(de)索引信息。數(shù)據存儲服務器(qì)DSS∞♦ 管理(lǐ)存在數(shù)據存儲區(qū)中的(de)≤σ ®數(shù)據集。該存儲區(qū)隻能(néng)由DSS負責×∑寫入,不(bù)能(néng)被系統其他(tā)部分(fēn)​α→所操作(zuò)。不(bù)同類型的(de)客戶端如(rú)浏覽器(q★‍ì),圖形化(huà)的(de)Matl♥☆÷ ab客戶端,命令行(xíng)客戶端能(néng)夠通(tōng)過AS和♥ε(hé)DSS訪問(wèn)openBIS。

在系統部署圖中,我們可(kě)以看(kàn)到(dào)§β一(yī)個(gè)AS可(kě)以對(duì)應多σ​<β(duō)個(gè)DSS。這(zhè)一Ω​∑(yī)特性對(duì)于大(dà)科(kē) '學工(gōng)程非常重要(yào),系統生(shēn÷​♥₩g)物(wù)學,組學這(zhè)些(xiē)科(kē)學"↑¥✘工(gōng)程往往需要(yào)多(duō)個(gè)實驗室和®§₽(hé)單位的(de)參與,分(fēn)布式的(d₩ε♥e)存儲對(duì)于促進數(shù)據共享的(de)同時(shí)進行(∑☆€™xíng)自(zì)有(yǒu)知(zhī)識産權保護是(shì)<λ&✘有(yǒu)雙重作(zuò)用(yòng)的(de)。♣✔¶openBIS 的(de)分(fēn)布式DSS特性&δ→↕允許各個(gè)實驗室使用(yòng)本地(dì)的(de)數(shù)•γ®據存儲服務器(qì)(DSS)存儲本地(dì∞σ‌₽)儀器(qì)産生(shēng)的(de)數(shù)據。這(zhè)裡(l↕>"ǐ)DSS命名為(wèi)數(shù)據存儲服務器(¶←qì)而不(bù)是(shì)簡單的(de)稱之為(wèi)數β♥≤ (shù)據庫服務器(qì)是(shì)自(zì)有(yǒu ≥)其道(dào)理(lǐ)的(de),openBIS采用(yòng)混  合數(shù)據存儲模式,即數(shù)據庫存儲和(hé)文(wén)§₹∞件(jiàn)存儲相(xiàng)結合,而不(bù)是(shì)單一 •(yī)的(de)數(shù)據庫存儲模式。DSS從(cóng↕£•™)設計(jì)來(lái)說(shuō),并不(bσ←<ù)僅僅是(shì)一(yī)個(gè)置于ε  ☆因特網上(shàng)的(de)文(wén)件(jiàn)服務€‍≥ 器(qì)。它能(néng)以其自(zì)身(shēn)存儲的(d♠←★e)數(shù)據為(wèi)基礎進行(xíng)各種自(zì)定義的(de)₽÷€查詢,并啓用(yòng)其自(zì)身(shēn)的(de)關系數(<σshù)據庫去(qù)存儲結果型數(shù)據。這(zhè)些(xiē)♥♣<結果數(shù)據寫入數(shù)據庫的(de)操作(zuò)可(kě)以在 ©φ數(shù)據載入時(shí)自(zì)動進行(xíng)。在下(§↑§€xià)圖中,用(yòng)戶通(tōng)過命令行(xíng)工(gōng"γ&♦)具和(hé)MatLab客戶端可(kě)以通(£∞ tōng)過openBIS提供的(de)APIπ ↑訪問(wèn)DSS提供的(de)服務。進一(© σyī)步,在現(xiàn)有(yǒu)基礎上(shàn∏→g)還(hái)可(kě)以為(wèi)DSS添加協處理(©☆lǐ)服務器(qì)用(yòng)于數(shù)據的(de)傳輸,例如(rú)&​™₽Datamover和(hé)CIFEX等組件(jiàn)用(yòng)于‌π數(shù)據的(de)導入和(hé)導出。

一(yī)款開(kāi)源的(de)系統生(shēng)物(wù)研究數(shù)據管理(lǐ)系統——OpenBIS


AS和(hé)DSS各司其職,AS專門(mé∏≠δn)處理(lǐ)元數(shù)據并指向原始的(de)來(‌↑>lái)源,分(fēn)布式的(de)多(duō)個(gè)DSS負≥★≤≤責處理(lǐ)大(dà)規模數(shù)據。龐大(dà)的(de™≥α)原始數(shù)據和(hé)精簡的(de)元₩β 數(shù)據得(de)以分(fēn)離(lí),從(cóng)而避免了(l₹₹∑e)查詢和(hé)傳輸高(gāo)通(tōng)量和(hé)高(gāo)內(​®₹nèi)涵數(shù)據所帶來(lái)的(de)高(gāo)昂的(dφ φ♦e)系統開(kāi)銷疊加,如(rú)CPU的(de)使用 ©÷¥(yòng),IO和(hé)帶寬的(de)占用(yòng)。

3.1  OpenBIS的(de)客戶端

openBIS自(zì)帶了(le)圖形化(huà)的(de)‍™Web應用(yòng)程序,命令行(xíng)工(gōng)具和(hé)一(y ε∞÷ī)些(xiē)KNIME數(shù)據分(fē​÷φ™n)析管道(dào)節點。為(wèi)了(le)方§β✘↓便專業(yè)用(yòng)戶通(tōng)過客戶端訪問(wèn)後台,系統ααβ¶提供了(le)可(kě)通(tōng)過TCP/IP網絡調用(y←σ÷ òng)的(de)API。

3.2  應用(yòng)服務器(qì)(AS)

AS是(shì)客戶端與系統交互的(de)中心,其配§≥置有(yǒu)一(yī)個(gè)關系型的(de)數(shù)‍δ→'據庫,用(yòng)于管理(lǐ)和(hé)存₩♥ 儲關于樣品,實驗,數(shù)據集的(de)元數(shù)據•‌♠;實際的(de)數(shù)據由DSS存儲和(hé±​™)管理(lǐ),AS引導訪問(wèn)一σΩ(yī)個(gè)或多(duō)個(gè)DSS。

AS自(zì)身(shēn)分(fēn)解成幾個(gè)≈®層級:

展示層(Presentation layer←™✘):HTML和(hé)Java Script&nb→≤sp;用(yòng)于客戶端展示

域層(Domain Layer):為(wèi)希望與業(yè)務對(duì)象(樣品,實驗)進行("¥‌xíng)交互的(de)用(yòng)戶提供服務

數(shù)據訪問(wèn)層(Dataεα✔ acess layer):用(yòng)于AS與DSS之間(jiān)的(de)訪問(w÷✘ ↑èn),由AS所私有(yǒu),不(bù)由‍ '✘外(wài)部調用(yòng)

前三個(gè)服務不(bù)僅為(wèi)∏®≠Web客戶端所使用(yòng),還(hái)能(néng)由命令行(xíφ​≈‌ng)工(gōng)具程序和(hé)DSS所調用(yòng)。典型的(d¶¶e)服務如(rú)樣品查詢,對(duì)象在數(shù)據<±ε庫中的(de)注冊。

3.3 數(shù)據存儲服務器(qì)(DSS​Ω♦₩)

DSS采用(yòng)混合存儲模式管理(lǐ)數(shù)×¶≠據集所包括的(de)所有(yǒu)數(shù)據±£‍,如(rú)圖像、譜圖、分(fēn)析結果或特征描述。這(zhè)些(xiē∑‌)數(shù)據都(dōu)放(fàng)在數(sh©•ù)據存儲系統中。DSS負責對(duì)這(zhè)些(x±↓•↓iē)數(shù)據查詢,基于數(shù)據≈£↕φ集的(de)報(bào)告以及可(kě)視(shì)化(huà)£×λ"。

在扁平的(de)文(wén)件(jiàn)存儲模式下(xià),☆↔>數(shù)據存儲由單份組成(一(yī)般由一(y≤↓↑‍ī)個(gè)文(wén)件(jiàn)服務器(qì)提供),分(f•↔≈±ēn)段存儲模式下(xià),一(yī)個(gè)數(shù)據存儲有(yǒ‍π"πu)多(duō)個(gè)數(shù)據份,每一(yī)個(gè)文δ≤(wén)件(jiàn)服務器(qì)管理(lǐ)其中一(yī)份δ™。

與AS類似,DSS也(yě)可(kě)分(fēn)×→為(wèi)展示層(presentation layer),域₩₹層(domain layer),數(shù)據訪問(wè÷>n)層(data access layer)&n♠↔♣bsp;

展示層(presentation layer),負責數(shù)據的(de)♣λ<展示,一(yī)般而言,不(bù)外(wài)乎類似于為(wè•≤‍δi)某張圖片用(yòng)于HTML顯示而★≈ε提供URL地(dì)址之類的(de)事(shì)物(wùβ"♠)。更複雜(zá)一(yī)點的(de)将以÷φ↕Tab鍵為(wèi)分(fēn)隔符的(de)文(wén)件(≤≠σΩjiàn)在網頁上(shàng)以表格的(de)形式展示,更深層次σ→∞≠的(de)展示需要(yào)用(yòng)戶對(dΩ₹ε®uì)對(duì)數(shù)據有(yǒu)更深入的(de)理(α∞≥lǐ)解,例如(rú)數(shù)據可(kě)視(shì)≤♠化(huà)中的(de)熱(rè)點圖,或将代表不(bù)同通(tōng)道λ♣≈(dào)數(shù)據的(de)圖進行(xíng)組合。這(zhè)些(xi♦♦↓ē)功能(néng)我們将在openBI★₩↓S的(de)第二篇文(wén)章(zhān ♠™φg)中做(zuò)簡單的(de)介紹。數(sh₹±φù)據集上(shàng)載器(qì)(Data Set U> ' ploader)也(yě)屬于展示層的(de)一(λ₽>↓yī)部分(fēn),其是(shì)基于網♠✘✔頁的(de)數(shù)據集批量上(shàng)載工(gōng)具。↑β♣>為(wèi)避免浏覽器(qì)對(duì)上(shàng) ‌₹載文(wén)件(jiàn)2GB大(dà)π₽≥↓小(xiǎo)的(de)限制(zhì),該工(gōng)具♠δ∏通(tōng)過Java WebStart執行(xíng)。

域層(Domain Layer),負責提供數(← > shù)據的(de)訪問(wèn),并能(né ♣€ng)解析其數(shù)據格式和(hé)語義關系。ETL(提取,轉換,上λ®≥(shàng)傳)線程也(yě)屬于該層,其負責注冊新産生(shēng)的(←φ♠de)數(shù)據集。舉一(yī)個(gè)DSS的(de)典型的(de)©←↑™應用(yòng)的(de)例子(zǐ),ETL線程監控∏♣某個(gè)文(wén)件(jiàn)夾中的♠÷(de)事(shì)件(jiàn)發生(shēng)情況,如(rú)π₽₹果該文(wén)件(jiàn)夾中新創建了 §₹♣(le)文(wén)件(jiàn)或文(wén)件(jiàn)夾,ET∞☆₽£L将執行(xíng)相(xiàng)關的(deφ​•≈)操作(zuò)。

數(shù)據訪問(wèn)層(data access ε$layer),用(yòng)于生(shēng)成DSS中文(wé β↕€n)件(jiàn)存儲系統的(de)摘要(yào)。該§¶摘要(yào)使得(de)DSS能(néng)夠>α↓α利用(yòng)RDBMS中的(de)文(wén)件(jiàn)₹Ω¶•元數(shù)據從(cóng)而加速檢索和(hé)列表顯示,透£® ∞明(míng)地(dì)訪問(wèn)容器(qì)文(wén)件(jiàn♦​)(HDF5容器(qì)以目錄的(de)形式顯示),←§•并将同一(yī)個(gè)數(shù)據集容器(₽¶qì)中的(de)多(duō)個(gè)數(shù)據集的(de)目 ♠錄列表彙總顯示。

3.4、CIFEX

CIFEX是(shì)openBIS系統的(de)輔助工(gōλ♦∞ng)具,全稱叫CISD文(wén)件(jiàn)交換工(gōng)§±₩ 具(CISD Exchanger).CIFEX 是(®φ€shì)一(yī)個(gè)基于Web的(de)應用(yòng)程序,用(yò♣×ng)于傳送和(hé)交換大(dà)的(de)數(shù)≈≥據文(wén)件(jiàn)。由于浏覽器(qì)對(d♥↕±★uì)于上(shàng)傳容量有(yǒu)2GB的(d£$e)限制(zhì),CIFEX采用(yòng)基于Java Web"¶start 圖形化(huà)工(gōng)具,支持斷點續₹±¶傳并進行(xíng)校(xiào)驗和(hé)檢查以保證文(wén)件★≠‌€(jiàn)完整性。CIFEX主要(yào)用(yòng<♦)于下(xià)載openBIS中存儲的(de)超大(dà)±&​的(de)數(shù)據集。如(rú)果用(yòng)戶能(néε β≤ng)夠直接訪問(wèn)DSS數(sh♥‍ù)據存儲的(de)文(wén)件(jiàn)系統,則CI​σβ±FEX并非是(shì)必須的(de)。但(♠δdàn)大(dà)多(duō)數(shù)用(yòng)戶是(s‌↕£hì)無法直接訪問(wèn)DSS文(w£<σén)件(jiàn)系統的(de),而如(rú)果有(yǒu)人(rén)想把&π一(yī)些(xiē)數(shù)據分(fēn)享給沒有(yǒδ¶β↓u)openBIS 賬号的(de)人(rén),那(nà)麽CIFE☆ σ≥X就(jiù)可(kě)以幫助實現(xiàn)$∑÷這(zhè)一(yī)目的(de)。大(dà)家(j​↑®iā)知(zhī)道(dào),系統生(shēng)物(wΩβù)學和(hé)相(xiàng)關的(de)組學的(de)分(fēn)析數 ¶‌(shù)據都(dōu)是(shì)十分(fēn)÷​>↔龐大(dà)的(de),多(duō)達幾個(gè)G。此時(shí)研究人(‌&rén)員(yuán)通(tōng)過郵件(jiàn)發送這(zhè)些(x'Ωφiē)數(shù)據集不(bù)太現(xiàn)實。在這(zhè)種應用("÷yòng)下(xià),CIFEX成為(wèi)了(βδ¶le)數(shù)據與openBIS系統之間(jiān)↔‌雙向流通(tōng)的(de)通(tōng)道(dào)。CIFEX系統同樣也®≠δ★(yě)是(shì)開(kāi)源的(de),并可(kě)提供↕ ​✘下(xià)載。

3.5、Datamover

顧名思義,Datamover是(shì)用(yα≥òng)于數(shù)據從(cóng)一(yī)個(g<Ωè)地(dì)點傳輸到(dào)另一(yī)個(gè)地(dì)點。δσ↓其可(kě)使用(yòng)本地(dì)發起的(de)文(w‌σén)件(jiàn)共享或是(shì)通(tōng)過SSH通(tōng)→‌≤✘道(dào)(建立在應用(yòng)層和(hé)傳輸層基¶‍©¶礎上(shàng)的(de)安全協議(yì))或遠(yuǎn)程主機(jī)同∑λ→≤步進行(xíng)數(shù)據的(de)傳輸。該工(gōn★π×g)具主要(yào)是(shì)用(yòng)于将'≥儀器(qì)直接連接的(de)計(jì)算(suàn)機(jī)上(​>β₩shàng)的(de)數(shù)據轉移到(dào)一✘♠β(yī)個(gè)過渡性的(de)中間(jiān)存儲設備上(sh​β àng)。組學研究的(de)數(shù)據往往十分(fēn)龐大(dà),與儀αβλ•器(qì)相(xiàng)連的(de)計&≤(jì)算(suàn)機(jī)的(de)磁盤很(hěn)快(kuài)"∞¥¶就(jiù)會(huì)超過容量。将儀器(qì)相(xiβ✘★àng)連計(jì)算(suàn)機(jī)上(δ→₹shàng)的(de)文(wén)件(jiàn)夾直接對(duì)✘φ§ 應到(dào)DSS的(de)存儲區(qū)往≠€±往又(yòu)會(huì)受制(zhì)于網絡的(de∞★ <)好(hǎo)壞。要(yào)知(zhī)道(±£¥dào),網絡往往不(bù)太穩定。此時(shí)就(jiù) ♦∞需要(yào)在DSS存儲區(qū)與分(fēn)析儀器(qì)計(jìβ∑)算(suàn)機(jī)之間(jiān)建立一(yī)個(gè)中間(ji₩≤ān)過渡區(qū),例如(rú)數(shù)•£據中心或者計(jì)算(suàn)集群,由Datamover不(≠'<γbù)斷地(dì)将數(shù)據遷移過去¶♥α(qù)。Datamover在傳遞過程中解決遇 •到(dào)的(de)一(yī)切大(d $à)小(xiǎo)故障,諸如(rú)網絡中斷,存儲設備達到(dà↓£o)上(shàng)限等問(wèn)題。

3.6、驗證與授權

openBIS采用(yòng)基于插件(jiàn)的(de)機(jī)​€>制(zhì)用(yòng)于用(yòng)戶驗證,可(kě)與LDAΩσP(如(rú)微(wēi)軟Active Dicrectory),Crowd✔‍∑φ等身(shēn)份識别系統以及簡單的(de)₹Ω→文(wén)件(jiàn)方法進行(xíng)集成。系統采用γ★₹(yòng)分(fēn)組和(hé)角色的(dφ∑ ♥e)授權機(jī)制(zhì),解決特地(dì)用(y$​òng)戶能(néng)夠看(kàn)到(dào‌™ ↓)哪些(xiē)數(shù)據以及能(néng)夠進​≠§行(xíng)哪些(xiē)操作(zuò)≠÷π‍的(de)問(wèn)題。

四、系統的(de)功能(néng)模塊

OpenBIS的(de)核心功能(néng)包括δ¥♣數(shù)據和(hé)元數(shù)據的(de)管理(lǐ),數(shù ‌→♥)據檢索,數(shù)據共享,數(shù)據導入導出♥$←,與其他(tā)系統的(de)接口。這(zhè)些(​←xiē)基礎功能(néng)都(dōu)已經相(xiàng)當穩定,并可(kě>≠)供下(xià)載,對(duì)于生(shēng)物(w™​ù)學家(jiā)來(lái)說(shuō)可(kě₩↕)謂是(shì)開(kāi)箱即用(yòng)。如(rú)果想要(yào)'✘≠把openBIS作(zuò)為(wèi)一(yī)個(gè​÷×)新的(de)系統整合到(dào)現(x‍§≤©iàn)有(yǒu)的(de)工(gōng)作(zuò§γ&✘)流程中則需要(yào)一(yī)定程度的(de)定制(zhì)€​化(huà)開(kāi)發,并可(kě)在此基礎之上(shàng)添加額外(β≥Ω wài)的(de)功能(néng),如(rú)可×&(kě)視(shì)化(huà),數(shù)據的(de)終端發布,定制(®φγzhì)化(huà)的(de)查詢設計(jì)等等。如(rú)果單位上(shà≥¶ng)配備有(yǒu)經驗豐富的(de)開(kāi‍β)發人(rén)員(yuán),包括生(×♠↔↕shēng)物(wù)信息學研究人(rén)員(yuán),加上(shàng)<∑ ∞與實驗研究人(rén)員(yuán)相(xiàng)互配合,我們♠∏φ可(kě)以将自(zì)己開(kāi)發的(de)一(yī)α≤些(xiē)特色化(huà)的(de)程序與oλ$♦<penBIS進行(xíng)無縫整合從(cóng)而開(kāi)發出十✘<分(fēn)強大(dà)的(de)應用(y♦↔↑òng)。這(zhè)樣就(jiù)能(néng)更加緊≥∏密地(dì)貼合用(yòng)戶的(de)實際需求。畢竟系✔φ統是(shì)開(kāi)源的(de), 我們甚至可(kě)以直接修改源碼®×對(duì)系統進行(xíng)個(gè)性化$ε ∏(huà)的(de)改造。

4.1、數(shù)據與元數(shù)據管理(lǐ)

如(rú)前文(wén)所述,系統采用(yòng)層級式結構組織數(shù)↑↕↔據和(hé)元數(shù)據。以數(shù)據空™≥¶✘(kōng)間(jiān)為(wèi)基礎進行(xíng)授權。‌•∏♦一(yī)般而言,在系統中會(huì)為(wèi)不(b≠$ù)同的(de)研究小(xiǎo)組創建不(<✘∑∞bù)同的(de)數(shù)據空(kōng)​✔"間(jiān)。數(shù)據空(kōng)間(jiān)下(xià)αδ→Ω以項目,實驗,樣品、數(shù)據集組織數(shù)據。系統可(kě)以基于¶γ訪問(wèn)的(de)需要(yào)設置觀察人(r₩≠∏✘én)員(yuán)(對(duì)數(shù)據隻讀(dú)),一(yεε£βī)般用(yòng)戶(添加或編輯對(duì)象)、并能(nδ→π©éng)以組和(hé)角色進行(xíng)統一(yī)授權。在數(∑‍‌σshù)據發布環節上(shàng),研究人(rén)員(yuán)可(k∏±ě)以非常方便地(dì)改變其所擁有(yǒu)數(shù)據的(de)權限設置≠♥,從(cóng)而使其對(duì)外(wài)公布。π →openBIS為(wèi)分(fēn)析結果提供優良的↓₩σ≠(de)溯源性。一(yī)個(gè)新的("‍✘♦de)數(shù)據集創建會(huì)分φ∑(fēn)配一(yī)個(gè)唯一(yī)的(de)标識>₽号并且不(bù)能(néng)再作(zuò)改變。如(rú)果≥‌¥數(shù)據由一(yī)個(gè)或多(duō)個(gè)數(shù‍₹₩)據集衍生(shēng)而來(lái),系統會(huì)創建一(yī)個(gè∑♦)新的(de)子(zǐ)數(shù)據集,并将該數(sh&‌ù)據集歸屬到(dào)其來(lái)源數(shù)據集。

獨立于某種專門(mén)的(de)數(shù)據格式和(hé)存儲方式™λ,無論是(shì)儀器(qì)原始數(shù)據還(hái)是(shì±♣®↓)數(shù)據分(fēn)析管路(lù)所提交的(d₩εε>e)數(shù)據結果,都(dōu)可(kě)以直接存儲在openBI¥">S 中而不(bù)需要(yào)對(duì)格式進行(xíng)轉化(hu$↓€✔à)或其他(tā)改變。如(rú)果需要(yào)其他(↑βtā)的(de)數(shù)據格式和(hé)存儲方式,也(yě× )可(kě)以通(tōng)過數(shù)據轉換✔ε←工(gōng)具自(zì)動完成。一(yī)般建議(yì)用(yòng)戶為≤→♦≥(wèi)數(shù)據的(de)新格式單獨創建一(yī)個(λ♣gè)新的(de)數(shù)據集,并将同樣一(yī)份數(shù↔ ↕)據的(de)不(bù)同格式放(fàng)在一(yī)個(gè)數(shùπ™±)據集容器(qì)中。為(wèi)了(le)使得(de)數(shù)據集♣÷容器(qì)對(duì)用(yòng)戶透明(míng),openBIS會(α♣≤∏huì)顯示其文(wén)件(jiàn)系統視(shì)圖,顯示↕δ§ 包含在該數(shù)據容器(qì)中的(de)所有(€™yǒu)文(wén)件(jiàn)。

4.2數(shù)據檢索、導出和(hé)分(fēn)享

大(dà)規模數(shù)據的(de)導出采用(yòng)CIF♦'EX。數(shù)據集檢索基于數(shù)據集識别碼、數(shù)據集類型(δ€λ↑如(rú)原始數(shù)據,蛋白(bái)結果數(shù)據)、文λ✘(wén)件(jiàn)類型(mzXML,protXML)以及其他(tā)↕¶與數(shù)據集、樣品、實驗相(xiàng)關的(de)元數(shù)β ¥據(例如(rú)數(shù)據轉換軟件(jiàn)的(de)名稱)。結★®÷∑合這(zhè)些(xiē)元數(shù)據可(k&↔ ě)以進行(xíng)常規的(de)邏輯篩選操作(zu÷✔♠λò),例如(rú)字符串的(de)比較,數(sλ♣hù)值的(de)範圍限定等,最終選擇的(d♣ ¥e)數(shù)據可(kě)以方便地(dì)通(t•‍¶ōng)過電(diàn)子(zǐ)表格導出。如(rú)果查詢結果涉及大(dàα ®)規模數(shù)據,這(zhè)在組學研究中經常會(huì)碰到(dào),‌δ∑¶此時(shí)系統将會(huì)自(zì)動重定向到(dào)CIF∏≤♥EX進行(xíng)導出,openBIS通(tōng)過這(z >₽≥hè)種方法能(néng)夠用(yòng)來(lái)分↑←♠(fēn)享數(shù)據,例如(rú)為(wèi)下(xià)遊的(de‍γ)數(shù)學建模人(rén)員(yuán)提供數≈‍♠ (shù)據。

4.3、數(shù)據導入方式

對(duì)于涉及數(shù)百M到(dào)數(shù)個(gè)G大( π₩dà)小(xiǎo)的(de)蛋白(bái)質質譜數(shù)據來(γ£αlái)說(shuō),數(shù)據如(rú)何進入系統中集中管 δ£&理(lǐ)是(shì)個(gè)比較關鍵的(de)問≤>♣(wèn)題。根據不(bù)同的(de)使用(φΩ<yòng)需要(yào),數(shù)據上(s∏εhàng)傳到(dào)openBIS中采用(yòn​"g)三種不(bù)同的(de)方式:Dropbox,網頁上( ∏shàng)直接上(shàng)傳,通(tōng∏™δ∏)過遠(yuǎn)端API自(zì)定義程≠δ☆序上(shàng)傳。

第一(yī)種方式是(shì)采用(yòng)所謂的(de)dropbox ★<,所謂Dropbox實際上(shàng)是(shì)位于本地(dì)文(wén)♠₹∞件(jiàn)系統或文(wén)件(jià←£n)服務器(qì)上(shàng)的(de)文(wén)件(j• ‍λiàn)存放(fàng)目錄。DSS監視(shì)該目錄中的(de)→÷φ寫入情況。如(rú)果發現(xiàn)新的(de)數(sδ≤≥₩hù)據,例如(rú)新建了(le)某個(gè)文(w★↕σén)件(jiàn)或文(wén)件(jiàn)夾,系π™統就(jiù)會(huì)啓用(yòng)為(wèi)該dropbox配Ω¥≤置的(de)ETL(提取、轉換、上(shàng)載)流程,使得(de)該新産生 ≠(shēng)的(de)數(shù)據集能(néng)為(wèi)≥↓openBIS系統所接受,在此過程中并将其與‌→适當的(de)對(duì)象關聯(例如(rú)某個(gè)‌'樣品),提取相(xiàng)關元數(shù)據用(yòng)于檢φ§↕索,并将這(zhè)些(xiē)數(shù)據集轉換為(wè↔δ€¶i)預定義的(de)格式,以便與諸如(rú)計(jì)算♥®(suàn)模拟之類的(de)其他(tā)工(gōng)具集♠Ω成。ETL過程在openBIS系統中并非是(shì‍Ω ✔)固定的(de),而是(shì)設計(jì)為(wèi)一(yī)組ε₩ 可(kě)配置的(de)插件(jiàn),在對(duì)新産生(shēng)≈"  的(de)數(shù)據如(rú)何處理φ÷(lǐ)的(de)問(wèn)題上(shàng)具有(yǒβ$§u)很(hěn)高(gāo)的(de)可(k•&λě)配置性和(hé)自(zì)由度。一(yī)般而言€>₩,在數(shù)據存儲容量夠大(dà)的(de)前提下←‍♠(xià),建議(yì)ETL處理(lǐ)的(de)同時(shí)保留未經處理‍∞±€(lǐ)的(de)原始數(shù)據。如(rú)果使用(yòng)Datamε☆over作(zuò)為(wèi)協處理(lǐ)服務器(qì®₩),dropbox可(kě)擴展為(wèi)連接各個(gè)不(bù)同∞≥實驗室的(de)橋梁,從(cóng)而實現( €δ→xiàn)跨單位合作(zuò)。在長(cháng)期需要(yào)大(dà≠×↓)量交換數(shù)據的(de)系統之間(jiān),dropbox可(₽☆✘kě)以充當一(yī)種非常有(yǒu)效的(de)”松散​•✘耦合”的(de)接口。

第二種方式采用(yòng)網頁直接上(shàn₩©‍g)傳,基于web的(de)上(shàng)傳工♠ ​(gōng)具可(kě)以從(cóng)web上(shàng)觸發。對≈≈(duì)于實際的(de)數(shù)據上(shàng)傳步驟,會¶↔↔(huì)将用(yòng)戶重定向到(d≠±☆$ào)Data set uploader或 ☆者重定向到(dào)CIEFX服務器(qì)。

第三種方式是(shì)API進行(xíng)定制(zhì)化(huà)程序↑‌←開(kāi)發,系統提供的(de)遠(yuǎn)端API是(shì)一(yī)組Java類,提供基于€↓&流的(de)編程模式用(yòng)于上(shàng)傳任何構₹>成數(shù)據集的(de)文(wén)件(jiàn)集合。與₽ π£dropbox相(xiàng)比,其允許與使用(yòng)它的Ω♣α(de)程序更緊密的(de)集成,提供及時(shí)的(de)反饋,支持任何允λ "許HTTPS傳輸的(de)WAN網絡。由于使用♣₩(yòng)Java作(zuò)為(wèi)編程環境在某 ★✔些(xiē)情況下(xià)受到(dào)限制(zhì),openB¥&&IS還(hái)包含了(le)命令行(xíng)工(>✔gōng)具用(yòng)于調用(yòng)遠(yuǎn)端API調δ<用(yòng)實現(xiàn)數(shù)據‌✔λ¥的(de)上(shàng)傳。該工(gōng)具已經用(yòng)來(lái÷✔™∏)實現(xiàn)LabView 和(hé)其他(tā)基于腳本的(de​♦↑)數(shù)據源與openBIS 的(de)≤€'✔整合。

4.4、用(yòng)戶端接入

第一(yī)種方式是(shì)圖形化(huà)的(de)界面,适♠←>用(yòng)于普通(tōng)用(yò§★ng)戶。 

第二種是(shì)命令行(xíng)界面,↑Ω♦适用(yòng)于專家(jiā)級用(y→ òng)戶,用(yòng)在腳本編程環境中實現(xiànλ♥)操作(zuò)的(de)自(zì)動化∏±(huà),方便與各種自(zì)動化(huà)的<<"₹(de)數(shù)據處理(lǐ)管線整合,或者整合進定制(zhì)化(hu÷★Ωφà)的(de)用(yòng)戶界面,尤其是↕←(shì)在API不(bù)能(néng)使用(©≥Ω≤yòng)的(de)情況下(xià)。

第三種是(shì)API調用(yòng)。該方法提供了(le)兩種方式,&"Java service和(hé)JSON-PRS web Ser÷✘¥×vice。Java 服務為(wèi)開(kāi)開(kāi)發者÷✔提供類和(hé)方法用(yòng)于将O¶↕penBIS整合進其他(tā)應用(yòng)®₽λ程序,通(tōng)過使用(yòng)這(zh≠•è)種API ,開(kāi)發者可(kě)以很(hěn)方便無縫地(d¶"ì)将openBIS整合進其自(zì)己開(kāi)發的(de₹ λ>)應用(yòng)程序,如(rú)工(gōng)作(zuò)流和(hé)可♦<≈₹(kě)視(shì)化(huà)工(gōng)具。這(zh γè)些(xiē)API盡管是(shì)用(yò☆φα♦ng)Java實現(xiàn)的(de),但(×Ω✘dàn)并不(bù)僅限于用(yòng)在基于αγ ₹Java的(de)應用(yòng)程序。'↔ 許多(duō)流行(xíng)的(de)數(shù)據處理(lǐ)環境,如(r±€∞'ú)Matlab,R都(dōu)可(kě)以調用(yòng)Java API↕♥ 的(de)功能(néng)。事(shì)實上(shàng)‌  系統專門(mén)為(wèi)MatLab提供了(le)其API的(de)變體(tǐ)-HCS-API,用(yòπ€ng)于支持Matlab的(de)語言特性。J'¶‌SON-PRC Web Service雖然沒有(y&±ǒu)Java Service那(nà)麽高(gāo)級,在所有(yǒu"♠)的(de)支持Web标準的(de)計(jì)算(suàn)機(jī)環境₩£中也(yě)都(dōu)能(néng)應用(yòng)。≈>特别是(shì)任何的(de)WEB程序對(d♠ ®×uì)openBIS 後端的(de)使用(yòng)。

4.5、數(shù)據可(kě)視(shì)化↑✘(huà)與發布

openBIS中的(de)數(shù)據可(kě)視(shì)化(huà)往±£¶ 往要(yào)借助整合其他(tā)的(de)軟件(jiàn)。一(yī₩​§)個(gè)簡單的(de)例子(zǐ)就(↑±¶jiù)是(shì)采用(yòng)數(shù)據報(bào)告插件(j‍'$iàn)用(yòng)于展示HTML文(wén)件≈™(jiàn),例如(rú)Illumina HiSeq2000測序儀軟件(jφ¥iàn)産生(shēng)的(de)數(shù)據。更加複雜(zá)的( ​de)展示工(gōng)具,如(rú)孔闆視(s"↓hì)圖顯示多(duō)位滴定闆,特征向 $量的(de)圖形化(huà)展示,用(yòng)于高(gāo)內(nèi)涵★λφ篩選和(hé)蛋白(bái)質組學的(de)蛋白(bái)質視(shì)<λ€圖(展示蛋白(bái)的(de)定性和(hé)定量數(shù)據π∞→)。或者整合現(xiàn)有(yǒu)的(de)視(shì)圖,如(r  '♣ú)使用(yòng)API實現(xiàn)圖像強♦♠φ度-尺度再調節工(gōng)具。

就(jiù)數(shù)據的(de)終端發布而言,系統中數(s≤λ‌hù)據的(de)簡單視(shì)圖可(k₩↓®βě)以通(tōng)過Web界面的(de)配置快(ασkuài)速實現(xiàn)。從(cóng)系統的(de)應用↑Ω×(yòng)經驗來(lái)看(kàn),基于openBIS框架可​βσ(kě)以實現(xiàn)滿足各種需要(yào)的(de)任何數(shù)據類£↓型的(de)視(shì)圖。

五、總結

openBIS是(shì)一(yī)款開(kāi)源的(de),基于We↓✘b的(de)用(yòng)于管理(lǐ)大(dà)規模生(shēn∞¥g)物(wù)學研究數(shù)據的(de)軟件§♣(jiàn),其具有(yǒu)異構、松散耦合、分(fēn)布式等多☆™(duō)重特性,易于與各種軟件(jiàn)工(gōn↕<g)具進行(xíng)整合。系統采用(yòng)項目化₹≥(huà)的(de)結構用(yòng)于管理(λ♣lǐ)實驗數(shù)據,處理(lǐ)用(yòng)₩γ∞•戶身(shēn)份認證和(hé)授權,以及數(shù)據的(de)導入和(×πhé)導出,數(shù)據溯源,支持數(shù♥‍)據格式的(de)遷移和(hé)數(shù)據的(de)歸檔。

 

下(xià)一(yī)篇文(wén)章(zhāng)中,我們∑≥✘将介紹openBIS在下(xià)一(yī)代的(de)基因測序,高(gā ♥"∑o)內(nèi)涵篩選,定量圖像,蛋白(bái)質組學,代謝(xiè)™γ≥組學方面的(de)應用(yòng)。