设计一个60T数据仓库及大数据分析平台,医院数字化该怎么做?
入行不久的程序员,最容易对自己和技术产生怀疑。整天担心学不到技术,不能在日活1亿的好项目里锻炼。其实完全没必要。项目一旦成为项目,它的新奇感也就没有了。剩下的就是苦的活儿,码字。
如何获取更多项目经验?看论文,看同行分享。拆解他们如何将需求分析到落地,如何来做技术选型,从中理清细节。
我在看《维度建模》的时候,也曾经懵逼。书上讲的知识是一回事,但没有看到实际的应用之前,觉得书本东西就是一层膜,朦朦胧胧,也云里雾里,不知道怎么用,哪里该用ODS,怎么分层,数据集市该怎么分类。
这一系列的概念,在我看到真正的案例时,才豁然开朗。
哪里才能看到真正的案例呢?最常见的做法,就是去看期刊论文。通常2-4页的论文,完整地介绍了一个实战项目的始终,有需求分析,也有架构实现,还有工具选型。资料丰富,内容精简,绝对好上手。
唯一缺少的是技术细节的剖析,但有价值的事情,不就是自己去实现嘛,你说没有项目经验,自己7周弄7个项目,不是项目经验是什么?
不废话了,今天闲逛期刊网时,看到一篇极好的论文,医院数据仓库项目及其OLAP分析系统,分享给大家。相信看完这个案例后,你一定会对传统行业,生产制造,医院学校,电信银行等数据仓库及其BI应用有所了解。
看病的经历,大家都有。挂号,等待,问诊,检查,确诊,拿药,回家。就是这么个流程,中间涉及到的每一步,现代化的医院都会替你如实地记录下来。
做业务系统的朋友,脑袋里肯定在琢磨的是,用的什么前端架构,是Vue,Angular,还是JQuery?服务端用的是c#还是Java Spring Boot?
做数据库的朋友,想法不一样了,除了问采用Oracle还是SQL Server,心里最大的疑问,莫过于他们需要用BI吗,会有哪些主题,驾驶舱怎么玩的,大屏怎么实现的,医生的字儿那么有个性,这些病症的全文检索怎么办?
这样一琢磨,整个医院的软件体系结构也就出来了。两大块内容,业务系统与分析系统。
业务系统,通常指那些记录病人与医生之间每一次交互的行为信息记录系统。有正常门诊急诊使用的问诊系统,身体各部分检查的影像系统,还有各类体液检测系统,等等。
分析系统,通常是院方用来分析经营利润,医疗评判和医护人员效率的工具。大家看病,通常都会调侃,现在看病贵,看个小病就要好几百。那么事实上,医院真的就很赚钱吗,看下他们的医院经营分析利润报表就可以知道了。
我没做过医院类的数仓也不好说,如果读者们有这个经验,不妨与我们分享下。对于医院来说,一个好名声,可能比利润更重要,所以依靠死亡率,重返率及手术并发率等指标,凸显院方医术先进,更是需要分析系统的保障。
所以,用简单的二分法来归类医院的信息系统,就非常简单的架构:
业务系统(OLTP)负责记录看病日志,而分析系统(OLAP)用来提供管理决策依据。
而具体而看决策分析系统,就有很多说法了:
几大配件:
- 元数据管理
- ETL
- 数据模型
- 数据可视化
- 应用服务层
- 管理运维层
上面的架构图看上去简单,分层也很清晰,所有的数据仓库及其BI平台,几乎都可以套用它。唯一不同的是实现方法。
在ETL方面,传统行业使用Batch方式多一些,比如SSIS, Informatica, DataStage 等等,走T+1的增量更新,今天的数据,明天才能反映在报表或者分析系统中。而互联网行业,使用 Kafka, Spark, Flink等等,走T+0的方式,做到实时更新。
在数据仓库和Cube方向,传统的企业使用Oracle, SQL Server, DB2的居多,大量的SQL Girl & Body 都会在这个方向上努力。而互联网行业,会加入Hadoop, Hive, Spark 等,来做分布式存储与计算。
Cube方面,曾经的SSAS红极一时,yahoo号称有4000台的Cube,现在也逐渐被Kyligence所取代。
应用服务层,大家可能不常见,尤其对于传统行业的设计人员,利用BO,Hyperion,SSRS等封装好的产品,直接开发与分发报表,所以看不到单独开来的服务层模块。这一层,主要是承接可视化的需求,按照用户角色权限,设计,分发和响应报表请求。
BO,Hyperion,SSRS的产品够好,但唯一的缺陷,是缺少定制化,比如角色权限控制,定时或实时发送警告等。这块我也正在发力,准备做得更深入些,前两天在我的知识星球里,开玩笑说最近开了很多坑,这块算一个。
比如 Web API 可以用NodeJS来完成,对于各类数据响应,使用Docker化部署的NodeJS API,可以线性扩展报表的响应性能。比如使用 Ado.net/Adomd.net 可以将数据库与Cube的访问同时写进一个Web Service里面,这样拉取数据的效率会高很多。
可视化,大家多少都了解些,Excel的Pivot就是简单的例子,各类报表工具,Tableau,FineBI,FineReport也是层出不穷。
当然还有完全可定制化的图表库,比如使用 Angular, D3.js等javascript库,可以开发出更人性化的报表和分析界面。
现在流行的大屏,驾驶舱等等,都是这样衍生出来的,功能上还是在提供数据可视化的表达窗口而已。
差不多了,对于一个基础入门来说,看懂这个框架图,详细地扣一扣技术细节,一个完整的项目经验,应该就算是有了。
设计一个60T数据仓库及大数据分析平台,医院数字化该怎么做?相关推荐
- 录制视频讲解,设计一个基于社交和大数据分析的智能家居系统
基于社交网络和大数据分析的智能家居系统 摘要 智能家居是在互联网影响下的物联化的产物,本文阐述了一种基于微信和和大数据分析的智能家居的设计方案.为何要用微信?为何要用大数据分析?这两种技术相结合能为智 ...
- 【金猿产品展】Smartbi一站式大数据分析平台——一个平台、所有数据、无限可能。...
思迈特软件产品 本项目由思迈特软件投递并参与"数据猿年度金猿策划活动--2022大数据产业创新服务产品榜单及奖项"评选. 数据智能产业创新服务媒体 --聚焦数智 · 改变商业 ...
- 【金猿产品展】Smartbi一站式大数据分析平台——更聪明的大数据分析软件
思迈特软件产品 本项目由思迈特软件投递并参与"数据猿年度金猿策划活动--2021大数据产业创新服务产品榜单及奖项"评选. 数据智能产业创新服务媒体 --聚焦数智 · 改变商业 Sm ...
- 网络流量大数据分析平台(1)
网络流量大数据分析平台(1) 本系列文章用来记录搭建网络流量大数据平台的过程,后续可能还会写关于做流量分析的部分. 废话不多说,直接开始. 一.项目需求 本项目旨在构建一个网络全流量大数据分析平台的核 ...
- 结构化大数据分析平台设计
前言 任何线上系统都离不开数据,有些数据是业务系统自身需要的,例如系统的账号,密码,页面展示的内容等.有些数据是业务系统或者用户实时产生的,例如业务系统的日志,用户浏览访问的记录,系统的购买订单,支付 ...
- mmTrix大数据分析平台构建实录--转
在数据分析中,有超过90%数据都是来自于非结构化数据,其中大部分的是日志,如运维.安全审计.用户访问数据以及业务数据等,但随着互联网快速的发展,数据规模也是水涨船高,从早前的GB级到现在的TB级,甚至 ...
- 阿里大数据分析与应用(part3)--常用的大数据分析平台
学习笔记,仅供参考,有错必纠 文章目录 常用的大数据分析平台 什么是大数据分析平台 基于Hadoop的大数据分析平台 阿里云大数据平台 典型阿里云大数据平台架构 MaxCompute MaxCompu ...
- 企业大数据分析平台如何构建
在构建大数据分析平台之前,首先要明确业务需求场景和用户的需求,通过大数据分析平台,获取有价值的信息,需要访问数据,明确基于现场业务需求的大数据平台具有基本功能,确定平台的流程使用大数据处理工具和框架. ...
- mmTrix大数据分析平台构建实录
在数据分析中,有超过90%数据都是来自于非结构化数据,其中大部分的是日志,如运维.安全审计.用户访问数据以及业务数据等,但随着互联网快速的发展,数据规模也是水涨船高,从早前的GB级到现在的TB级,甚至 ...
最新文章
- Transformers 研究指南
- P5357 【模板】AC自动机(二次加强版)(AC自动机建fail树dfs求模式串出现次数)
- 使用 WebIDE 三分钟上手函数计算
- java操作xml文件--修改节点
- 怎样玩儿转App手游自动化测试?
- C及C++中typedef的简单使用指南
- 经典笔试题:用C写一个函数测试当前机器大小端模式
- corda_Corda服务的异步流调用
- springcloud 服务网关Zuul实战(一)基本路由配置
- html图片分类插件,Quicksand-jQuery超酷图片分类插件
- 女朋友生气了吗?算法比直男更懂她
- EnglishWords——星期与月份
- python三菱fx3u通讯mx_[实例]三菱FX3U-485无协议通讯程序(含程序段)
- CorelDRAW如何设置填充颜色和边框颜色
- 牛客刷题——两种排序方法
- 如何选择合适的无线网桥
- Spring框架基础学习小结。概念,文件配置
- thinksnsv4.6运行php,ThinkSNS开启调试模式
- 每日安全简讯20160727
- 【JMP白皮书下载】 | 可靠性增长之探讨与案例分享
热门文章
- windows如何开关机执行程序
- Tomcat8服务器在Cookie中添加当前系统时间报错
- 关于微信小程序使用获取用户信息getUserProfile的问题:TypeError: wx.getUserProfile is not a function
- SQL Server下载指南
- sql server注入_SQL注入:SQL Server中的介绍和预防方法
- jvm虚拟机创建对象
- HTTP和HTTPS的区别及HTTPS加密算法
- C#中如何截取Windows消息来触发自定义事件
- 解决li在ie,firefox中行高不一致问题
- zjoi 2008 树的统计——树链剖分