謝 琛,張?zhí)t,趙新苗,趙 濤
(新疆農(nóng)業(yè)大學 a草業(yè)與環(huán)境科學學院,b計算機與信息工程學院, 新疆 烏魯木齊 830052)
我國是世界馬產(chǎn)業(yè)第二大國,有馬種資源42個,其中新疆維吾爾自治區(qū)有6個,占全國的14.3%。截止到2014年年底,中國的馬匹存欄量為604.33萬匹,疆維吾爾自治區(qū)存欄馬89.4萬匹,占全國的14.79%,是我國馬種資源最為豐富的省區(qū)[1-2]。
隨著社會經(jīng)濟快速發(fā)展,人民生活水平的提高,新疆馬產(chǎn)業(yè)逐步由傳統(tǒng)馬產(chǎn)業(yè)向現(xiàn)代馬產(chǎn)業(yè)發(fā)展,文化品質(zhì)逐年提高,經(jīng)濟效益及發(fā)展前景日益凸顯。新疆馬產(chǎn)業(yè)迎來了前所未有的發(fā)展機遇,賽馬、旅游用馬以及肉用、乳用馬等需求不斷增加[3-6]。但與馬產(chǎn)業(yè)迅猛發(fā)展相反,具有豐富馬病診療經(jīng)驗的獸醫(yī)稀缺,在馬發(fā)病的過程中,往往因為現(xiàn)場缺乏有經(jīng)驗的獸醫(yī)而無法對馬匹進行及時、準確的診治,嚴重阻礙了中國養(yǎng)馬產(chǎn)業(yè)的健康可持續(xù)發(fā)展[7]。因此,馬匹疫病的防控與及時診斷治療對現(xiàn)代化馬產(chǎn)業(yè)的持續(xù)性發(fā)展顯得格外重要。
正確診斷、恰當治療和及時預(yù)防是決定臨床療效的關(guān)鍵,也是本系統(tǒng)數(shù)據(jù)庫開發(fā)的基礎(chǔ)。本系統(tǒng)的數(shù)據(jù)信息資源主要來源自《馬病妙方絕技》《馬病防治》《最新馬病防治》,部分馬病資源數(shù)據(jù)來源于中國知網(wǎng)以及新疆農(nóng)業(yè)大學動物醫(yī)學學院,圖片來源于網(wǎng)絡(luò)。
所采集文本數(shù)據(jù)均通過文本掃描、文本識別、內(nèi)容??薄㈩A(yù)處理等過程后錄入數(shù)據(jù)庫中。圖片數(shù)據(jù)則以文件的形式存儲,使用時通過數(shù)據(jù)庫中存儲的圖片地址去訪問獲取相應(yīng)的圖片。
通過對一些常用的數(shù)據(jù)庫及服務(wù)平臺設(shè)計理論進行深入研究與綜合比較后,采用Web開發(fā)框架和數(shù)據(jù)庫技術(shù),來實現(xiàn)馬病數(shù)據(jù)庫建設(shè)及服務(wù)平臺研發(fā),技術(shù)路線如圖1所示。
圖1 馬病數(shù)據(jù)庫系統(tǒng)的技術(shù)路線
本系統(tǒng)主要分為馬病基本信息、馬病治療方案、馬病預(yù)防方案3個部分。其中,馬病基本信息板塊包含每種馬病的疾病名稱、病狀照片、辯證要點等信息。馬病治療方案板塊,則是對于不同馬病給出相關(guān)馬病的治療方案。為了恰當治療,分別介紹了內(nèi)治、外治與針灸等經(jīng)典方法,在基層缺少臨床獸醫(yī)的地區(qū)可以通過此治療方案解決在馬病方面的問題。在馬病預(yù)防方案板塊中,系統(tǒng)可根據(jù)馬病名稱,對病因提供有針對性的預(yù)防方案,有效的預(yù)防馬病的發(fā)生。
馬病數(shù)據(jù)庫主要分為前臺、后臺2部分。前臺是用戶界面,主要用于馬病檢索;后臺是由管理員進行維護的數(shù)據(jù)庫管理系統(tǒng),管理員可在后臺進行資源維護管理、數(shù)據(jù)庫維護設(shè)置管理和資源發(fā)布等操作。本系統(tǒng)的建成可為馬病數(shù)據(jù)的錄入提供諸多便利,同時,也非常利于飼養(yǎng)員高效便捷的管理馬各類數(shù)據(jù)。此外,系統(tǒng)具備的備份功能可及時將數(shù)據(jù)庫數(shù)據(jù)進行備份,確保了系統(tǒng)數(shù)據(jù)庫的安全與穩(wěn)定。數(shù)據(jù)庫系統(tǒng)流程圖如圖2。
圖2 馬病數(shù)據(jù)庫系統(tǒng)的設(shè)計流程
馬病數(shù)據(jù)庫為屬性數(shù)據(jù)庫,采用MySQL對屬性數(shù)據(jù)庫中數(shù)據(jù)進行存儲和管理[8-11]。屬性數(shù)據(jù)庫內(nèi)存有病證基本信息字典、病證簡介字典、辯證要點字典、治療方案字典、預(yù)防方案字典、病證圖片地址表等屬性字典,用戶可對這些數(shù)據(jù)進行查詢(表1)。
表1 馬病數(shù)據(jù)庫的組織結(jié)構(gòu)
數(shù)據(jù)庫主界面包含搜索框、馬匹外貌部位圖2部分。功能模塊包括數(shù)據(jù)入庫、數(shù)據(jù)更新、數(shù)據(jù)查詢、數(shù)據(jù)輸出和系統(tǒng)管理5個功能模塊。數(shù)據(jù)入庫模塊具有對采集數(shù)據(jù)入庫的功能,包括病證基本信息字典、病證簡介字典、辯證要點字典、治療方案字典、預(yù)防方案字典、病證圖片地址表等屬性字典。數(shù)據(jù)更新模塊可隨時更新治療方案和預(yù)防方案,詞模塊可實現(xiàn)對屬性數(shù)據(jù)的實時更新,后臺維護人員可根據(jù)需要進行數(shù)據(jù)信息發(fā)布,增加系統(tǒng)的時效性,滿足用戶需求。數(shù)據(jù)查詢模塊為方便不同用戶使用,提供了包括按關(guān)鍵字查詢、按病因查詢、按發(fā)病部分查詢等3種查詢方式。數(shù)據(jù)輸出模塊可根據(jù)不同的查詢模式輸出相應(yīng)的查詢結(jié)果,包括馬病基本信息、馬病治療方案、馬病預(yù)防方案與馬病圖片等。系統(tǒng)管理主要實現(xiàn)對數(shù)據(jù)庫系統(tǒng)的管理功能,如對馬病數(shù)據(jù)維護(增、刪、改)、用戶權(quán)限管理、數(shù)據(jù)信息發(fā)布等。
該系統(tǒng)總體架構(gòu)采用B/S3層架構(gòu)模式[12-14],具有瀏覽器、服務(wù)器、數(shù)據(jù)庫3層。系統(tǒng)采用Django開源Web應(yīng)用框架[15-17],該框架采用軟件設(shè)計模式為:由模型、模板和視圖3部分組成的模型—視圖—模板(MVT)模式(圖3)。其中,模型部分是數(shù)據(jù)存儲層,用于處理與數(shù)據(jù)相關(guān)的所有事務(wù),例如如何存取、如何驗證有效性、包含哪些行為以及數(shù)據(jù)之間的關(guān)系等。模板部分是表現(xiàn)層,用于處理與表現(xiàn)相關(guān)的決定,例如如何在頁面或其他類型文檔中進行顯示。視圖部分為業(yè)務(wù)邏輯層,用于存取模型及調(diào)取恰當模板的相關(guān)邏輯,是模型與模板之間的橋梁。
圖3 馬病數(shù)據(jù)庫系統(tǒng)的架構(gòu)
數(shù)據(jù)庫具有點選、條件查詢、全局查詢3種模式的數(shù)據(jù)查詢操作。點選查詢是對馬匹發(fā)病部位進行查詢。馬的發(fā)病部位分為頭部、頸部、腹部、四肢4大部位,用戶可以根據(jù)自己的需要點選對應(yīng)的發(fā)病部位進行查詢,篩選出相關(guān)的馬病。條件查詢顧名思義,用戶可通過特定條件查詢馬病,如:按病因進行查詢,病因查詢分為內(nèi)科病癥、外科病癥、產(chǎn)科病癥、幼駒病癥、傳染病、寄生蟲病6大類;按臨床各科病證進行查詢,臨床各科病證查詢分為消化系統(tǒng)病證、呼吸系統(tǒng)病證、肢蹄病證、皮膚病證、內(nèi)分泌病證等15小類。用戶還可通過使用系統(tǒng)主頁搜索框進行全局查詢,該類查詢模式適用于各類用戶,即使是不懂馬病的用戶,也可以通過檢索關(guān)鍵字進行相關(guān)馬病的查詢。
本研究基于Web開發(fā)框架和數(shù)據(jù)庫技術(shù),提出了馬病數(shù)據(jù)庫建庫的總體方案和技術(shù)路線,為實現(xiàn)馬病的正確診斷、恰當治療、及時預(yù)防提供了技術(shù)保障,通過對中獸醫(yī)學關(guān)于防治馬病的資料進行整理入庫,為用戶及時、快捷的查詢、確定馬疾病提供了諸多便利,對中國養(yǎng)馬產(chǎn)業(yè)的健康可持續(xù)發(fā)展提供了有力保障。
[1] 新疆維吾爾自治區(qū)畜牧廳. 新疆馬產(chǎn)業(yè)發(fā)展報告[J]. 新疆畜牧業(yè), 2016(9):8-33.
[2] 秦紅麗, 朱明艷. 中國養(yǎng)馬業(yè)現(xiàn)狀[J]. 畜牧獸醫(yī)科技信息, 2013(10):4-5.
[3] 譚小海, 李海, 朱春玲. 試述馬產(chǎn)品的開發(fā)利用[J]. 草食家畜, 2013(2):21-25.
[4] 韓國才. 傳統(tǒng)馬業(yè)與現(xiàn)代馬業(yè)[J]. 中國畜牧雜志, 2004, 40(12):33-35.
[5] 侯文通. 產(chǎn)品養(yǎng)馬學[M]. 楊陵:天則出版社, 1990.
[6] 劉怡然, 婁玉杰. 馬產(chǎn)業(yè)及其轉(zhuǎn)型優(yōu)勢[J]. 家畜生態(tài)學報, 2013, 34(10):78-81.
[7] 翟志南, 王洪斌, 秦宏宇,等. 馬消化系統(tǒng)疾病輔助診療專家系統(tǒng)的設(shè)計與實現(xiàn)[J]. 中國獸醫(yī)雜志, 2014, 50(9):100-102.
[8] 楊凱. 淺談基于MySQL數(shù)據(jù)庫結(jié)構(gòu)設(shè)計[J]. 科技展望, 2015, 25(36):104-105.
[9] 胡敏. Web系統(tǒng)下提高MySQL數(shù)據(jù)庫安全性的研究與實現(xiàn)[D]. 北京:北京郵電大學, 2015.
[10] 王芳. 網(wǎng)站開發(fā)中數(shù)據(jù)庫的管理者:MySQL[J]. 電子技術(shù)與軟件工程, 2014(16):214.
[11] 劉建宏. MySQL數(shù)據(jù)庫優(yōu)化與集群[J]. 數(shù)字通信世界, 2017(7):47.
[12] 王紅梅. C/S模式與B/S模式相結(jié)合的數(shù)據(jù)庫系統(tǒng)技術(shù)研究[J]. 信息安全與技術(shù), 2011(11):41-44.
[13] 陶國喜. C/S模式與B/S模式探討[J]. 企業(yè)家天地下半月刊(理論版), 2009(5):249.
[14] 鄭雷雷, 宋麗華, 郭銳,等. B/S架構(gòu)軟件的安全性測試研究[J]. 計算機技術(shù)與發(fā)展, 2012, 22(1):221-224.
[15] 劉志凱, 張?zhí)t. Django框架在web開發(fā)中的應(yīng)用[J]. 農(nóng)業(yè)網(wǎng)絡(luò)信息, 2015(2):51-52.
[16] 劉班. 基于Django快速開發(fā)Web應(yīng)用[J]. 電腦知識與技術(shù), 2009, 5(7):1616-1618.
[17] 齊金剛, 李滔, 李晉軍. Django框架Web數(shù)據(jù)查詢分頁技術(shù)研究[J]. 電子設(shè)計工程, 2014, 22(5):33-37.