基于關聯規則的醫生診療數據挖掘系統的實現
ARFDW 系統架構模型如圖1 所示。首先,對被挖掘對象進行充分分析,確定挖掘主題及數據來源,通過挖掘主題配置工具創建挖掘主題及關聯維度,并生成相應數據庫表及數據記錄映射對象;其次,通過數據源配置工具對等待抽取的數據源數據的相關連接格式參數進行配置,數據源配置好后系統會將輸入的數據通過數據對象化工具轉換為統一的XML 描述數據格式,并根據映射在基礎數據庫中創建數據保存表記錄;再次,通過轉換任務元數據配置工具生成數據轉換規則及對應目標主題,該部分實現需要用到功能節點以及設定任務中各個功能節點的執行流程。配置好的任務將在任務列表中列出,可以手動執行,也可以通過總控調度配置自動執行。數據經過ETL處理后會加載到挖掘庫對應的主題中去。最后,通過基于關聯規則的挖掘算法對目標數據進行挖掘,并將條件的規則保存到規則庫。

2.3 ARFDW框架實現
整個系統框架結構按照分層設計、實現。現對關鍵層的實現進行逐一描述。
數據持久層采用Hibernate,負責存儲、更新、刪除數據庫記錄等。Hibernate是一個用來處理O/R Mapping的持久層框架。技術本質上是一個提供數據庫服務的中間件,該中間件屏蔽了不同數據庫之間的差異。它的工作原理是通過文件把值對象和數據庫表之間建立起一個映射關系,這樣,只需要通過操作這些值對象和Hibernate提供的一些基本類,就可以達到使用數據庫的目的。
Hibernate 使用數據庫和配置信息來為應用程序提供持久化服務(以及持久的對象)。在這里,創建了接口IdaoSupport,該接口定義了所有對數據庫進行的原子操作,DaoSupportHibernate3Imp 是其實現類,該類繼承了HibernateDaoSupport類,通過調用該類提供的方法來完成對數據庫的操作。
業務邏輯層采用Spring.Spring框架是一個分層架構,它的核心提供了一個管理業務對象以及它們之間依賴關系的方法。例如,應用控制反轉(IOC),它可以特定一個數據訪問對象(DAO)去依賴于某一個數據源。
同時,它允許開發者實現接口并在XML 文件中去定義其實現類。同時為了避免EJB的高度侵入性,實現無侵入性的目標,Spring 大量引入了JAVA 的Reflection 機制,通過動態調用的方式避免硬編碼方式的約束,并在此基礎上建立了其核心組件BeanFactory,以此作為其依賴注入機制的實現基礎。
表示層采用基于MVC模式的Struts框架。MVC(模型-視圖-控制)設計模式將WEB層分為三類對象:代表數據的模型(Model)對象,顯示模型的視圖(View)對象以及響應用戶輸入、處理業務流程的控制器(Controller)對象。
整個系統處理流程如下:
(1)當系統第一次啟動時,應用會根據部署描述文件Web.xml指向的applicationContext.xml中定義的內容初始化數據庫連接池、進行O-R Mapping映射、根據IoC實例化業務邏輯類。
(2)操作員登陸時,進行相應的權限驗證,如果驗證通過,則初始化單例對象(InitSingleton),該對象保存了一些全局實例,用戶信息、角色信息、權限信息等。
(3)操作員通過系統界面(JSP)提交業務請求(業務信息保存在FormBean中),并通過struts-config.xml中的描述定位到控制器(Action),業務請求包括:業務編號、當前步驟、執行動作等。
(4)控制器接收用戶請求,將FormBean中的信息傳遞到BO中,同時調用權限驗證模塊(RightControl)進行操作員權限驗證。權限驗證接口判斷當前用戶對于請求的業務是否具有權限(只讀、可寫),將結果反饋給控制器。
(5)如果驗證通過,控制器將根據用戶請求信息,調用系統啟動時實例化的業務邏輯類進行相應業務處理。
(6)業務處理邏輯對象處理特定業務邏輯,當需要CRUD(即Create、Read、Update、Delete)時,會根據appli-cationContext.xml中通過set方法注入的DAO實例,執行相應的CRUD操作。
(7)業務處理完成后,控制器根據返回結果,將用戶頁面導向特定JSP,如果有需要,將返回的結果封裝成FormBean(與用戶界面相對應的JavaBean,其屬性與用戶界面元素相對應)一并返回特定JSP.
3 結語
課題根據目前國內外數據集成工具暴露出的問題,及目前醫生診療數據挖掘的現狀、技術及特點提出了ARFDW 自適應模型框架的概念。該框架使用JAVA語言、對象持久化技術和XML技術構建出跨平臺、多線程并發運行、支持增量數據更新、靈活的數據挖掘系統架構模型,并給出了設計和實現方案。
評論