CN113314229A - 一种数据处理方法、装置、电子设备和存储介质 - Google Patents
一种数据处理方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN113314229A CN113314229A CN202110578309.9A CN202110578309A CN113314229A CN 113314229 A CN113314229 A CN 113314229A CN 202110578309 A CN202110578309 A CN 202110578309A CN 113314229 A CN113314229 A CN 113314229A
- Authority
- CN
- China
- Prior art keywords
- retrieval
- data
- current
- current retrieval
- patient data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003860 storage Methods 0.000 title claims abstract description 39
- 238000003672 processing method Methods 0.000 title claims abstract description 22
- 238000000034 method Methods 0.000 claims abstract description 48
- 238000009825 accumulation Methods 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 17
- 230000015654 memory Effects 0.000 claims description 15
- 238000010586 diagram Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 201000010099 disease Diseases 0.000 description 5
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 3
- 208000017667 Chronic Disease Diseases 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000036541 health Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000004883 computer application Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H50/00—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
- G16H50/70—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for mining of medical data, e.g. analysing previous cases of other patients
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Public Health (AREA)
- Biomedical Technology (AREA)
- Databases & Information Systems (AREA)
- Pathology (AREA)
- Epidemiology (AREA)
- General Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种数据处理方法、装置、电子设备和计算机存储介质,该方法应用于互联网医院的医生端设备,该方法包括:从多种数据源中获取患者数据,将所述患者数据进行统一存储;接收当前检索请求,根据所述当前检索请求,确定当前检索条件;若确定根据所述当前检索条件对所述统一存储的患者数据的检索次数大于或等于设定阈值,且消息中间件的缓存中不存在所述当前检索条件的检索结果,则将所述当前检索条件以及所述当前检索条件的检索结果放入所述消息中间件的缓存中。
Description
技术领域
本申请涉及计算机应用技术领域,尤其涉及一种数据处理方法、装置、电子设备和计算机存储介质。
背景技术
在互联网医院运营模式中,客户端和业务系统都存在很多种可能,即便按照业务领域划分数据量也会是笛卡尔积量级的。以互联网医院医生视角查看患者属性为例,患者数据来源可以是患者本身维护的基本信息,患者病例信息,患者问诊信息,患者处方信息,以及一些诊断工具信息。这些数据记录了涵盖了患者的疾病史,这些数据会被进行检索、运算、清洗和分析。
相关技术中,针对多数据源的数据处理方式,主要是通过分析并整理数据,使数据维度统一,再选择一种数据作为主数据,通过远程过程调用协议(Remote Procedure CallProtocol,RPC)调用存储在其它地方的辅助数据,然后做填充聚合。然而,上述检索方式仅适用于数据量比较小,且数据分散均匀的场景;以医患关系数据作为主数据和医生设置患者分组数据为辅助数据为例。对医患关系数据的检索本身只受自己数据量的影响,但是为了填充患者分组数据需要对整个分组数据做检索然后去匹配,即,无法把控医生对检索功能的使用程度,如果分组数据不均匀会导致检索出主数据不需要的数据,造成性能浪费,或者数据填充不准确。并且当辅助数据源比较多的话,RPC本身也会成为性能卡点,使得热点数据的检索性能下降。
发明内容
本申请提供一种数据处理方法、装置、电子设备和计算机存储介质;可以解决相关技术中数据处理性能较低的问题。
本申请的技术方案是这样实现的:
本申请提供了一种数据处理方法,应用于互联网医院的医生端设备,所述方法包括:
从多种数据源中获取患者数据,将所述患者数据进行统一存储;
接收当前检索请求,根据所述当前检索请求,确定当前检索条件;若确定根据所述当前检索条件对所述统一存储的患者数据的检索次数大于或等于设定阈值,且消息中间件的缓存中不存在所述当前检索条件的检索结果,则将所述当前检索条件以及所述当前检索条件的检索结果放入所述消息中间件的缓存中。
在一些实施例中,所述将所述患者数据进行统一存储,包括:
将所述患者数据统一存储在Elasticsearch数据库中。
在一些实施例中,所述方法还包括:
若确定根据所述当前检索条件对所述统一存储的患者数据的检索次数大于或等于设定阈值,且消息中间件的缓存中不存在所述当前检索条件的检索结果时,对所述Elasticsearch数据库进行检索,得到所述当前检索条件的检索结果。
在一些实施例中,所述方法还包括:
若确定根据所述当前检索条件对所述统一存储的患者数据的检索次数小于设定阈值,则对所述当前检索条件执行次数累加操作,并对所述Elasticsearch数据库进行检索,得到所述当前检索条件的检索结果。
在一些实施例中,所述对所述当前检索条件执行次数累加操作,包括:
预先在所述消息中间件中设置一个哈希表;
将所述当前检索条件组合成一个域放入所述哈希表中,通过执行HINCRBY命令实现次数累加操作。
在一些实施例中,所述方法还包括:
通过消息中间件Kafka将所述患者数据上传至所述Elasticsearch数据库中进行统一存储。
在一些实施例中,所述方法还包括:
若所述消息中间件的缓存中数据的存储时间达到过期时间,则确定所述消息中间件的缓存中数据过期。
本申请提供一种数据处理装置,应用于互联网医院的医生端设备,所述装置包括存储模块和检索模块,其中,
存储模块,用于从多种数据源中获取患者数据,将所述患者数据进行统一存储;
检索模块,用于接收当前检索请求,根据所述当前检索请求,确定当前检索条件;若确定根据所述当前检索条件对所述统一存储的患者数据的检索次数大于或等于设定阈值,且消息中间件的缓存中不存在所述当前检索条件的检索结果,则将所述当前检索条件以及所述当前检索条件的检索结果放入所述消息中间件的缓存中。
本申请提供一种电子设备,所述设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现前述一个或多个技术方案提供的数据处理方法。
本申请提供一种计算机存储介质,所述计算机存储介质存储有计算机程序;所述计算机程序被执行后能够实现前述一个或多个技术方案提供的数据处理方法。
本申请实施例提供一种数据处理方法、装置、电子设备和计算机存储介质,所述方法应用于互联网医院的医生端设备,所述方法包括:从多种数据源中获取患者数据,将所述患者数据进行统一存储;接收当前检索请求,根据所述当前检索请求,确定当前检索条件;若确定根据所述当前检索条件对所述统一存储的患者数据的检索次数大于或等于设定阈值,且消息中间件的缓存中不存在所述当前检索条件的检索结果,则将所述当前检索条件以及所述当前检索条件的检索结果放入所述消息中间件的缓存中。
可以看出,本申请实施例中,在根据当前检索条件对统一存储的患者数据进行检索的过程中,会判断该检索条件的检索次数是否达到设定阈值,若达到设定阈值,则说明该检索条件的检索结果为热点数据;即,能够在检索患者数据的过程中自动确定数据的热点情况;进一步地,若确定消息中间件的缓存中不存在当前检索条件的检索结果,则将该检索条件以及该检索条件的检索结果放入消息中间件的缓存中,这样,之后若再次根据该检索条件进行检索时,可以直接在消息中间件的缓存中进行检索,进而,能够实现更高效的检索,提升使用者的满意度。
附图说明
图1a为本申请实施例中的对患者数据的多种来源进行说明的结构示意图;
图1b为本申请实施例的一种数据处理方法的流程图;
图1c为本申请实施例的一种对患者数据进行处理的流程图;
图1d为本申请实施例的另一种对患者数据进行处理的流程图;
图2为本申请实施例中的另一种数据处理方法的流程图;
图3为本申请实施例的数据处理装置的组成结构示意图;
图4为本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请中的附图,对本申请中的技术方案进行清楚、完整地描述。
以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所提供的实施例仅仅用以解释本申请,并不用于限定本申请。另外,以下所提供的实施例是用于实施本申请的部分实施例,而非提供实施本申请的全部实施例,在不冲突的情况下,本申请记载的技术方案可以任意组合的方式实施。
需要说明的是,在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的方法或者装置不仅包括所明确记载的要素,而且还包括没有明确列出的其他要素,或者是还包括为实施方法或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括该要素的方法或者装置中还存在另外的相关要素(例如方法中的步骤或者装置中的单元,例如的单元可以是部分处理器、部分程序或软件等等)。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
例如,本申请提供的数据处理方法包含了一系列的步骤,但是本申请提供的数据处理方法不限于所记载的步骤,同样地,本申请提供的数据处理装置包括了一系列模块,但是本申请提供的数据处理装置不限于包括所明确记载的模块,还可以包括为获取相关信息、或基于信息进行处理时所需要设置的模块。
本申请可以基于电子设备实现,这里,电子设备可以是瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统,等等。
终端设备、服务器等电子设备可以通过程序模块的执行实现相应的功能。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等。它们执行特定的任务或者实现特定的抽象数据类型。计算机系统可以在分布式云计算环境中实施,在分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
图1a为本申请实施例中的对患者数据的多种来源进行说明的结构示意图,如图1a所示,可以通过大数据团队、患者主数据团队、慢病团队、主数据团队等多个团队生产患者数据,且患者数据的存储方式可以是数据库(Data Base,DB),也可以是缓存Redis。患者端的业务系统可以包括互联网医院公众号、互联网医院应用软件(Application,APP)和健康APP等。医生端的业务系统可以包括健康APP、和个人计算机(Personal Computer,PC)工作台等。
其中,大数据团队生产的患者数据可以从患者端的业务系统中获取;具体地,患者端的业务系统会将患者在设定时间段T的问诊数据通过消息队列(Message Queue,MQ)或京东服务框架(Jingdong Service Framework,JSF)等方式写入问诊DB中,然后在下一个时间段T+1到来时,大数据团队从问诊DB中获取患者数据,即,设定时间段T的问诊数据。还可以通过实时数据发布与订阅模块BinLake将问诊DB中的医患关系数据放入医患关系ES(Elasticsearch)数据库中。大数据团队通过直链推送数据的方式将产生的患者数据放入分组标签ES数据库中以及分组明细ES数据库中;在获取到上述医患关系ES数据库、分组标签ES数据库、分组明细ES数据库以及各个团队存储在DB和缓存Redis的患者数据后,将这些数据通过JSF方式发送到医生端设备进行汇总,使得医生端的业务系统可以根据这些数据实现患者档案和患者管理等功能。
由图1a可知,对于不同数据源的患者数据,其存储位置、存储维度以及存储方式不同。相关技术中,针对多数据源的数据处理方式,主要是通过分析并整理数据,使数据维度统一,再选择一种数据作为主数据,通过RPC调用存储在其它地方的辅助数据,然后做填充聚合。然而,这种方式会造成业务系统的性能浪费,或者数据填充不准确,使得热点数据的检索性能下降。
针对上述问题,提出以下各实施例。
在本申请的一些实施例中,数据处理方法可以利用数据处理装置中的处理器实现,上述处理器可以为特定用途集成电路(Application Specific Integrated Circuit,ASIC)、数字信号处理器(Digital Signal Processor,DSP)、数字信号处理装置(DigitalSignal Processing Device,DSPD)、可编程逻辑装置(Programmable Logic Device,PLD)、现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA)、CPU、控制器、微控制器、微处理器中的至少一种。
图1b为本申请实施例的一种数据处理方法的流程图,该方法应用于互联网医院的医生端设备,如图1b所示,该流程可以包括:
步骤100:从多种数据源中获取患者数据,将患者数据进行统一存储。
在一种实施方式中,多种数据源表示患者数据的多种来源;对于互联网医院,患者数据的多种来源可以包括图1a所示的各个团队、患者端的业务系统以及医生端的业务系统等;本申请实施例对此不作限制。
示例性地,患者数据可以是上述各个数据源生产的数据,例如,可以是患者端的业务系统生产的医患关系数据、大数据团队生产的患者分组数据以及医生端的业务系统生产的患者疾病数据等。
这里,对于从多种数据源中获取患者数据的方式,可以根据数据源类型进行确定;例如,在数据源类型为患者端的业务系统的情况下,可以通过MQ、JSF或BinLake方式将患者数据推送到对应的ES数据库中,再通过JSF方式从该ES数据库中获取患者数据;在数据源类型为图1a所示的大数据团队的情况下,可以通过直链推送的方式将患者数据推送到对应的ES数据库中,再通过JSF方式从该ES数据库中获取患者数据;在数据源类型为图1a所示的患者主数据团队、慢病团队、主数据团队的情况下,可以先将患者数据存储至DB或缓存Redis中,再通过JSF方式将DB或缓存Redis中的患者数据推送到对应的ES数据库中,进而,从该ES数据库中获取患者数据。
示例性地,从多种数据源中获取患者数据的实现方式,可以为:将多种数据源产生的患者数据放入各个ES数据库中,然后在从各个ES数据库中获取对应的患者数据。
示例性地,在从各个ES数据库中获取到上述患者数据后,需要将患者数据进行统一存储;这里,将患者数据进行统一存储,可以包括:将患者数据统一存储在ES数据库中。
在一些实施例中,上述方法还可以包括:通过消息中间件Kafka将患者数据上传至ES数据库中进行统一存储。
示例性地,在对患者数据进行统一存储的过程中,通过消息中间件Kafka进行数上传,对患者数据和业务系统进行耦合;即,可以在进行患者数据存储的过程中确保业务系统的稳定性。另外,消息中间件Kafka除了能够将患者数据进行上传外,还可以对来自不同数据源的患者数据进行扁平化处理,使得这些患者数据能够以统一维度存储在同一个ES数据库中。下面通过图1c和图1d进行说明。
图1c为本申请实施例的一种对患者数据进行处理的流程图,如图1c所示,该流程可以包括:数据生产、数据上传和数据记录;这里,患者数据的处理过程为:通过MQ、JSF或BinLake等方式从多个数据源中获取患者数据;再通过消息中间件Kafka将获取到的患者数据进行上传;最后将上传的患者数据统一存储在ES数据库,后续在进行数据检索时,会将符合条件的数据存储在消息中间件(例如,Jimdb、Hbase)中。
图1d为本申请实施例的另一种对患者数据进行处理的流程图,如图1d所示,该流程可以包括:首先,将多种数据源产生的患者数据放入各个ES数据库中,即,通过MQ方式将问诊单数据中的带问诊类型医患关系数据放入带问诊类型医患关系ES数据库中,通过BinLake方式将问诊单数据中的患者关系数据放入患者关系ES数据库中。通过直链推送数据的方式将大数据团队产生的患者数据放入分组标签ES数据库中以及分组明细ES数据库中;通过JSF方式将PC工作台产生的患者疾病数据放入患者疾病信息ES数据库中。然后,通过消息中间件Kafka将获取到的患者数据进行上传至上述数据记录中;医生根据数据记录中的患者数据实现诊后报道、患者分组、群发消息、问诊表、随访计划、量表以及患者列表等功能。
步骤101:接收当前检索请求,根据当前检索请求,确定当前检索条件;若确定根据当前检索条件对统一存储的患者数据的检索次数大于或等于设定阈值,且消息中间件的缓存中不存在当前检索条件的检索结果,则将当前检索条件以及当前检索条件的检索结果放入消息中间件的缓存中。
示例性地,当医生在使用互联网医院中的某些功能时,很可能需要检索相关的患者数据;此时,医生向医生端设备发送检索请求,医生端设备接收当前检索请求。
示例性地,在医生端设备接收到每次的检索请求后,会根据预设规则编辑检索条件,得到与每次的检索请求对应的检索条件;这里,预设规则可以根据实际情况进行设置,本申请实施例对此不作限制;例如,预设规则可以包括以下至少一项信息:患者年纪、患者性别、疾病类型等信息。
在一种实施方式中,可以预先在消息中间件中设置一个哈希表;将每次的检索条件组合成一个域放入哈希表中,通过执行HINCRBY命令实现次数累加操作,得到不同检索条件的次数累加结果。
这里,消息中间件的类型可以根据实际情况进行设置;例如,可以是Jimdb、Hbase,也可以是其它类型的消息中间件。
示例性地,在根据当前检索请求,确定当前检索条件后,会通过上述哈希表查找当前检索条件的次数累加结果,进而,根据当前检索条件的次数累加结果,判断当前检索条件对统一存储在ES数据库中的患者数据的检索次数是否大于或等于设定阈值;如果是,则继续判断消息中间件的缓存中是否存在当前检索条件的检索结果;如果否,继续对当前检索条件的检索次数执行次数累加操作,并对统一存储的ES数据库进行检索,得到当前检索条件的检索结果。而在得到当前检索条件的检索结果后,会将当前检索条件以及当前检索条件的检索结果放入消息中间件的缓存中。
在一种实施方式中,设定阈值的取值可以根据实际情况进行设置,例如,可以为5次,8次等;本申请实施例对此不作限制。
在一些实施例中,上述方法还可以包括:若确定根据当前检索条件对统一存储的患者数据的检索次数大于或等于设定阈值,且消息中间件的缓存中存在当前检索条件的检索结果时,对消息中间件的缓存进行检索,得到当前检索条件的检索结果。
这里,消息中间件的缓存中存在当前检索条件的检索结果,说明在接收当前检索请求之前,与当前检索条件相同的检索条件的检索次数已经大于或等于设定阈值,并且该检索条件的检索结果也被放入消息中间件的缓存中。通过直接在消息中间件的缓存中进行检索,能够提升的检索效率。
示例性地,可以在设定时间内对上述检索条件的检索次数执行次数累加操作;这里,设定时间可以是30秒、1分钟等;本申请实施例对此不作限制。
在一种实时方式中,假设设定时间为1分钟,设定阈值为5次,若检索条件L在1分钟内的检索次数为3,则检索次数小于设定阈值;若检索条件L在1分钟内的检索次数为5,则检索次数等于设定阈值。
在一些实施例中,上述方法还可以包括:若消息中间件的缓存中数据的存储时间达到过期时间,则确定消息中间件的缓存中数据过期。
这里,对于消息中间件的缓存中数据,会预先设置过期时间,例如,1分钟;以便进一步提升数据的检索性能;即,当消息中间件的缓存中数据的存储时间达到过期时间,则将消息中间件的缓存中数据进行清除。
本申请实施例提供一种数据处理方法、装置、电子设备和计算机存储介质,该方法应用于互联网医院的医生端设备,该方法包括:从多种数据源中获取患者数据,将所述患者数据进行统一存储;接收当前检索请求,根据所述当前检索请求,确定当前检索条件;若确定根据所述当前检索条件对所述统一存储的患者数据的检索次数大于或等于设定阈值,且消息中间件的缓存中不存在所述当前检索条件的检索结果,则将所述当前检索条件以及所述当前检索条件的检索结果放入所述消息中间件的缓存中。可以看出,本申请实施例中,在根据当前检索条件对统一存储的患者数据进行检索的过程中,会判断该检索条件的检索次数是否达到设定阈值,若达到设定阈值,则说明该检索条件的检索结果为热点数据;即,能够在检索患者数据的过程中自动确定数据的热点情况;进一步地,若确定消息中间件的缓存中不存在当前检索条件的检索结果,则将该检索条件以及该检索条件的检索结果放入消息中间件的缓存中,这样,之后若再次根据该检索条件进行检索时,可以直接在消息中间件的缓存中进行检索,进而,能够实现更高效的检索,提升使用者的满意度。
为了能够更加体现本申请的目的,在本申请上述实施例的基础上,进行进一步的说明。
图2为本申请实施例中的另一种数据处理方法的流程图,如图2所示,该流程可以包括:
步骤A1:判断当前检索条件的检索次数是否达到设定阈值。
示例性地,在接收到每次的检索请求后,根据每次的检索请求,确定每次的检索条件;将每次的检索条件组合成一个域放入哈希表中,通过执行HINCRBY命令实现次数累加操作;根据次数累加操作的结果,判断当前检索条件在规定时间内的检索次数是否大于或等于设定阈值;如果否,依次执行步骤A2和步骤A3,如果是,执行步骤A4。
步骤A2:对当前检索条件执行次数累加操作。
示例性地,在根据步骤A1确定当前检索条件的检索次数小于设定阈值时,则对当前检索条件继续执行次数累加操作。
步骤A3:对ES数据库进行检索。
示例性地,在根据步骤A2对当前检索条件执行次数累加操作后,对Elasticsearch数据库进行数据检索,得到当前检索条件的检索结果,返回该检索结果,本次流程结束。
步骤A4:对消息中间件的缓存进行检索。
示例性地,在根据步骤A1确定当前检索条件的检索次数达到设定阈值时,根据当前的检索条件,对消息中间件的缓存进行数据检索。
步骤A5:判断消息中间件的缓存中是否存在检索结果。
示例性地,根据步骤A4对消息中间件的缓存进行数据检索后,会判断消息中间件的缓存中是否存在检索结果;如果是,返回该检索结果,本次流程结束。如果否,依次执行步骤A6和步骤A7。
步骤A6:对Elasticsearch数据库进行检索。
示例性地,在根据步骤A5确定消息中间件的缓存中不存在检索结果后,对Elasticsearch数据库进行数据检索,得到当前检索条件的检索结果。
步骤A7:将检索结果写入消息中间件的缓存中。
示例性地,在根据步骤A6得到当前检索条件的检索结果后,会将该检索结果写消息中间件的缓存中,并返回该检索结果,本次流程结束。
示例性地,当医生端设备接收到下一时刻的检索请求时,继续按照上述步骤进行操作。这里,在每次进行数据检索,确定检索结果时均会记录响应时间,该响应时间可以为后续提升医生端设备的其它性能提供参考依据。
可以看出,本申请实施例旨在提供一种高性能的数据检索方式,与相关技术中把不同数据源的数据强行通过逻辑聚合在一起产生一个检索结果相比,本申请实施例通过将检索次数达到设定阈值的检索条件以及该检索条件的检索结果放入消息中间件的缓存中,使得之后若再次根据该检索条件进行检索时,可以直接在消息中间件的缓存中进行检索,进而,能够实现更高效的检索,提升使用者的满意度。
图3为本申请实施例的数据处理装置的组成结构示意图,该装置应用于互联网医院的医生端设备,如图3所示,该装置包括:存储模块300和检索模块301,其中:
存储模块300,用于从多种数据源中获取患者数据,将患者数据进行统一存储;
检索模块301,用于接收当前检索请求,根据当前检索请求,确定当前检索条件;若确定根据当前检索条件对统一存储的患者数据的检索次数大于或等于设定阈值,且消息中间件的缓存中不存在当前检索条件的检索结果,则将当前检索条件以及当前检索条件的检索结果放入消息中间件的缓存中。
在一些实施例中,存储模块300,用于将患者数据进行统一存储,包括:
将患者数据统一存储在Elasticsearch数据库中。
在一些实施例中,检索模块301,还用于:
若确定根据当前检索条件对统一存储的患者数据的检索次数大于或等于设定阈值,且消息中间件的缓存中不存在当前检索条件的检索结果时,对Elasticsearch数据库进行检索,得到当前检索条件的检索结果。
在一些实施例中,检索模块301,还用于:
若确定根据当前检索条件对统一存储的患者数据的检索次数小于设定阈值,则对当前检索条件执行次数累加操作,并对Elasticsearch数据库进行检索,得到当前检索条件的检索结果。
在一些实施例中,检索模块301,用于对当前检索条件执行次数累加操作,包括:
预先在消息中间件中设置一个哈希表;
将当前检索条件组合成一个域放入哈希表中,通过执行HINCRBY命令实现次数累加操作。
在一些实施例中,存储模块300,还用于:
通过消息中间件Kafka将患者数据上传至Elasticsearch数据库中进行统一存储。
在一些实施例中,检索模块301,用于:
若消息中间件的缓存中数据的存储时间达到过期时间,则确定消息中间件的缓存中数据过期。
在实际应用中,上述存储模块300和检索模块301均可以由位于电子设备中的处理器实现,该处理器可以为ASIC、DSP、DSPD、PLD、FPGA、CPU、控制器、微控制器、微处理器中的至少一种。
另外,在本实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对相关技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)或processor(处理器)执行本实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等多种可以存储程序代码的介质。
具体来讲,本实施例中的一种数据处理方法对应的计算机程序指令可以被存储在光盘、硬盘、U盘等存储介质上,当存储介质中的与一种数据处理方法对应的计算机程序指令被一电子设备读取或被执行时,实现前述实施例的任意一种数据处理方法。
基于前述实施例相同的技术构思,参见图4,其示出了本申请实施例提供的电子设备400,可以包括:存储器401和处理器402;其中,
存储器401,用于存储计算机程序和数据;
处理器402,用于执行存储器中存储的计算机程序,以实现前述实施例的任意一种数据处理方法。
在实际应用中,上述存储器401可以是易失性存储器(volatile memory),例如RAM;或者非易失性存储器(non-volatile memory),例如ROM、快闪存储器(flash memory)、硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD);或者上述种类的存储器的组合,并向处理器402提供指令和数据。
上述处理器402可以为ASIC、DSP、DSPD、PLD、FPGA、CPU、控制器、微控制器、微处理器中的至少一种。可以理解地,对于不同的数据处理设备,用于实现上述处理器功能的电子器件还可以为其它,本申请实施例不作具体限定。
在一些实施例中,本申请实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似之处可以互相参考,为了简洁,本文不再赘述。
本申请所提供的各方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本申请所提供的各产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
本申请所提供的各方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上,仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。
Claims (10)
1.一种数据处理方法,其特征在于,应用于互联网医院的医生端设备,所述方法包括:
从多种数据源中获取患者数据,将所述患者数据进行统一存储;
接收当前检索请求,根据所述当前检索请求,确定当前检索条件;若确定根据所述当前检索条件对所述统一存储的患者数据的检索次数大于或等于设定阈值,且消息中间件的缓存中不存在所述当前检索条件的检索结果,则将所述当前检索条件以及所述当前检索条件的检索结果放入所述消息中间件的缓存中。
2.根据权利要求1所述的方法,其特征在于,所述将所述患者数据进行统一存储,包括:
将所述患者数据统一存储在Elasticsearch数据库中。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若确定根据所述当前检索条件对所述统一存储的患者数据的检索次数大于或等于设定阈值,且消息中间件的缓存中不存在所述当前检索条件的检索结果时,对所述Elasticsearch数据库进行检索,得到所述当前检索条件的检索结果。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若确定根据所述当前检索条件对所述统一存储的患者数据的检索次数小于设定阈值,则对所述当前检索条件执行次数累加操作,并对所述Elasticsearch数据库进行检索,得到所述当前检索条件的检索结果。
5.根据权利要求4所述的方法,其特征在于,所述对所述当前检索条件执行次数累加操作,包括:
预先在所述消息中间件中设置一个哈希表;
将所述当前检索条件组合成一个域放入所述哈希表中,通过执行HINCRBY命令实现次数累加操作。
6.根据权利要求2所述的方法,其特征在于,所述方法还包括:
通过消息中间件Kafka将所述患者数据上传至所述Elasticsearch数据库中进行统一存储。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述消息中间件的缓存中数据的存储时间达到过期时间,则确定所述消息中间件的缓存中数据过期。
8.一种数据处理装置,其特征在于,应用于互联网医院的医生端设备,所述装置包括:
存储模块,用于从多种数据源中获取患者数据,将所述患者数据进行统一存储;
检索模块,用于接收当前检索请求,根据所述当前检索请求,确定当前检索条件;若确定根据所述当前检索条件对所述统一存储的患者数据的检索次数大于或等于设定阈值,且消息中间件的缓存中不存在所述当前检索条件的检索结果,则将所述当前检索条件以及所述当前检索条件的检索结果放入所述消息中间件的缓存中。
9.一种电子设备,其特征在于,所述设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现权利要求1至7任一项所述的方法。
10.一种计算机存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110578309.9A CN113314229A (zh) | 2021-05-26 | 2021-05-26 | 一种数据处理方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110578309.9A CN113314229A (zh) | 2021-05-26 | 2021-05-26 | 一种数据处理方法、装置、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113314229A true CN113314229A (zh) | 2021-08-27 |
Family
ID=77375013
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110578309.9A Pending CN113314229A (zh) | 2021-05-26 | 2021-05-26 | 一种数据处理方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113314229A (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103177005A (zh) * | 2011-12-21 | 2013-06-26 | 深圳市腾讯计算机系统有限公司 | 一种数据访问的处理方法和系统 |
CN103336849A (zh) * | 2013-07-24 | 2013-10-02 | 昆明理工大学 | 一种数据库检索系统中提高检索速度的方法及装置 |
CN104123238A (zh) * | 2014-06-30 | 2014-10-29 | 海视云(北京)科技有限公司 | 数据存储方法及装置 |
CN106844784A (zh) * | 2017-03-14 | 2017-06-13 | 上海网易小额贷款有限公司 | 数据缓存方法、装置及计算机可读存储介质 |
CN110109887A (zh) * | 2019-03-18 | 2019-08-09 | 北京宇信网景信息技术有限公司 | 数据检索方法、电子设备和计算机存储介质 |
CN110162528A (zh) * | 2019-05-24 | 2019-08-23 | 安徽芃睿科技有限公司 | 海量大数据检索方法及系统 |
WO2020029405A1 (zh) * | 2018-08-10 | 2020-02-13 | 网宿科技股份有限公司 | 一种数据发射方法及装置 |
CN110990439A (zh) * | 2019-12-13 | 2020-04-10 | 深圳前海环融联易信息科技服务有限公司 | 基于缓存的快速查询方法、装置、计算机设备及存储介质 |
CN111309768A (zh) * | 2020-02-20 | 2020-06-19 | 上海东普信息科技有限公司 | 信息检索方法、装置、设备及存储介质 |
CN112256733A (zh) * | 2020-10-19 | 2021-01-22 | 北京字节跳动网络技术有限公司 | 数据缓存方法、装置、电子设备及计算机可读存储介质 |
KR20210039732A (ko) * | 2019-10-02 | 2021-04-12 | 사단법인 한국건물에너지기술원 | 에너지 관련 데이터를 처리 및 관리하기 위한 장치 및 방법 |
CN112800152A (zh) * | 2019-11-13 | 2021-05-14 | 阿里巴巴集团控股有限公司 | 轨迹数据处理方法、装置和系统 |
-
2021
- 2021-05-26 CN CN202110578309.9A patent/CN113314229A/zh active Pending
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103177005A (zh) * | 2011-12-21 | 2013-06-26 | 深圳市腾讯计算机系统有限公司 | 一种数据访问的处理方法和系统 |
CN103336849A (zh) * | 2013-07-24 | 2013-10-02 | 昆明理工大学 | 一种数据库检索系统中提高检索速度的方法及装置 |
CN104123238A (zh) * | 2014-06-30 | 2014-10-29 | 海视云(北京)科技有限公司 | 数据存储方法及装置 |
CN106844784A (zh) * | 2017-03-14 | 2017-06-13 | 上海网易小额贷款有限公司 | 数据缓存方法、装置及计算机可读存储介质 |
WO2020029405A1 (zh) * | 2018-08-10 | 2020-02-13 | 网宿科技股份有限公司 | 一种数据发射方法及装置 |
CN110109887A (zh) * | 2019-03-18 | 2019-08-09 | 北京宇信网景信息技术有限公司 | 数据检索方法、电子设备和计算机存储介质 |
CN110162528A (zh) * | 2019-05-24 | 2019-08-23 | 安徽芃睿科技有限公司 | 海量大数据检索方法及系统 |
KR20210039732A (ko) * | 2019-10-02 | 2021-04-12 | 사단법인 한국건물에너지기술원 | 에너지 관련 데이터를 처리 및 관리하기 위한 장치 및 방법 |
CN112800152A (zh) * | 2019-11-13 | 2021-05-14 | 阿里巴巴集团控股有限公司 | 轨迹数据处理方法、装置和系统 |
CN110990439A (zh) * | 2019-12-13 | 2020-04-10 | 深圳前海环融联易信息科技服务有限公司 | 基于缓存的快速查询方法、装置、计算机设备及存储介质 |
CN111309768A (zh) * | 2020-02-20 | 2020-06-19 | 上海东普信息科技有限公司 | 信息检索方法、装置、设备及存储介质 |
CN112256733A (zh) * | 2020-10-19 | 2021-01-22 | 北京字节跳动网络技术有限公司 | 数据缓存方法、装置、电子设备及计算机可读存储介质 |
Non-Patent Citations (1)
Title |
---|
钟林森编著: "《分布式中间件技术实战 JAVA版》", 31 January 2020, 机械工业出版社, pages: 54 - 57 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107807796B (zh) | 一种基于超融合存储系统的数据分层方法、终端及系统 | |
US8775471B1 (en) | Representing user behavior information | |
CN106682097B (zh) | 一种处理日志数据的方法和装置 | |
US9952850B2 (en) | Automated firmware update with rollback in a data storage system | |
US11176128B2 (en) | Multiple access path selection by machine learning | |
US8140591B2 (en) | Enabling workflow awareness within a business process management (BPM) system | |
US8032494B2 (en) | Archiving engine | |
CN104281533B (zh) | 一种存储数据的方法及装置 | |
US20140324920A1 (en) | Object storage using multiple dimensions of object information | |
CN1278234C (zh) | 控制分布式数据的高速缓存操作的方法和系统 | |
US9313270B2 (en) | Adaptive asynchronous data replication in a data storage system | |
US20120023145A1 (en) | Policy-based computer file management based on content-based analytics | |
GB2518158A (en) | Method and system for data access in a storage infrastructure | |
US8001087B1 (en) | Method and apparatus for performing selective backup operations based on file history data | |
CN107924345B (zh) | 用于度量的聚合测量结果的数据存储区 | |
JP2011113563A (ja) | ドキュメント使用クラスタリングによるユーザタスク表現を近似するための方法 | |
CN114385674A (zh) | 一种平台消息跟踪方法、系统、装置及存储介质 | |
US10635635B2 (en) | Metering data in distributed storage environments | |
US9405786B2 (en) | System and method for database flow management | |
US11669402B2 (en) | Highly efficient native application data protection for office 365 | |
CN113314229A (zh) | 一种数据处理方法、装置、电子设备和存储介质 | |
CN113297245A (zh) | 获取执行信息的方法及装置 | |
CN109284833B (zh) | 为机器学习模型获取特征数据的方法、设备和存储介质 | |
US10528536B1 (en) | Managing data object versions in a storage service | |
US9898485B2 (en) | Dynamic context-based data protection and distribution |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |