打開(kāi)手機(jī)掃描二維碼
即可在手機(jī)端查看
新一代醫(yī)療大數(shù)據(jù)處理平臺(tái)“數(shù)據(jù)中臺(tái)”是醫(yī)療行業(yè)數(shù)字化轉(zhuǎn)型的核心基礎(chǔ)設(shè)施,旨在通過(guò)統(tǒng)一的數(shù)據(jù)集成、治理和應(yīng)用能力,打破傳統(tǒng)數(shù)據(jù)孤島,實(shí)現(xiàn)醫(yī)療數(shù)據(jù)的全生命周期管理。其核心目標(biāo)是通過(guò)標(biāo)準(zhǔn)化、智能化的技術(shù)手段,構(gòu)建醫(yī)療數(shù)據(jù)的采集、存儲(chǔ)、治理、分析和服務(wù)的閉環(huán),支撐智慧醫(yī)院、醫(yī)保、疾控等場(chǎng)景的智能化應(yīng)用
架構(gòu)說(shuō)明
基礎(chǔ)設(shè)施:包括內(nèi)容是基于云原生的容器管理,包括數(shù)據(jù)存儲(chǔ)、計(jì)算引擎、同步工具、定時(shí)任務(wù)調(diào)度等等,它是構(gòu)建上層平臺(tái)及應(yīng)用的基礎(chǔ)。
數(shù)據(jù)集成開(kāi)發(fā)平臺(tái):包括數(shù)據(jù)探索、數(shù)據(jù)采集、數(shù)據(jù)開(kāi)發(fā)、數(shù)據(jù)治理、數(shù)據(jù)服務(wù)等,使用到基礎(chǔ)設(shè)施中的計(jì)算引擎、定時(shí)任務(wù)與調(diào)度等。
數(shù)據(jù)資產(chǎn)運(yùn)營(yíng)平臺(tái):元數(shù)據(jù)、血緣管理、搜索引擎、資產(chǎn)管理等。
數(shù)據(jù)湖:用于匯聚業(yè)務(wù)采集過(guò)來(lái)的數(shù)據(jù),需要兼容各個(gè)類型的數(shù)據(jù),存儲(chǔ)原始數(shù)據(jù)ODS;包括關(guān)系型、大數(shù)據(jù)、MPP、圖數(shù)據(jù)、時(shí)序數(shù)據(jù)等等,使用到基礎(chǔ)設(shè)施中的存儲(chǔ)等。
數(shù)據(jù)倉(cāng)庫(kù)/數(shù)據(jù)集市:基于數(shù)據(jù)湖,加上邏輯計(jì)算做數(shù)據(jù)的二次匯聚,最終產(chǎn)生有用的一些指標(biāo)、維度等數(shù)據(jù),使用到基礎(chǔ)設(shè)施中的計(jì)算引擎、定時(shí)任務(wù)調(diào)度、存儲(chǔ)等。
數(shù)據(jù)應(yīng)用:基于數(shù)據(jù)倉(cāng)庫(kù)/數(shù)據(jù)集市甚至是數(shù)據(jù)湖的數(shù)據(jù),做服務(wù)于具體業(yè)務(wù)的應(yīng)用,比如BI報(bào)表、數(shù)據(jù)API、標(biāo)簽等應(yīng)用。
整體架構(gòu)幾乎包含數(shù)據(jù)平臺(tái)的大部分關(guān)鍵內(nèi)容,其中每一項(xiàng)都是一個(gè)較大的子系統(tǒng),以下挑選其中一些關(guān)鍵的點(diǎn)做詳細(xì)的描述:
數(shù)據(jù)存儲(chǔ)
針對(duì)不同數(shù)據(jù)類型和業(yè)務(wù)特點(diǎn),采用高效的存儲(chǔ)會(huì)比較符合實(shí)際應(yīng)用。在后續(xù)針對(duì)不同行業(yè)會(huì)給出一些場(chǎng)景的解決方案。
首先是數(shù)據(jù)湖,數(shù)據(jù)湖主要是存儲(chǔ)已有的業(yè)務(wù)數(shù)據(jù),將其1:1同步過(guò)來(lái)(當(dāng)然為了無(wú)差別同步,可能會(huì)增加一些字段用于標(biāo)識(shí)是否同步等信息)。一般有2種不一樣的建設(shè)模式,一種是采用一個(gè)大數(shù)據(jù)套件(hadoop+HDFS)存儲(chǔ)所有的數(shù)據(jù);一種是采用適合的多種數(shù)據(jù)庫(kù)兼容多個(gè)模型。前者可能需要轉(zhuǎn)換一些數(shù)據(jù),見(jiàn)過(guò)只是用關(guān)系型或文檔型數(shù)據(jù)庫(kù)作為數(shù)據(jù)湖,期間將不兼容的數(shù)據(jù)類型都做了一些轉(zhuǎn)換存儲(chǔ)。后者需要對(duì)數(shù)據(jù)同步和開(kāi)發(fā)做兼容,讓上層平臺(tái)感知不到下層使用多數(shù)據(jù)庫(kù)存儲(chǔ)。
其次是數(shù)據(jù)倉(cāng)庫(kù)/數(shù)據(jù)集市:簡(jiǎn)單理解數(shù)據(jù)集市是數(shù)據(jù)倉(cāng)庫(kù)的一個(gè)主題,其實(shí)都是針對(duì)業(yè)務(wù)設(shè)計(jì)的維度表和事實(shí)表。一個(gè)成熟的行業(yè)如金融、醫(yī)療、工業(yè)都會(huì)有一個(gè)標(biāo)準(zhǔn)模型涵蓋主要的業(yè)務(wù)需求,而針對(duì)這個(gè)模型設(shè)計(jì)一個(gè)數(shù)據(jù)倉(cāng)庫(kù),并將其不同業(yè)務(wù)模塊分為不同數(shù)據(jù)集市是一種比較常見(jiàn)做法。當(dāng)然,遇到不熟悉或者標(biāo)準(zhǔn)程度不夠的行業(yè),可以按照業(yè)務(wù)模塊建立一個(gè)個(gè)數(shù)據(jù)集市,再通過(guò)相通部分合并成一個(gè)數(shù)據(jù)倉(cāng)庫(kù)。該部分一般會(huì)是很貼合業(yè)務(wù),并且是一種OLAP類型的存儲(chǔ)加快業(yè)務(wù)實(shí)時(shí)使用,常見(jiàn)存儲(chǔ)包括MPP、elasticsearch等數(shù)據(jù)庫(kù)。數(shù)據(jù)倉(cāng)庫(kù)/數(shù)據(jù)集市的數(shù)據(jù)是從數(shù)據(jù)湖提取,期間也會(huì)使用到數(shù)據(jù)同步、計(jì)算引擎、機(jī)器學(xué)習(xí)等工具對(duì)數(shù)據(jù)做二次加工。
題外話HATP:我們之所以要做數(shù)據(jù)中臺(tái)的原因其實(shí)就是業(yè)務(wù)數(shù)據(jù)模型往往比較難以滿足快速分析,也就是很早之前的OLTP和OLAP的區(qū)別。為了將業(yè)務(wù)數(shù)據(jù)做出分析價(jià)值,那么就需要將數(shù)據(jù)同步到分析性能較好的OLAP數(shù)據(jù)庫(kù)或者做實(shí)時(shí)計(jì)算,為了兼容不同數(shù)據(jù)庫(kù)之間的數(shù)據(jù)同步和開(kāi)發(fā),數(shù)據(jù)中臺(tái)需要兼容多種數(shù)據(jù)采集工具。這時(shí)候會(huì)有一些新的方向,那就是HATP,開(kāi)發(fā)出一種既兼容OLTP也兼容OLAP的數(shù)據(jù)庫(kù),也是近幾年的方向。
數(shù)據(jù)采集
數(shù)據(jù)采集其實(shí)就是需要將業(yè)務(wù)數(shù)據(jù)同步到數(shù)據(jù)湖或者數(shù)據(jù)湖同步到數(shù)據(jù)倉(cāng)庫(kù)中,之所以要集中到數(shù)據(jù)湖一方面是為了不影響正常業(yè)務(wù),一方面是為了上層應(yīng)用方便管理。用于業(yè)務(wù)數(shù)據(jù)庫(kù)可能不同,為了很好兼容同步,做到離線、準(zhǔn)實(shí)時(shí)的同步,往往需要不同的同步工具,以下列舉較為常見(jiàn)技術(shù):
實(shí)時(shí)同步:
1)CDC:變化數(shù)據(jù)捕獲 (Change Data Capture),這是一種幾乎秒級(jí)的準(zhǔn)實(shí)時(shí)同步,主要原理是監(jiān)控?cái)?shù)據(jù)庫(kù)同步日志,做到準(zhǔn)實(shí)時(shí)同步。但是該技術(shù)一般針對(duì)關(guān)系數(shù)據(jù)庫(kù),并且數(shù)據(jù)庫(kù)有類似log日志支持,常見(jiàn)有canal(mysql)、OGG(oracle)、SqlServer等??梢越Y(jié)合kafka將數(shù)據(jù)同步到消息隊(duì)列中,然后做消息消費(fèi)處理到數(shù)據(jù)湖中。
2)流數(shù)據(jù)處理:針對(duì)并發(fā)量較大同時(shí)只需要保存計(jì)算結(jié)果的業(yè)務(wù)數(shù)據(jù),可采用流數(shù)據(jù)處理。常見(jiàn)的工具:Kafka Streaming、Spark Streaming、Flink、Storm、Heron、Pulsar等。
3)日志采集:針對(duì)日志類的采集工具,如Flume、Logstas、Fluentd等。
4)消息隊(duì)列:利用分布式系統(tǒng)之間的同步消息做消息獲取。
5)業(yè)務(wù)改造:一種在無(wú)法通過(guò)以上方式獲取到實(shí)時(shí)數(shù)據(jù)時(shí)采用通過(guò)業(yè)務(wù)改造方式將生成數(shù)據(jù)同步一份到集成平臺(tái)、消息隊(duì)列等來(lái)滿足要求。
離線同步:
1)離線數(shù)據(jù)同步相對(duì)來(lái)說(shuō)較為簡(jiǎn)單,也有現(xiàn)成工具幾乎能兼容大部分?jǐn)?shù)據(jù)庫(kù),比如DataX、kettle、Sqoop等。
數(shù)據(jù)開(kāi)發(fā)
數(shù)據(jù)開(kāi)發(fā)主要是數(shù)據(jù)應(yīng)用的開(kāi)發(fā)系統(tǒng),包括數(shù)據(jù)探索、數(shù)據(jù)查詢、機(jī)器學(xué)習(xí)、數(shù)據(jù)可視化。
1)數(shù)據(jù)探索:主要將探索數(shù)據(jù)源中的數(shù)據(jù),自動(dòng)生成元數(shù)據(jù)。
2)數(shù)據(jù)分析:通過(guò)SQL程序、Spark程序等方式將數(shù)據(jù)匯總到數(shù)據(jù)倉(cāng)庫(kù)中。
3)即席分析:通過(guò)可視化操作對(duì)數(shù)據(jù)做分析,如Hue、Spark NoteBook等
4)即席查詢:通過(guò)BI工具如Tableau、superset等做報(bào)表
5)算法開(kāi)發(fā):利用機(jī)器學(xué)習(xí)生成模型,如Jupyter Notebook等
6)流數(shù)據(jù)處理和分析:處理流數(shù)據(jù)并將結(jié)果輸出,比如Spark Streaming、Kafka Streaming、Storm或Flink等
DataOps
我們從架構(gòu)圖可以知道,數(shù)據(jù)流向是從業(yè)務(wù)系統(tǒng)到數(shù)據(jù)湖、數(shù)據(jù)湖到數(shù)據(jù)倉(cāng)庫(kù)、數(shù)據(jù)倉(cāng)庫(kù)到頂層應(yīng)用,在這過(guò)程中我們可以看到利用到了一些數(shù)據(jù)采集、數(shù)據(jù)開(kāi)發(fā)、模型設(shè)計(jì)等等技術(shù),對(duì)于一個(gè)非技術(shù)出生的人,面對(duì)底層各種技術(shù)工具,同時(shí)還要考慮從測(cè)試環(huán)境到預(yù)發(fā)布環(huán)境到正式環(huán)境的操作上保持一致,這個(gè)困難度可想而知,因此就會(huì)出現(xiàn)數(shù)據(jù)流水線管理。
數(shù)據(jù)流水線管理是看能否開(kāi)發(fā)一個(gè)平臺(tái),可以將數(shù)據(jù)從采集到應(yīng)用過(guò)程中可視化管理,同時(shí)還可以一鍵發(fā)布到各個(gè)環(huán)境,避免出現(xiàn)人工操作的復(fù)雜度和失誤。這個(gè)系統(tǒng)需要包括:數(shù)據(jù)開(kāi)發(fā)工具、調(diào)度引擎、配置庫(kù)、運(yùn)營(yíng)管理工具等。而這個(gè)平臺(tái)可參照的方法論就是DataOps。
DataOps:一種面向流程的自動(dòng)化方法,由分析和數(shù)據(jù)團(tuán)隊(duì)使用,旨在提高數(shù)據(jù)分析的質(zhì)量并縮短數(shù)據(jù)分析的周期。包含:部署、運(yùn)維、治理、可用、生產(chǎn)等功能,等同于數(shù)據(jù)管理中的DevOps。一般使用到的技術(shù)包括云架構(gòu)、容器、實(shí)時(shí)和流處理、多分析引擎、集成的應(yīng)用程序和數(shù)據(jù)管理、多租戶和安全性、DevOps工具。它與數(shù)據(jù)中臺(tái)的關(guān)系是為了強(qiáng)調(diào)提高數(shù)據(jù)分析的質(zhì)量并縮短數(shù)據(jù)分析的周期,而數(shù)據(jù)中臺(tái)是做整體數(shù)據(jù)管理,數(shù)據(jù)中臺(tái)提供數(shù)據(jù)建設(shè)目標(biāo),而DataOps提供一條可實(shí)現(xiàn)路徑。
云原生與數(shù)據(jù)中臺(tái)
數(shù)據(jù)中臺(tái)建設(shè)的一些難點(diǎn),云原生方案:通過(guò)“分級(jí)多域”架構(gòu),主域統(tǒng)一管理權(quán)限和配置,從域按需部署在不同云平臺(tái)(如AWS、阿里云),實(shí)現(xiàn)數(shù)據(jù)本地化存儲(chǔ)與全局管控的平衡
1)數(shù)據(jù)應(yīng)用能力快速?gòu)?fù)用難
2)新大數(shù)據(jù)技術(shù)無(wú)法快速落地
3)多租戶的數(shù)據(jù)安全問(wèn)題
4)業(yè)務(wù)人員難以獨(dú)立完成數(shù)據(jù)分析工作
5)分布式計(jì)算和高性能難以保證
利用云原生特點(diǎn)解決數(shù)據(jù)中臺(tái)的難點(diǎn)
挑戰(zhàn):醫(yī)療業(yè)務(wù)需求多樣且多變(如實(shí)時(shí)疫情監(jiān)控、動(dòng)態(tài)醫(yī)保結(jié)算),傳統(tǒng)單體架構(gòu)難以快速迭代。
云原生方案:采用微服務(wù)架構(gòu)將數(shù)據(jù)治理、AI模型訓(xùn)練等功能模塊化,結(jié)合DevOps工具鏈實(shí)現(xiàn)持續(xù)集成與交付(CI/CD)。例如,健瀾科技的“大數(shù)據(jù)+大模型”雙中臺(tái)通過(guò)零代碼工具鏈支持快速模型訓(xùn)練與應(yīng)用部署,醫(yī)療數(shù)據(jù)中臺(tái)通過(guò)統(tǒng)一數(shù)據(jù)標(biāo)準(zhǔn)與全鏈路治理,支撐多院區(qū)運(yùn)營(yíng)決策,患者就醫(yī)體驗(yàn)提升20%以上
1)以容器化發(fā)布服務(wù),解決數(shù)據(jù)共享和復(fù)用
2)實(shí)現(xiàn)新大數(shù)據(jù)技術(shù)的云原生組件,使其標(biāo)準(zhǔn)化配置和管理,快速落地
3)利用云平臺(tái)多租戶實(shí)現(xiàn)數(shù)據(jù)中臺(tái)的數(shù)據(jù)安全
4)以容器化模式實(shí)現(xiàn)CI/CD流程,達(dá)到可快速?gòu)?fù)用和開(kāi)發(fā)
5)利用云原生的可伸縮性,達(dá)到分布式計(jì)算和高性能
特別聲明:智慧醫(yī)療網(wǎng)轉(zhuǎn)載其他網(wǎng)站內(nèi)容,出于傳遞更多信息而非盈利之目的,同時(shí)并不代表贊成其觀點(diǎn)或證實(shí)其描述,內(nèi)容僅供參考。版權(quán)歸原作者所有,若有侵權(quán),請(qǐng)聯(lián)系我們刪除。
凡來(lái)源注明智慧醫(yī)療網(wǎng)的內(nèi)容為智慧醫(yī)療網(wǎng)原創(chuàng),轉(zhuǎn)載需獲授權(quán)。
智慧醫(yī)療網(wǎng) ? 2022 版權(quán)所有 ICP備案號(hào):滬ICP備17004559號(hào)-5