为KUDU中医疗数据添加自增列的方法
价格 双方协商
地区: 贵州省 贵阳市 观山湖区
需求方: 贵州***公司
行业领域
生物与新医药技术
需求背景
以前,大数据主要以两种方式存储:
静态数据:以HDFS引擎作为存储引擎,适用于高吞吐量的离线大数据分析场景。这类存储的局限性是数据无法进行随机的读写。
动态数据:以HBase、Cassandra作为存储引擎,适用于大数据随机读写场景。这类存储的局限性是批量读取吞吐量远不如HDFS,不适用于批量数据分析的场景。
在真实的场景中,面对既需要随机读写,又需要批量分析的大数据场景时,通产定时(通常是T+1或者T+H)将HBase数据写成静态的文件(如:Parquet)导入到OLAP引擎(如:HDFS)。这一架构能满足既需要随机读写,又可以支持OLAP分析的场景,但该架构有如下缺点:
第一、架构复杂从架构上看,数据在HBase、消息队列、HDFS间流转,涉及环节太多,运维成本很高。并且每个环节需要保证高可用,都需要维护多个副本,存储空间也有一定的浪费。最后数据在多个系统上,对数据安全策略、监控等都提出了挑战。
第二、时效性低数据从HBase导出成静态文件是周期性的,一般这个周期是一天(或一小时),在时效性上不是很高。
第三、难以应对后续的更新
真实场景中,总会有数据是「延迟」到达的。如果这些数据之前已经从HBase导出到HDFS,新到的变更数据就难以处理了,一个方案是把原有数据应用上新的变更后重写一遍,但这代价又很高。
为了解决上述架构的这些问题,KUDU应运而生。
KUDU是一种开源的新型列式数据库,专门为了对快速变化的数据进行快速的分析,在医疗数据分析方面起到很大作用,但是KUDU在一些功能不能尽善尽美,例如不能创建自增列。
医疗数据的敏感性要求医疗数据基本都要脱敏处理,在对医疗数据进行序号编码处理的过程中,要求使用自增序号,以便之后对数据的分析。用于分析的数据都存储到KUDU中,但KUDU自身不支持设置自增主键,依赖KUDU自身机制无法实现。
需解决的主要技术难题
需解决数据从HBase导出到HDFS,新到的变更数据就难以处理的技术问题。
从架构上看,数据在HBase、消息队列、HDFS间流转,涉及环节太多,运维成本很高。并且每个环节需要保证高可用,都需要维护多个副本,存储空间也有一定的浪费。最后数据在多个系统上,对数据安全策略、监控等都提出了挑战。
期望实现的主要技术目标
能够让KUDU自身支持设置自增主键,可以对数据进行分析。
能够提出一种为KUDU中医疗数据添加自增列的方法。
处理进度