CN117874082A - 一种关联字典数据检索的方法及相关组件 - Google Patents

一种关联字典数据检索的方法及相关组件 Download PDF

Info

Publication number
CN117874082A
CN117874082A CN202410024500.2A CN202410024500A CN117874082A CN 117874082 A CN117874082 A CN 117874082A CN 202410024500 A CN202410024500 A CN 202410024500A CN 117874082 A CN117874082 A CN 117874082A
Authority
CN
China
Prior art keywords
dictionary data
json file
data
data table
dictionary
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
Application number
CN202410024500.2A
Other languages
English (en)
Inventor
王成
杨宏宁
王兴春
叶育兴
郭晓辉
聂金波
张承武
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Rhb Medical Tech Co ltd
Original Assignee
Shenzhen Rhb Medical Tech Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Rhb Medical Tech Co ltd filed Critical Shenzhen Rhb Medical Tech Co ltd
Priority to CN202410024500.2A priority Critical patent/CN117874082A/zh
Publication of CN117874082A publication Critical patent/CN117874082A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种关联字典数据检索的方法及相关组件,包括:将数据库中的所有类别的字典数据统一合并到单个的字典数据表中存储;判断数据库中是否存在与字典数据表对应的JSON文件;若存在JSON文件,则基于待查询业务数据表中的字典数据键在JSON文件中查询对应的值数据并进行转换,得到目标结果集并返回。本发明通过将字典数据统一化管理,从而便于字典数据的检索查询,然后根据得到的查询结果找出涉及字典数据键的字段,从JSON文件中找出对应字典数据键的值数据并进行转换,从而优化了软件数据库运行内存的占用,降低了软件资源配置需求,有利于提升键值数据转换的效率。

Description

一种关联字典数据检索的方法及相关组件
技术领域
本发明涉及数据检索技术领域,尤其涉及一种关联字典数据检索的方法及相关组件。
背景技术
在软件开发和数据库管理中,字典数据作为一种常见的数据结构,被广泛应用于各种软件应用中。字典数据是一系列以键值对存储的数据集合,例如性别、用户账号、行政区域、患肢分类、症状分类等。字典数据中单个键唯一且与之建立的键值对在单个软件中也是全局唯一的。在软件研发中,数据库业务数据表(如患者信息、处方信息、诊断信息等)定义存储数据时优先引用字典数据键,但在显示供用户查看时则一般将键转化为与之对应的字典值,这就要求在软件程序中进行字典数据检索并进行键值转换。
在传统的数据检索方法中,当涉及到字典数据时,通常需要使用SQL语句进行关联检索。然而,当数据表关联过多时,SQL语句可能会变得冗长且复杂,这增加了数据库的操作负载,消耗数据库运行资源。其次,在数据量大的情况下,执行SQL语句可能需要更长的时间,甚至可能导致死锁等问题。
发明内容
本发明的目的是提供一种关联字典数据检索的方法及相关组件,旨在解决现有技术使用SQL语句进行关联检索时,SQL语句冗长且复杂,执行SQL语句可能需要更长的时间的问题。
第一方面,本发明实施例提供一种关联字典数据检索的方法,包括:
将数据库中的所有类别的字典数据统一合并到单个的字典数据表中存储;
判断所述数据库中是否存在与所述字典数据表对应的JSON文件;
若存在所述JSON文件,则基于待查询业务数据表中的字典数据键在所述JSON文件中查询对应的值数据并进行转换,得到目标结果集并返回。
第二方面,本发明实施例提供一种关联字典数据检索的装置,包括:
合并存储单元,用于将数据库中的所有类别的字典数据统一合并到单个的字典数据表中存储;
判断单元,用于判断所述数据库中是否存在与所述字典数据表对应的JSON文件;
查询转换单元,用于若存在所述JSON文件,则基于待查询业务数据表中的字典数据键在所述JSON文件中查询对应的值数据并进行转换,得到目标结果集并返回。
第三方面,本发明实施例提供了一种计算机设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的关联字典数据检索的方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,其中所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行上述第一方面所述的关联字典数据检索的方法。
本发明实施例提供一种关联字典数据检索的方法及相关组件,包括:将数据库中的所有类别的字典数据统一合并到单个的字典数据表中存储;判断数据库中是否存在与字典数据表对应的JSON文件;若存在JSON文件,则基于待查询业务数据表中的字典数据键在JSON文件中查询对应的值数据并进行转换,得到目标结果集并返回。本发明实施例通过将字典数据统一化管理,从而便于字典数据的检索查询,然后根据得到的查询结果找出涉及字典数据键的字段,从JSON文件中找出对应字典数据键的值数据并进行转换,从而优化了软件数据库运行内存的占用,降低了软件资源配置需求,有利于提升键值数据转换的效率。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的关联字典数据检索的方法的流程示意图;
图2为本发明实施例提供的关联字典数据检索的方法的子流程示意图;
图3为本发明实施例提供的关联字典数据检索的装置的示意性框图;
图4为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1,图1为本发明实施例提供的关联字典数据检索的方法的流程示意图;
如图1所示,该方法包括步骤S101~S104。
S101、将数据库中的所有类别的字典数据统一合并到单个的字典数据表中存储;
该步骤中,字典数据是数据库中常见的一种用于保存键值对的数据结构,键值对,即一个字典数据键(简称“键”,key)和一个字典数据值(简称“值”,value)进行关联(或者说将键映射为值),某一类型字典数据中单个键唯一且与之建立的键值对在单个软件中也是全局唯一的。
S102、判断数据库中是否存在与字典数据表对应的JSON文件;
S103、若存在JSON文件,则基于待查询业务数据表中的字典数据键在JSON文件中查询对应的值数据并进行转换,得到目标结果集并返回;
S104、若不存在JSON文件,则将字典数据表转化为JSON文件。
步骤S102~S104中,在软件程序启动之前,定义使用JSON文件进行字典数据键值转化,在软件程序启动时,判断数据库中是否存在与字典数据表对应的JSON文件,其中,若软件程序为首次启动,则触发将字典数据表转化为JSON文件;若软件程序为非首次启动,则判定存在JSON文件,并可基于待查询业务数据表中的字典数据键在JSON文件中查询对应的值数据并进行转换,得到目标结果集并返回;
步骤S102~S104中,每次启动时进行判断数据库是否存在对应的JSON文件的判断,可以对文件系统和数据库检查,以确保相关资源可用并且正确地组织在一起。通过检查文件系统、查询数据库、验证文件存在性和处理错误情况,可以确保数据的一致性和完整性。其中,在进行此类操作时,重要的是要保持对数据库和文件系统的适当管理和维护,以确保数据的安全性和可用性。
本实施例中,通过将数据库中的所有类别的字典数据统一合并到单个的字典数据表中存储能够方便集中化管理,使得数据更易于维护,减少了多个字典数据表查询的时间和复杂性,优化软件数据库运行内存占用,降低软件资源配置需求,避免多个字典数据表之间的关联查询带来的性能问题。同时,因为数据库系统通常对单个字典数据表的查询有更好的优化,通过统一管理,可以提升查询效率,更好地控制字典数据的完整性和一致性,为后续的数据分析和报告提供了便利。
本实施例中,对字典数据创建对应的JSON文件,能够保证字典数据的持久化和可访问性,还可以方便地进行读取和修改字典数据的键值对,同时也便于备份和迁移。
本实施例中,通过使用JSON文件,SQL语句无需关联到字典数据表,从而可以减少SQL解析时间和数据表扫描,以及减少SQL语句执行耗时,降低数据库运行负载,可以更快速地根据业务数据表中的字典数据键查询到对应的值数据进行转换,提高查询效率。更具体的是,因软件程序通常情况下都是基于分页等条件检索特定数据集,一般不会出现业务数据表全量数据获取情况,所以业务数据表中的字典数据键从JSON文件中进行键值转换的耗时可忽略,且JSON文件数据查找优于数据库方式。此键值转换不局限于后端程序,前端脚本也可以完成,增加软件灵活、可配置性。
在一实施例中,关联字典数据检索的方法还包括:
若字典数据表中的字典数据发生变更,则更新JSON文件中对应发生变更的字典数据的值数据。
本实施例中,当字典数据表中的字典数据发生变更(如增删数据和修改数据)时,字典数据对应的键值发生变更,需要更新JSON文件中对应发生变更的字典数据的值数据,确保字典数据表和JSON文件之间保持同步;其中,字典数据是在数据库中发生变更,而对应的JSON文件需要增加新的线程异步进行修改。这种机制有利于维护数据的完整性和一致性,同时为应用程序和其他系统提供了快速和可靠的查询服务。在处理大型数据库或高流量的应用程序时,保持数据的一致性和同步变得尤为重要,因为这直接影响到用户体验和系统的可靠性。通过实施此步骤,可以大大提高系统的响应速度和数据准确性,从而提高整个系统的性能和效率。
在一实施例中,如图2所示,步骤S103包括步骤S201~S203。
S201、当调用待查询业务数据表进行数据检索时,程序执行SQL语句获取待查询结果集;
S202、根据待查询结果集获取字典数据键;
S203、调用键值转换程序,基于字典数据键从JSON文件中解密和读取出对应的值数据,得到目标结果集并返回。
本实施例中,通过SQL语句从业务数据表中检索数据。具体来说,首先根据特定的查询条件(如特定的键值、范围或其他筛选条件)构建一个SQL查询语句。这个查询语句可以是一个简单的SELECT语句,也可以包含更复杂的WHERE子句来限制结果集。然后,通过数据库连接或ORM框架执行这个SQL语句。数据库系统会根据这个查询条件从数据库中检索相应的数据行,并把这些数据行存储在一个结果集中。
本实施例中,在检索到查询结果集之后,再从查询结果集中提取出字典数据的键值。其中,键值通常会以列的形式在查询结果集中显示。但是,如果键值不是以列的形式给出,那么就需要解析每一行数据,以识别并提取出与字典数据相关的键值。
本实施例中,使用提取出的字典数据键来从JSON文件中检索相应的值数据,通常需要遍历JSON文件的内容,并根据字典数据表中的键值在JSON文件中查找相应的值数据。如果JSON文件中的数据被加密存储,那么在检索之前还需要进行解密操作。在找到相应的值数据后,将这些数据整合成一个目标结果集,并返回给调用者。
本实施例中,从通过SQL查询从业务数据表中检索数据,到从查询结果集中提取出字典数据的键值,再到使用这些键值从JSON文件中检索相应的值数据。SQL语句没有关联到字典数据表,从而可以提高数据的查询效率,并确保数据的完整性和一致性。通过使用JSON文件作为存储字典数据的备选机制,可以避免直接查询数据库,从而提高查询效率。同时,通过使用键值转换程序来从JSON文件中检索数据,可以确保数据的完整性和一致性。
在一实施例中,关联字典数据检索的方法还包括:
将字典数据表结构设置为按层级展开的树形结构。
本实施例中,通过将字典数据表设置为按层级展开的树形结构,可以更好地组织和展示数据之间的关系。这种结构不仅提高了数据的可读性,还有助于提高查询和管理的效率。在实施这一步骤时,关键在于根据业务需求和数据特点来确定合适的层级关系,并确保树形结构的完整性和性能优化。
在一实施例中,关联字典数据检索的方法还包括:
将JSON文件进行压缩加密处理后保存。
本实施例中,压缩可以减小文件大小,提高存储效率;通过对JSON文件进行压缩和加密处理,可以提高存储效率并确保软件内容的安全性,同时保护软件基础数据,防止未经授权的访问。在实施这一步骤时,应选择合适的压缩算法和加密算法,并确保密钥的安全性和保密性。同时,也需要考虑错误处理和安全性要求,以确保整个过程的可靠性和安全性。
本发明实施例还提供一种关联字典数据检索的装置,该关联字典数据检索的装置用于执行前述关联字典数据检索的方法的任一实施例。具体地,请参阅图3,图3是本发明实施例提供的关联字典数据检索的装置的示意性框图。
如图3所示,关联字典数据检索的装置300,包括:合并存储单元301、判断单元302、查询转换单元303和转化单元304。
合并存储单元301,用于将数据库中的所有类别的字典数据统一合并到单个的字典数据表中存储;
判断单元302,用于判断数据库中是否存在与字典数据表对应的JSON文件;
查询转换单元303,用于若存在JSON文件,则基于待查询业务数据表中的字典数据键在JSON文件中查询对应的值数据并进行转换,得到目标结果集并返回;
转化单元304,用于若不存在JSON文件,则将字典数据表转化为JSON文件。
本装置中,该关联字典数据检索的装置300通过将字典数据统一化管理,从而便于字典数据的检索查询,然后根据得到的查询结果找出涉及字典数据键的字段,从JSON文件中找出对应字典数据键的值数据并进行转换,从而优化了软件数据库运行内存的占用,降低了软件资源配置需求,有利于提升键值数据转换的效率。
上述关联字典数据检索的装置可以实现为计算机程序的形式,该计算机程序可以在如图4所示的计算机设备上运行。
请参阅图4,图4是本发明实施例提供的计算机设备的示意性框图。该计算机设备400是服务器,服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。
参阅图4,该计算机设备400包括通过系统总线401连接的处理器402、存储器和网络接口405,其中,存储器可以包括非易失性存储介质403和内存储器404。
该非易失性存储介质403可存储操作系统4031和计算机程序4032。该计算机程序4032被执行时,可使得处理器402执行关联字典数据检索的方法。
该处理器402用于提供计算和控制能力,支撑整个计算机设备400的运行。
该内存储器404为非易失性存储介质403中的计算机程序4032的运行提供环境,该计算机程序4032被处理器402执行时,可使得处理器402执行关联字典数据检索的方法。
该网络接口405用于进行网络通信,如提供数据信息的传输等。本领域技术人员可以理解,图4中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备400的限定,具体的计算机设备400可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
本领域技术人员可以理解,图4中示出的计算机设备的实施例并不构成对计算机设备具体构成的限定,在其他实施例中,计算机设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。例如,在一些实施例中,计算机设备可以仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图4所示实施例一致,在此不再赘述。
应当理解,在本发明实施例中,处理器402可以是中央处理单元(CentralProcessing Unit,CPU),该处理器402还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在本发明的另一实施例中提供计算机可读存储介质。该计算机可读存储介质可以为非易失性的计算机可读存储介质。该计算机可读存储介质存储有计算机程序,其中计算机程序被处理器执行时实现本发明实施例的关联字典数据检索的方法。
所述存储介质为实体的、非瞬时性的存储介质,例如可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的实体存储介质。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种关联字典数据检索的方法,其特征在于,包括:
将数据库中的所有类别的字典数据统一合并到单个的字典数据表中存储;
判断所述数据库中是否存在与所述字典数据表对应的JSON文件;
若存在所述JSON文件,则基于待查询业务数据表中的字典数据键在所述JSON文件中查询对应的值数据并进行转换,得到目标结果集并返回。
2.根据权利要求1所述的关联字典数据检索的方法,其特征在于,还包括:
若不存在所述JSON文件,则将所述字典数据表转化为JSON文件。
3.根据权利要求1所述的关联字典数据检索的方法,其特征在于,还包括:
若所述字典数据表中的字典数据发生变更,则更新所述JSON文件中对应发生变更的字典数据的值数据。
4.根据权利要求1所述的关联字典数据检索的方法,其特征在于,所述基于待查询业务数据表中的字典数据键在所述JSON文件中查询对应的值数据并进行转换,得到目标结果集并返回的步骤,包括:
当调用所述待查询业务数据表进行数据检索时,程序执行SQL语句获取待查询结果集;
根据所述待查询结果集获取字典数据键;
调用键值转换程序,基于所述字典数据键从所述JSON文件中解密和读取出对应的值数据,得到目标结果集并返回。
5.根据权利要求1所述的关联字典数据检索的方法,其特征在于,所述将数据库中的所有类别的字典数据统一合并到单个的字典数据表中存储的步骤之后,包括:
将所述字典数据表结构设置为按层级展开的树形结构。
6.根据权利要求2所述的关联字典数据检索的方法,其特征在于,所述将所述字典数据表转化为所述JSON文件的步骤之后,包括:
将所述JSON文件进行压缩加密处理后保存。
7.一种关联字典数据检索的装置,其特征在于,包括:
合并存储单元,用于将数据库中的所有类别的字典数据统一合并到单个的字典数据表中存储;
判断单元,用于判断所述数据库中是否存在与所述字典数据表对应的JSON文件;
查询转换单元,用于若存在所述JSON文件,则基于待查询业务数据表中的字典数据键在所述JSON文件中查询对应的值数据并进行转换,得到目标结果集并返回。
8.根据权利要求7所述的关联字典数据检索的装置,其特征在于,还包括:
转化单元,用于若不存在JSON文件,则将所述字典数据表转化为JSON文件。
9.一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6中任一项所述的关联字典数据检索的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行如权利要求1至6任一项所述的关联字典数据检索的方法。
CN202410024500.2A 2024-01-08 2024-01-08 一种关联字典数据检索的方法及相关组件 Pending CN117874082A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410024500.2A CN117874082A (zh) 2024-01-08 2024-01-08 一种关联字典数据检索的方法及相关组件

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410024500.2A CN117874082A (zh) 2024-01-08 2024-01-08 一种关联字典数据检索的方法及相关组件

Publications (1)

Publication Number Publication Date
CN117874082A true CN117874082A (zh) 2024-04-12

Family

ID=90592813

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410024500.2A Pending CN117874082A (zh) 2024-01-08 2024-01-08 一种关联字典数据检索的方法及相关组件

Country Status (1)

Country Link
CN (1) CN117874082A (zh)

Similar Documents

Publication Publication Date Title
US8725730B2 (en) Responding to a query in a data processing system
US11687546B2 (en) Executing conditions with negation operators in analytical databases
US8868595B2 (en) Enhanced control to users to populate a cache in a database system
US8924373B2 (en) Query plans with parameter markers in place of object identifiers
US11030242B1 (en) Indexing and querying semi-structured documents using a key-value store
US9218394B2 (en) Reading rows from memory prior to reading rows from secondary storage
CN111258966A (zh) 一种数据去重方法、装置、设备及存储介质
CN106407360B (zh) 一种数据的处理方法及装置
US20210209088A1 (en) Method and system to support indexing in row-group columnar storage
CN113051268A (zh) 数据查询方法、数据查询装置、电子设备及存储介质
CN112434015B (zh) 数据存储的方法、装置、电子设备及介质
KR20200094074A (ko) 인덱스 관리 방법, 장치, 기기 및 저장 매체
US10380115B2 (en) Cross column searching a relational database table
Kathare et al. A comprehensive study of Elasticsearch
US20070174329A1 (en) Presenting a reason why a secondary data structure associated with a database needs rebuilding
US7725468B2 (en) Improving efficiency in processing queries directed to static data sets
US20230153455A1 (en) Query-based database redaction
US11720563B1 (en) Data storage and retrieval system for a cloud-based, multi-tenant application
WO2023086322A1 (en) Late materialization of queried data in database cache
CN115658680A (zh) 数据存储方法、数据查询方法和相关装置
CN117874082A (zh) 一种关联字典数据检索的方法及相关组件
US20230418825A1 (en) Database system, database structure, and associated methods
US9659059B2 (en) Matching large sets of words
CN114064729A (zh) 一种数据检索方法、装置、设备及存储介质
US11954223B2 (en) Data record search with field level user access control

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