一种医疗日志信息查询方法、装置、电子设备及存储介质与流程

文档序号:31940975发布日期:2022-10-26 03:03阅读:129来源:国知局
一种医疗日志信息查询方法、装置、电子设备及存储介质与流程

1.本发明涉及数据查询技术领域,尤其涉及一种医疗日志信息查询方法、装置、电子设备及存储介质。


背景技术:

2.随着医疗信息化的不断发展,医疗业务也随之越来越复杂,医疗信息系统之间的交互越来越紧密,医疗信息系统之间交互所产生的交互数据日志也随之高速的增长。在通过将小文件合并成大文件存储后,存储时间要求三个月及以上,因此文件记录数量是亿级。随着数据量的增长,对于信息的查询往往需要较长的等待时间。


技术实现要素:

3.本发明提供了一种医疗日志信息查询方法、装置、电子设备及存储介质,用于解决现有的医疗日志信息查询受存储数据量影响往往需要较长的等待时间的技术问题。
4.本发明提供了一种医疗日志信息查询方法,包括:
5.当触发预设的查询功能时,接收查询参数;
6.根据所述查询参数确定待查询索引文件;
7.根据所述查询参数和所述待查询索引文件查询医疗日志信息。
8.可选地,所述根据所述查询参数确定待查询索引文件的步骤,包括:
9.从所述查询参数中获取开始时间和结束时间;
10.根据所述开始时间和所述结束时间计算查询时间范围;
11.通过所述查询时间范围获取待查询索引文件。
12.可选地,所述待查询索引文件由若干个分片组成;所述根据所述查询参数和所述待查询索引文件在预设服务器中查询医疗日志信息的步骤,包括:
13.当所述查询功能为消息日志检索功能或消息业务片段检索功能时,确定所述分片所在的物理机;
14.将所述查询参数发送至所述物理机;
15.接收所述物理机响应所述查询参数返回的查询结果;
16.合并所述查询结果,得到医疗日志信息。
17.可选地,所述合并所述查询结果,得到医疗日志信息的步骤,包括:
18.剔除所有查询结果中内容为空的查询结果,得到待合并查询结果;
19.将所述待合并查询结果按照时间倒序进行拼接,得到医疗日志信息。
20.可选地,所述根据所述查询参数和所述待查询索引文件查询医疗日志信息的步骤,包括:
21.当所述查询功能为消息详情查看功能时,根据所述查询参数在所述待查询索引文件中获取消息头和业务系统返回数据;
22.从所述查询参数中获取消息流水号;
23.通过所述消息流水号,在预设关联索引表中匹配记录数据;
24.从所述记录数据中获取消息体路径;
25.根据所述消息体路径在预设服务器中查找消息体数据;
26.组装所述消息头、所述业务系统返回数据和所述消息体数据,得到医疗日志信息。
27.可选地,所述根据所述查询参数和所述待查询索引文件查询医疗日志信息的步骤,包括:
28.当所述查询功能为消息统计功能时,从所述查询参数中获取服务类型和/或业务发生时间;
29.按照所述服务类型在所述待查询索引文件中查询所述服务类型对应的调用成功数、失败数、平均耗时、最大耗时;
30.和/或,
31.按照所述业务发生时间在所述待查询索引文件中查询业务调用次数。
32.本发明还提供了一种医疗日志信息查询装置,包括:
33.查询参数接收模块,用于当触发预设的查询功能时,接收查询参数;
34.待查询索引文件确定模块,用于根据所述查询参数确定待查询索引文件;
35.查询模块,用于根据所述查询参数和所述待查询索引文件查询医疗日志信息。
36.可选地,所述待查询索引文件确定模块,包括:
37.时间获取子模块,用于从所述查询参数中获取开始时间和结束时间;
38.查询时间范围计算子模块,用于根据所述开始时间和所述结束时间计算查询时间范围;
39.待查询索引文件获取子模块,用于通过所述查询时间范围获取待查询索引文件。
40.本发明还提供了一种电子设备,所述设备包括处理器以及存储器:
41.所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
42.所述处理器用于根据所述程序代码中的指令执行如上任一项所述的医疗日志信息查询方法。
43.本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储程序代码,所述程序代码用于执行如上任一项所述的医疗日志信息查询方法。
44.从以上技术方案可以看出,本发明具有以下优点:本发明公开了一种医疗日志信息查询方法,包括:当触发预设的查询功能时,接收查询参数;根据查询参数确定待查询索引文件;根据查询参数和待查询索引文件查询医疗日志信息。本发明通过建立医疗日志信息的索引信息,以通过索引信息进行医疗日志的查询,可以提高医疗日志信息的查询效率。
附图说明
45.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
46.图1为本发明实施例提供的一种医疗日志信息查询方法的步骤流程图;
47.图2为本发明实施例提供的副本机制数据流向图;
48.图3为本发明另一实施例提供的一种医疗日志信息查询方法的步骤流程图;
49.图4为本发明实施例提供的一种医疗日志信息查询装置的结构框图。
具体实施方式
50.本发明实施例提供了一种医疗日志信息查询方法、装置、电子设备及存储介质,用于解决现有的医疗日志信息查询受存储数据量影响往往需要较长的等待时间的技术问题。
51.为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
52.请参阅图1,图1为本发明实施例提供的一种医疗日志信息查询方法的步骤流程图。
53.本发明提供的一种医疗日志信息查询方法,具体可以包括以下步骤:
54.步骤101,当触发预设的查询功能时,接收查询参数;
55.医疗业务系统通过医疗信息平台进行服务交互过程中会产生三种种类的文件:消息体、消息体、消息响应。其中,消息头用来记录消息体经过所有应用详细记录;消息体是交互信息的载体;消息响应是消息到达业务系统后,业务返回的出参。
56.本发明将消息头、消息响应以小文件合并生成大文件后,与消息体分别存储在不同的分布式服务器中。
57.为了满足对医疗信息化测评的要求(服务运行状况监控对服务数量、消息总数、出错消息统计、基于平台的接口服务运行日志等进行直观的统计、检索、展示功能),本发明针对消息头和消息响应生成的大文件以及消息体,按照查询需求,生成多个查询功能。当触发不同的查询功能时,可以根据接收到的用户输入的查询参数进行查询。其中,不用的查询功能对应的查询参数有所不同。
58.在一个示例中,预设的查询功能可以包括以下四种:
59.1)、消息日志检索功能:包括利用开始时间、结束时间、服务类型、发送方、接收方进行检索对应的日志信息,其对应的查询参数包括:业务发生时间、发送方信息、接收方信息、服务类型。
60.2)、消息业务片段检索功能:包括利用开始时间、结束时间、服务类型、发送方、接收方、业务关键字进行消息检索,其对应的查询参数包括:业务发生时间、发送方信息、接收方信息、服务类型、业务关键字(门诊号、门诊流水号、门诊就诊次数、住院号、住院流水号、住院就诊次数)。
61.3)、消息详情查询功能:包括利用消息流水号,查看整个消息闭环、各业务系统接口返回的出参信息、消息体信息,其对应的查询参数包括:消息流水号、通过消息流水号在文件夹服务器查找对应的消息体信息。
62.4)、消息统计功能:包括按照服务类型来统计每个服务类型的调用成功数、失败数、平均耗时、最大耗时;按照业务发生时间统计总服务的调用次数,以上两种消息统计对应的查询参数包括业务发生时间、服务类型、耗时、是否成功。
63.步骤102,根据查询参数确定待查询索引文件;
64.在接收到查询参数后,可以根据参数参数在预设的文件服务器中筛选待查询索引文件。其中,查询参数中记载的数据可以为待查询索引文件的查询索引。
65.在一个示例中,可以将索引按照存放的值类型进行存储,如交易流水号,因其使用频率高,且具有唯一性,则作为索引主键进行存储,如业务发生时间,则按照使用日期类型进行存储。
66.对于需要统计分析的索引,以及需要进行排序的索引,将其建立键值对模式进行缓存,其中键存主键索引,值存对应需要统计分析的节点。在具体进行统计时,只需要对键值对中的值进行统计分析,得到分析结果后,再通过键值对反向找到键值对中的值,再通过值找到对应的消息记录。如需要统计分析消息处理的评价耗时、最大耗时、最小耗时,调用总次数、成功次数、失败次数等,此时在进行统计查询时,可以利用空间换时间的概念提升查询效率。
67.在通过消息流水号在文件服务器中查找对应的消息体数据时,为了提升查询速度,可以在文件服务器中建议关联索引表,其中以消息流水号作为主键索引,与消息体路径一对一进行关联。在需要获取消息体时,首先通过消息流水号在关联索引表中找到对应的记录,并根据记录中的消息体路径找到对应的消息体文件,以此种方式来提升查询效率。
68.在本发明实施例中,还可以对存储的索引文件设置按天自动创建索引文件。由于每天新增数据量太大,如将所有的数据放在一个索引文件中,会导致查询效率低下或者直接无法查询等问题,因此需要将索引文件按照天来进行创建。此种方法不仅能大大的提升查询效率,也方便按照索引文件清除历史数据。
69.进一步地,针对索引,还可以有以下操作:
70.1)、对数据进行的冷热索引分离:根据数据的使用场景、数据查询频率,可以对数据进行冷热分离,并存储在不同的索引中,从而来提升索引的查询效率;
71.2)、配置合适查询熔断时间。当出现查询内容过大或服务异常时,因为查询调用接口设置熔断时间,对出现查询异常的情况及时熔断,以防止因查询导致服务器资源耗尽或服务器宕机;
72.3)、定期清除缓存索引中非热点数据:由于在缓存索引中非经常访问的热点数据,每次自动进行删除后不会立即从缓存中进行实际的删除,而是产生一个删除标识文件来记录删除动作。随着删除操作的增长,删除标记文件会越来也多。当我们进行查询操作的时候,这部分即将被删除的数据还会参与检索中,删除标记的文件数越多,查询过滤过程越长,进而影响查询的效率。当文件服务器空闲时,可以通过自动删除制定将这部分删除标识文件从缓存索引中进行删除,来提升查询的效率;
73.4)、对经常查询的索引、热点服务进行数据预热:文件服务器缓存内存是有限的,无法将所有的数据放入缓存空间,而从磁盘直接检索将耗费大量的资源,以及导致检索时间变长,因此通过对数据预热,将近期一定时间内产生的索引或经常查询的索引进行,通过放入缓存区,以提高基于索引的查询效率;
74.5)、合理的配置索引缓存内存占比:对于数据检索时,虽然内存越大越好,但是也不能将所有的内存都分配给查询检索功能,而要留出一定的内存空间用于数据的写入,因此建议缓存所占物理内存为总物理内存的60%左右即可;
75.6)、通过分布式部署文件服务器来提升数据文件的存储和检索的效率;
76.7)、文件服务器新增索引自动分片功能,把数据分发到多个存储碎片索引的物理机上,使其超出单机容量信息的目的,从而提升查询检索的处理效率;
77.8)、在文件服务器上构建高可用架构的副本机制,来保障数据的完整性,其中副本机制对索引中的每个分片创建冗余的副本,处理查询时可以把这些副本当做主分片来对待(主分片),此外副本机制提供了高可用和数据安全的保障,当分片所在的机器宕机,文件服务器可以使用其副本进行恢复,从而避免数据丢失,具体的数据流向图如图2所示;
78.9)、对数据文件建立倒排索引。可以根据具体的内容来查看对应的完整消息信息,此时我们可以对数据中的关键词或关键内容,建立倒排索引,这样不仅可以实现对数据的压缩,减少查询对磁盘io及对内存的消耗,也能提升查询性能。
79.步骤103,根据查询参数和待查询索引文件查询医疗日志信息。
80.在获取到查询参数和待查询索引文件后,可以根据查询参数和待查询索引文件查询医疗日志信息。其中医疗日志信息可以包括上述提及的消息头和消息响应,还可以包括消息体。
81.本发明公开了一种医疗日志信息查询方法,包括:当触发预设的查询功能时,接收查询参数;根据查询参数确定待查询索引文件;根据查询参数和待查询索引文件查询医疗日志信息。本发明通过建立医疗日志信息的索引信息,以通过索引信息进行医疗日志的查询,可以提高医疗日志信息的查询效率。
82.请参阅图3,图3为本发明另一实施例提供的一种医疗日志信息查询方法的步骤流程图。具体可以包括:
83.步骤301,当触发预设的查询功能时,接收查询参数;
84.步骤301与步骤101相同,具体可以参考步骤101的描述,此处不再赘述。
85.步骤302,从查询参数中获取开始时间和结束时间;
86.步骤303,根据开始时间和结束时间计算查询时间范围;
87.步骤304,通过查询时间范围获取待查询索引文件;
88.在接收到查询参数后,可以从查询参数中获取查询的开始时间和结束时间(若结束时间为空,则默认为当前时间),以根据开始时间和结束时间确定查询时间范围,并从查询时间范围内获取对应的查询索引文件。
89.步骤305,根据查询参数和待查询索引文件查询医疗日志信息。
90.在获取到查询参数和待查询索引文件后,可以根据查询参数和待查询索引文件查询医疗日志信息。其中医疗日志信息可以包括上述提及的消息头和消息响应,还可以包括消息体。
91.在一个示例中,待查询索引文件由若干个分片组成;根据查询参数和待查询索引文件在预设服务器中查询医疗日志信息的步骤,可以包括:
92.s11,当查询功能为消息日志检索功能或消息业务片段检索功能时,确定分片所在的物理机;
93.s12,将查询参数发送至物理机;
94.s13,接收物理机响应查询参数返回的查询结果;
95.s14,合并查询结果,得到医疗日志信息。
96.在具体实现中,当查询功能为消息日志检索功能或消息业务片段检索功能时,可以确定存储待查询索引文件的分片的物理机,并将查询参数发送至对应的物理机进行查询。接着接收物理机返回的查询结果,合并查询结果得到所需的医疗日志信息。一般为消息头和消息响应合成的大文件。
97.其中,步骤s14可以包括以下子步骤:
98.s141,剔除所有查询结果中内容为空的查询结果,得到待合并查询结果;
99.s142,将待合并查询结果按照时间倒序进行拼接,得到医疗日志信息。
100.在具体实现中,可以将待查询索引文件的查询结果中内容为空的查询结果剔除,然后将剩余查询结果作为待合并查询结果按照时间倒序进行拼接,得到所需要的医疗日志信息。
101.在另一个示例中,根据查询参数和待查询索引文件查询医疗日志信息的步骤,包括:
102.s21,当查询功能为消息详情查看功能时,根据查询参数在待查询索引文件中获取消息头和业务系统返回数据;
103.s22,从查询参数中获取消息流水号;
104.s23,通过消息流水号,在预设关联索引表中匹配记录数据;
105.s24,从记录数据中获取消息体路径;
106.s25,根据消息体路径在预设服务器中查找消息体数据;
107.s26,组装消息头、业务系统返回数据和消息体数据,得到医疗日志信息。
108.在具体实现中,当查询功能为消息详情查看功能时,可以根据查询参数在待查询索引文件中获取消息头和业务系统返回数据(也即消息响应)。然后根据消息流水号,在预设关联索引表中匹配记录数据;再根据记录数据获取消息体路径,根据消息体路径在预设服务器中查找消息体数据;然后组装消息体、业务系统返回数据和消息体数据,得到医疗日志信息。
109.在另一个示例中,根据查询参数和待查询索引文件查询医疗日志信息的步骤,包括:
110.s31,当查询功能为消息统计功能时,从查询参数中获取服务类型和/或业务发生时间;
111.s32,按照服务类型在待查询索引文件中查询服务类型对应的调用成功数、失败数、平均耗时、最大耗时;
112.和/或,
113.按照业务发生时间在待查询索引文件中查询业务调用次数。
114.在具体实现中,当查询功能为消息统计功能时,可以从查询参数中获取服务类型和/或业务发生时间进行医疗日志信息查询。
115.当获取的是服务类型时,可以按照服务类型在待查询索引文件中查询服务类型对应的调用成功数、失败数、平均耗时、最大耗时作为所要查询的医疗日志信息。
116.当获取的是业务发生时间时,可以按照业务发生时间在待查询文件中查询业务调用次数作为医疗日志信息。
117.当获取的是服务类型和业务发生时间时,则可以同时按照服务类型和业务发生时
间进行查询。
118.本发明公开了一种医疗日志信息查询方法,包括:当触发预设的查询功能时,接收查询参数;根据查询参数确定待查询索引文件;根据查询参数和待查询索引文件查询医疗日志信息。本发明通过建立医疗日志信息的索引信息,以通过索引信息进行医疗日志的查询,可以提高医疗日志信息的查询效率。
119.请参阅图4,图4为本发明实施例提供的一种医疗日志信息查询装置的结构框图。
120.本发明实施例提供了一种医疗日志信息查询装置,包括:
121.查询参数接收模块401,用于当触发预设的查询功能时,接收查询参数;
122.待查询索引文件确定模块402,用于根据查询参数确定待查询索引文件;
123.查询模块403,用于根据查询参数和待查询索引文件查询医疗日志信息。
124.在本发明实施例中,待查询索引文件确定模块402,包括:
125.时间获取子模块,用于从查询参数中获取开始时间和结束时间;
126.查询时间范围计算子模块,用于根据开始时间和结束时间计算查询时间范围;
127.待查询索引文件获取子模块,用于通过查询时间范围获取待查询索引文件。
128.在本发明实施例中,待查询索引文件由若干个分片组成;查询模块403,包括:
129.物理机确定子模块,用于当查询功能为消息日志检索功能或消息业务片段检索功能时,确定分片所在的物理机;
130.询参数发送子模块,用于将查询参数发送至物理机;
131.查询结果接收子模块,用于接收物理机响应查询参数返回的查询结果;
132.查询结果合并子模块,用于合并查询结果,得到医疗日志信息。
133.在本发明实施例中,查询结果合并子模块,包括:
134.待合并查询结果生成单元,用于剔除所有查询结果中内容为空的查询结果,得到待合并查询结果;
135.拼接单元,用于将待合并查询结果按照时间倒序进行拼接,得到医疗日志信息。
136.在本发明实施例中,查询模块403,包括:
137.消息头和业务系统返回数据获取子模块,用于当查询功能为消息详情查看功能时,根据查询参数在待查询索引文件中获取消息头和业务系统返回数据;
138.消息流水号获取子模块,用于从查询参数中获取消息流水号;
139.记录数据匹配子模块,用于通过消息流水号,在预设关联索引表中匹配记录数据;
140.消息体路径获取子模块,用于从记录数据中获取消息体路径;
141.消息体数据查找子模块,用于根据消息体路径在预设服务器中查找消息体数据;
142.组装子模块,用于组装消息头、业务系统返回数据和消息体数据,得到医疗日志信息。
143.在本发明实施例中,查询模块403,包括:
144.服务类型和/或业务发生时间获取子模块,用于当查询功能为消息统计功能时,从查询参数中获取服务类型和/或业务发生时间;
145.查询子模块,用于按照服务类型在待查询索引文件中查询服务类型对应的调用成功数、失败数、平均耗时、最大耗时;
146.和/或,
147.按照业务发生时间在待查询索引文件中查询业务调用次数。
148.本发明实施例还提供了一种电子设备,设备包括处理器以及存储器:
149.存储器用于存储程序代码,并将程序代码传输给处理器;
150.处理器用于根据程序代码中的指令执行本发明实施例的医疗日志信息查询方法。
151.本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质用于存储程序代码,程序代码用于执行本发明实施例的医疗日志信息查询方法。
152.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
153.本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
154.本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
155.本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
156.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
157.这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
158.尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
159.最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要
素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
160.以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1