周 琳,王 飛,趙浩宇
(陸軍軍醫大學第一附屬醫院醫學大數據與人工智能中心,重慶 400038)
我國醫療數據資源豐富,尤其是大型三甲綜合醫院,有著幾十年的醫療數據沉淀。隨著醫院信息化的發展,醫院對數據的管理能力也有了一定的提高。但受困于數據架構的局限,醫療數據質量參差不齊,大量數據未被有效利用。傳統數據庫在數據整合、數據管理、數據治理、數據利用等方面的使用效率不高,面對臨床、科研、管理、患者自身持續增長的業務需求得不到及時滿足,難以用數據支撐臨床科室的科研創新研究。如何建設一套新的平臺架構,充分利用現有醫療數據,通過對數據的抽取、整合和治理,解決當前數據管理的問題,提高醫療領域的科研創新能力,滿足醫療模式轉型的應用需求成為近年來醫院信息部門研究的一個重要方向[1]。
本院醫療數據具有數據規模大、數據類型繁多、數據流轉速度極快、價值密度較低四大特性。由于臨床病歷書寫的質量參差不齊、各系統數據結構類型存在差異、數據整合難度大、數據庫在數據處理(特別是復雜組合條件下的查詢)方面執行效率太低、數據治理更是無從談起。數據使用效率一直不高。如何提升數據質量及數據使用效率,為醫院疾病診斷相關分組(diagnosis related groups,DRG)開展和臨床科研服務成為本院當前信息化重點建設的內容之一[2]。
本院現有數據平臺采用的是傳統關系數據庫,其建立在關系模型基礎上,借助于集合代數等數學概念和方法處理數據庫中的數據,在實時性、一致性,以及對結構化數據處理等方面均具有自身優勢。本院發展信息化較早,在關系數據庫建設方面具有一定經驗。近年來,隨著大數據技術不斷成熟,使用領域越來越廣,利用大數據進行醫學方面的研究也更加深入。基于Hadoop平臺下的數據庫采用shared-nothing架構,每個節點均有自己的操作系統、數據庫和硬件資源,節點之間通過網絡來通信。該平臺能整合不同類型數據,并可以對數據進行集中清洗和治理,通過HBase組件支持對實時數據的讀寫處理,通過Hive組件構建數據倉庫,舍棄了索引、關系以及事務處理等關系型數據庫的特性,在數據查詢和處理方面效率均有了極大的提升[3]。通過比較,本院決定從創新技術入手,選擇建設基于Hadoop架構的大數據平臺下的數據庫提升醫院數據質量和處理能力。關系數據庫和大數據平臺數據庫二者之間的主要區別,見表1。

表1 RDBMS和Hadoop技術對比分析
大數據時代醫院對數據的利用已從簡單的報表分析走向可預測分析階段,及時、準確的數據是進行數據加工和分析的基礎,想要利用好醫院的數據進行基于大數據平臺的系統開發,為科學預測和政策制定提供技術支持[4],數據的有效同步是平臺實施的關鍵步驟。本院主要采用ORACLE和SQL Server數據庫自帶的數據同步功能來完成平臺數據的實時同步。對于ORACLE數據庫,采用OGG方式進行增量數據的同步。其中Extract 進程運行在源系統上,負責捕獲數據更改。Replicat運行在目標計算機上,負責將更改應用于目標數據庫。而源系統和目標系統之間則主要以Trail和Flat文件來進行數據傳輸[4]。對于SQL SERVER數據庫,采用CDC方式,基于日志抓取,識別出變化的數據,獲取增量數據。架構中前置機部署在醫院內網,通過抽取工具sqoop抽取增量數據到hive庫,再通過腳本合并增量數據為全量。業務庫到前置庫之間,通過捕獲日志進程抓取變更日志,并將變更日志同步到前置庫,通過前置庫的解析日志功能,解析出數據的變更。平臺整體架構見圖1。

圖1 大數據平臺架構示意圖
本院經過20多年的數字化醫院建設積累了海量的醫療數據,但醫院信息系統(HIS)、實驗室信息系統(LIS)、影像歸檔和通信系統(PACS)、放射科信息系統(RIS)、電子病歷系統(EMRS)、移動醫護、急診、心電、手術麻醉、體檢等各系統數據分散存放,結構互異,整合難度較大。通過基于Hadoop的大數據平臺建設對當前數據進行有效整合和管理,解決當前數據存在的問題。
1.4.1異構數據整合
(1)醫院的醫療系統中沉淀著大量基礎數據,這些數據產生于不同歷史時期,來源也不同,標準也不統一,本院也經歷過新老藥品切換、物價調整、疾病編碼版本升級等基礎數據變動的情況;(2)醫院內系統眾多,各系統數據庫數據類型各異,有DB結構化數據、XML文檔數據、DICOM影像數據、動態影像數據、自由文本文檔數據、PDF文檔數據等;(3)數據來源多種多樣,有HIS基礎診療數據、EMRS電子病歷數據、PACS放射類檢查數據、LIS檢驗數據、康復管理數據、重癥監護數據、病理影像數據等;(4)數據存儲方式多樣,有在線數據、近線數據、歷史歸檔數據等。如此多的“異源異構”數據給數據的匯聚與利用帶來很大難度[5]。大數據平臺能通過抽取、轉換、裝載(ETL)工具,利用數據庫OGG和CDC功能將異構異源的數據抽取到大數據平臺,將數據文件切分成若干個塊,存儲到不同節點上,最后以textfile格式進行存儲。通過這一步的數據抽取、整合和處理,將醫院所有數據進行了有效匯聚。如信息部門以前為臨床科室查詢數據時需要在多個系統及數據庫里查詢數據,現在只需要在一個平臺輸入條件即可查詢,避免了以前多的數據庫查詢帶來的麻煩,也不會占用醫院在用生產庫資源,提高了數據使用效率和數據使用安全[6]。
1.4.2數據結構化處理
醫院除數據庫存儲的是結構化數據外,其他很多均為非結構化數據,類型五花八門,但只有轉換為結構化數據才便于分析,而且結構化數據字段中依然存在大量需要進一步語義識別的自由文本數據;在EMRS中醫師的電子病歷文書記錄蘊含了大量的有價值信息,一般都是以自由文本或半結構化數據存儲;影像等系統則存儲的是DICOM格式的數據。利用平臺處理非結構化數據首先要將數據進行抽取匯聚,再利用平臺技術對數據進行文本的詞匯切分、詞性分析、歧義處理等實體提取,然后對詞匯相關度、句子相關度、篇章相關度、句法分析進行語義處理,最后建立向量空間模型、主題模型[7]。
1.4.3數據質量提升
數據質量問題是目前數據處理過程中遇到的普遍現象。各分系統存在數據標準不一、數據內涵錯誤等問題;EMRS中醫師病歷書寫未按照ICD10標準,每名醫師均有自己的書寫習慣,如診斷名稱不統一、相同疾病描述有差異等;口話太多導致的垃圾數據;部分字段數據缺失不完整等都是造成醫院數據質量不高的原因。提升數據質量除規范醫療質量管理外,還必須借助大數據平臺對數據進行清洗和治理,在此基礎上進行精細化、細粒度數據分析,如結構化處理、字段切詞、歸一化處理等,以此提升醫療數據質量[8]。如當在數據庫搜索診斷名稱為“腦梗死”的疾病,但不同醫師在病歷書寫時會將這種診斷名稱寫成如“腦梗死、出血性腦梗死、腦干梗死、大腦動脈栓塞引起的腦梗死、大腦動脈血栓形成引起的腦梗死”等,可能都是描述的這一疾病。如在以前只能在數據庫里通過模糊查詢一個一個搜索,借助現有平臺只需要輸入一個“腦梗死”,系統會將以上進行了結構化和歸一化處理的相關診斷名稱默認為是同一個診斷名稱,并返回所有數據,這樣既方便了信息部門查詢數據,也保障了臨床科研數據質量的準確。
1.4.4數據分析效率提升
本院傳統的關系數據庫面對超大表、多表數據分析時存在較大性能瓶頸,執行效率低,返回結果慢,而且在執行數據查詢時還會占用醫院在用生產庫資源,影響醫院業務系統運行。特別是隨著醫院在大數據及人工智能領域的攝入研究,以后深度學習等人工智能算法對圖形處理器(GPU)處理要求越來越高,當前數據分析已經難以滿足醫院使用需求[9]。新建大數據平臺采用分布式存儲和分布式計算,通過內部的資源管理和調度系統合理分配資源,結合MapReduce分布式離線計算框架,可以對數據進行多進程同步運算,提升數據分析效率。如以前信息部門在為臨床科室提供科研數據服務時,當面對多條件的復雜組合查詢時由于涉及的業務數據表太多,執行效率很低,不僅會占用數據庫資源,返回數據結果也很慢,如果再遇到時間區間跨度達5年以上的、歷史庫和在用生產庫數據沒有整合更加難以完成。借助大數據平臺只需要通過添加納排條件,以分布式計算為基礎,即可實現秒級查詢和數據展現。
高質量數據來源于數據收集,是數據設計及數據分析、評估、修正等環節強有力的保證[5]。通過抽取數據將不同類型不同來源的數據進行了有效整合,不重復也不會遺漏,最大限度地保持整個醫療數據的完整性。
醫療過程中存在著大量專業術語和專業定義,但因為種種原因,醫院醫療系統及醫療工作者書寫的病歷中卻存在大量的非標準化數據,數據表達方式隨意性較大。通過平臺對數據的清洗和治理,最大限度地保障了醫療數據的規范性和標準化。
平臺能夠通過數據清洗,結構化、歸一化處理,詞匯切分,語義處理等,將原來非標準的、不完整的數據進行規范化,提升了醫院醫療數據質量,完善了醫院醫療質量管理。
通過大數據平臺處理和匯聚的醫療數據并非只是為了科研、教學或管理等場景使用,更多地是為后續醫院在智能化方面的建設打下基礎。首先需要把這些散落的數據整合成為標準的患者診療模型,完成診療模型構建和數據處理,再根據這些整合數據,通過人工智能學習,構建智能輔診系統,預測出患者下一步的健康變化,自動推薦診斷和治療方案,實現更大的醫療數據生態,催生更多醫學領域的智能化應用落地[10]。
綜上所述,我國許多大型醫院經過幾十年信息化發展,積累了大量的臨床診療數據,這些數據以前在管理和使用上還不夠規范和完善,隨著大數據技術的不斷發展成熟,醫院構建大數據平臺能夠將這些數據進行有效匯聚和管理,提升醫院診療數據質量,為醫院臨床科研的支撐、診療模式的轉型和醫療領域的智能化應用帶來機遇和動力。由于醫院在大數據和人工智能領域的建設起步較晚,相關技術人員較少,經驗不足,在大數據建設和管理上還會遇到很多新的難點和痛點。只有通過對新技術新業務的不斷學習,掌握更為有效的數據采集、清洗、加工工具和方法,在實踐中不斷摸索和發展,才能建設好醫療科研大數據平臺,為醫院創新發展打下堅實的基礎[11]。