CN114298525A - 一种数据库风险评估方法及装置 - Google Patents
一种数据库风险评估方法及装置 Download PDFInfo
- Publication number
- CN114298525A CN114298525A CN202111601599.0A CN202111601599A CN114298525A CN 114298525 A CN114298525 A CN 114298525A CN 202111601599 A CN202111601599 A CN 202111601599A CN 114298525 A CN114298525 A CN 114298525A
- Authority
- CN
- China
- Prior art keywords
- database
- metadata
- acquisition
- field
- acquired
- 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
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种数据库风险评估方法及装置,涉及数据处理领域,该数据库风险评估方法包括:根据各个数据库的开发环境,选择与待采集数据库对应的元数据采集方法;使用元数据采集方法,从待采集数据库所对应的元数据中采集出多个目标字段;根据多个目标字段的字段类型、字段长度以及字段命名方式对待采集数据库进行评估;当得到的评估值大于预设阈值时,确定待采集数据库为风险数据库。可见,实施这种实施方式,能够通过对元数据的采集,并基于元数据完成对数据库的风险评估,从而避免了避免对全部数据进行采集,进而能够提高风险评估的整体效率。
Description
技术领域
本申请涉及数据处理领域,具体而言,涉及一种数据库风险评估方法及装置。
背景技术
目前,在对数据库进行数据风险评估时,通常会采集数据库中的全部数据,并基于该全部数据进行全面的数据风险评估,从而确定出数据库是否存在风险。然而,该种方法在执行的过程中,会消耗大量的时间读取数据库中的全部数据,并需要大量的时间再去对全部数据进行评估。由此可见,目前的这种方法对数据库的风险评估效率极低。
发明内容
本申请实施例的目的在于提供一种数据库风险评估方法及装置,能够通过对元数据的采集,并基于元数据完成对数据库的风险评估,从而避免了避免对全部数据进行采集,进而能够提高风险评估的整体效率。
本申请实施例第一方面提供了一种数据库风险评估方法,包括:
根据各个数据库的开发环境,选择与待采集数据库对应的数据库风险评估方法;
使用所述数据库风险评估方法,从所述待采集数据库所对应的元数据中采集出多个目标字段;
根据所述多个目标字段的字段类型、字段长度以及字段命名方式对所述待采集数据库进行评估;
当得到的评估值大于预设阈值时,确定所述待采集数据库为风险数据库。
在上述实现过程中,该方法可以优先收录所有数据库的开发环境和数据库风险评估方法,当需要对数据库进行风险评估时,根据数据库的开发环境来选择对应的数据库风险评估方法;在选择出数据库风险评估方法之后,该方法可以使用该数据库风险评估方法从待采集数据库所对应的元数据中采集出多个目标字段;然后,该方法再根据多个目标字段的字段类型、字段长度以及字段命名方式对待采集数据库进行风险评估,得到评估值;当得到的评估值大于预设阈值时,该方法就确定待采集数据库为风险数据库。可见,实施这种实施方式,该方法能够根据对应的数据库确定对应的数据库风险评估方法,并根据该风险评估方法对数据库进行有效地风险评估,从而得到准确地风险评估结果;同时,该方法还能够通过使用元数据来替代以往对全部数据的使用,从而大大减少的数据采集量和风险评估量,进而有利于提高风险评估效率。
进一步地,所述根据各个数据库的开发环境,选择与待采集数据库对应的数据库风险评估方法的步骤包括:
在保存有数据库接口信息的Java数据库连接接口中获取与所述待采集数据库相对应的预设连接信息;
在保存有数据库风险评估方法的采集SQL数据库中获取与所述待采集数据库的开发环境相匹配的采集SQL;所述采集SQL用于在基于所述预设连接信息建立所述数据风险评估装置与所述待采集数据库之间的通讯连接后,采集元数据。
在上述实现过程中,该方法在根据各个数据库的开发环境,选择与待采集数据库对应的数据库风险评估方法的过程中,可以优先在保存有数据库接口信息的Java数据库连接接口中获取与待采集数据库相对应的预设连接信息;然后再通过该预设连接信息建立数据风险评估装置与待采集数据库之间的通讯连接;此后,再根据采集SQL数据库中寻找与待采集数据库相匹配的采集SQL,以使该采集SQL能够确定数据库风险评估方法。可见,实施这种实施方式,能够基于Java数据库连接接口(即JDBC)获取用于建立通讯连接的通讯信息,从而提高风险评估装置与各个数据库之间的综合连接能力;同时,该方法还能够通过SQL库确定与数据库风险评估方法相对应的采集SQL,并使用该采集SQL采集元数据,以使该元数据能够用于对数据库进行风险评估。
进一步地,所述使用所述数据库风险评估方法,从所述待采集数据库所对应的元数据中采集出多个目标字段的步骤包括:
根据各个数据库之间的数据依赖关系,获取与所述待采集数据库相关联的关联数据库;
根据所述关联数据库的开发环境,确定与所述关联数据库对应的关联采集SQL;
使用所述采集SQL,从所述待采集数据库所对应的元数据中采集出第一字段;
使用所述关联采集SQL,从所述关联数据库对应的元数据中采集出第二字段;
将所述第一字段以及所述第二字段作为所述目标字段。
在上述实现过程中,该方法在使用数据库风险评估方法,从待采集数据库所对应的元数据中采集出多个目标字段的过程中,可以优先根据各个数据库之间的数据依赖关系,获取与待采集数据库相关联的关联数据库;再根据关联数据库的开发环境,确定与关联数据库对应的关联采集SQL;然后再使用采集SQL,从待采集数据库所对应的元数据中采集出第一字段;同时使用关联采集SQL,从关联数据库对应的元数据中采集出第二字段;最后再将第一字段以及第二字段作为目标字段。可见,实施这种实施方式,能够获取到多个数据库中的字段,并将其作为目标字段,以使后续步骤根据该目标字段进行相应的风险分析,从而使得风险分析可以针对多个数据库,进而实现对多个数据库的风险分析方法。
进一步地,所述根据所述多个目标字段的字段类型、字段长度以及字段命名方式对所述待采集数据库进行评估的步骤包括:
判断所述元数据中表征数据库或者数据表格名称的字段命名方式是否符合预设命名方式;
判断所述元数据中所有字段的长度是否在预设范围内;
判断所述元数据中所有字段的类型是否为预设类型。
在上述实现过程中,该方法在根据多个目标字段的字段类型、字段长度以及字段命名方式对待采集数据库进行评估的过程中,可以判断元数据中表征数据库或者数据表格名称的字段命名方式是否符合预设命名方式;判断元数据中所有字段的长度是否在预设范围内;再判断元数据中所有字段的类型是否为预设类型;此时该方法可以获取到三个判断结果,以该三个判断结果为依据,能够确定出数据库是否为风险数据库。可见,实施这种实施方式,该方法能够提出一种基于各类标准对数据库元数据进行风险评估的方式,基于该种方式,该方法能够获取到一个评估结果,并使用该评估结果确定数据库是否具有风险,从而有利于提高对数据库进行风险评估的效率与准确程度。
进一步地,所述方法还包括:
当得到的评估值不大于预设阈值时,确定所述待采集数据库所对应的元数据的当前版本号;
判断所述当前版本号是否大于所述待采集数据库所对应的历史版本号;
当所述当前版本号大于所述历史版本号时,存储所述元数据,并将所述历史版本号更新为所述当前版本号。
在上述实现过程中,该方法还可以在得到的评估值不大于预设阈值时,确定所述待采集数据库所对应的元数据的当前版本号;然后,判断所述当前版本号是否大于所述待采集数据库所对应的历史版本号;最后,再在所述当前版本号大于所述历史版本号时,存储所述元数据,并将所述历史版本号更新为所述当前版本号。可见,实施这种实施方式,能够通过一种拉链存储的方式实现元数据与版本号的记录,从而使得元数据的存储不会占用过多空间,且查询起来较为方便。
本申请实施例第二方面提供了一种数据库风险评估装置,所述数据库风险评估装置包括:
选择单元,用于根据各个数据库的开发环境,选择与待采集数据库对应的元数据采集方法;
采集单元,用于使用所述元数据采集方法,从所述待采集数据库所对应的元数据中采集出多个目标字段;
评估单元,用于根据所述多个目标字段的字段类型、字段长度以及字段命名方式对所述待采集数据库进行评估;
确定单元,用于当得到的评估值大于预设阈值时,确定所述待采集数据库为风险数据库。
在上述实现过程中,该数据库风险评估装置可以通过选择单元来根据各个数据库的开发环境,选择与待采集数据库对应的元数据采集方法;通过采集单元来使用元数据采集方法,从待采集数据库所对应的元数据中采集出多个目标字段;通过评估单元来根据多个目标字段的字段类型、字段长度以及字段命名方式对待采集数据库进行评估;通过确定单元来当得到的评估值大于预设阈值时,确定待采集数据库为风险数据库。可见,实施这种实施方式,该方法能够根据对应的数据库确定对应的数据库风险评估方法,并根据该风险评估方法对数据库进行有效地风险评估,从而得到准确地风险评估结果;同时,该方法还能够通过使用元数据来替代以往对全部数据的使用,从而大大减少的数据采集量和风险评估量,进而有利于提高风险评估效率。
进一步地,所述选择单元包括:
第一获取子单元,用于在保存有数据库接口信息的Java数据库连接接口中获取与所述待采集数据库相对应的预设连接信息;
选择子单元,用于在保存有元数据采集方法的采集SQL数据库中获取与所述待采集数据库的开发环境相匹配的采集SQL;所述采集SQL用于在基于所述预设连接信息建立所述数据风险评估装置与所述待采集数据库之间的通讯连接后,采集元数据。
在上述实现过程中,该选择单元可以通过第一获取子单元在保存有数据库接口信息的Java数据库连接接口中获取与待采集数据库相对应的预设连接信息;通过选择子单元在保存有元数据采集方法的采集SQL数据库中获取与待采集数据库的开发环境相匹配的采集SQL;采集SQL用于在基于预设连接信息建立数据风险评估装置与待采集数据库之间的通讯连接后,采集元数据。可见,实施这种实施方式,能够基于Java数据库连接接口(即JDBC)获取用于建立通讯连接的通讯信息,从而提高风险评估装置与各个数据库之间的综合连接能力;同时,该方法还能够通过SQL库确定与数据库风险评估方法相对应的采集SQL,并使用该采集SQL采集元数据,以使该元数据能够用于对数据库进行风险评估。
进一步地,所述采集单元包括:
第二获取子单元,用于根据各个数据库之间的数据依赖关系,获取与所述待采集数据库相关联的关联数据库;
确定子单元,用于根据所述关联数据库的开发环境,确定与所述关联数据库对应的关联采集SQL;
采集子单元,用于使用所述采集SQL,从所述待采集数据库所对应的元数据中采集出第一字段;
所述采集子单元,还用于使用所述关联采集SQL,从所述关联数据库对应的元数据中采集出第二字段;
所述确定子单元,还用于将所述第一字段以及所述第二字段作为所述目标字段。
在上述实现过程中,该采集单元可以通过第二获取子单元来根据各个数据库之间的数据依赖关系,获取与待采集数据库相关联的关联数据库;通过确定子单元来根据关联数据库的开发环境,确定与关联数据库对应的关联采集SQL;通过采集子单元使用采集SQL,从待采集数据库所对应的元数据中采集出第一字段;通过采集子单元使用关联采集SQL,从关联数据库对应的元数据中采集出第二字段;通过确定子单元将第一字段以及第二字段作为目标字段。可见,实施这种实施方式,能够获取到多个数据库中的字段,并将其作为目标字段,以使后续步骤根据该目标字段进行相应的风险分析,从而使得风险分析可以针对多个数据库,进而实现对多个数据库的风险分析方法。
进一步地,所述评估单元包括:
第一判断子单元,用于判断所述元数据中表征数据库或者数据表格名称的字段命名方式是否符合预设命名方式;
第二判断子单元,用于判断所述元数据中所有字段的长度是否在预设范围内;
第三判断子单元,用于判断所述元数据中所有字段的类型是否为预设类型。
在上述实现过程中,该评估单元可以通过第一判断子单元判断元数据中表征数据库或者数据表格名称的字段命名方式是否符合预设命名方式;通过第二判断子单元判断元数据中所有字段的长度是否在预设范围内;通过第三判断子单元判断元数据中所有字段的类型是否为预设类型。可见,实施这种实施方式,该方法能够提出一种基于各类标准对数据库元数据进行风险评估的方式,基于该种方式,该方法能够获取到一个评估结果,并使用该评估结果确定数据库是否具有风险,从而有利于提高对数据库进行风险评估的效率与准确程度。
进一步地,所述数据库风险评估装置还包括:
所述确定单元,还用于当得到的评估值不大于预设阈值时,确定所述待采集数据库所对应的元数据的当前版本号;
判断单元,用于判断所述当前版本号是否大于所述待采集数据库所对应的历史版本号;
更新单元,用于当所述当前版本号大于所述历史版本号时,存储所述元数据,并将所述历史版本号更新为所述当前版本号。
在上述实现过程中,该数据库风险评估装置还可以通过确定单元在得到的评估值不大于预设阈值时,确定待采集数据库所对应的元数据的当前版本号;通过判断单元判断当前版本号是否大于待采集数据库所对应的历史版本号;通过更新单元在当前版本号大于历史版本号时,存储元数据,并将历史版本号更新为当前版本号。可见,实施这种实施方式,能够通过一种拉链存储的方式实现元数据与版本号的记录,从而使得元数据的存储不会占用过多空间,且查询起来较为方便。
本申请实施例第三方面提供了一种电子设备,包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行本申请实施例第一方面中任一项所述的数据库风险评估方法。
本申请实施例第四方面提供了一种计算机可读存储介质,其存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行本申请实施例第一方面中任一项所述的数据库风险评估方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种数据库风险评估方法的流程示意图;
图2为本申请实施例提供的一种数据库风险评估装置的结构示意图;
图3为本申请实施例提供的一种拉链式存储的举例示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
实施例1
请参看图1,图1为本申请实施例提供了一种数据库风险评估方法的流程示意图。其中,该数据库风险评估方法包括:
S101、根据各个数据库的开发环境,选择与待采集数据库对应的元数据采集方法。
本实施例中,开发环境用于指代软件开发环境(Software DevelopmentEnvironment,SDE)是指在基本硬件和数字软件的基础上,为支持数据库的工程化开发和维护而使用的一组软件,简称SDE。它由软件工具和环境集成机制构成,前者用以支持软件开发的相关过程、活动和任务,后者为工具集成和软件的开发、维护及管理提供统一的支持。
在本实施例中,该开发环境与数据库的类型有关。
本实施例中,上述的待采集数据库用于指代待采集数据库元数据的数据库。
本实施例中,一个数据库中包括的所有数据都具有各自的元数据。
在本实施例中,元数据(Metadata),又称中介数据、中继数据,为描述数据的数据(dataaboutdata),主要是描述数据属性(property)的信息,用来支持如指示存储位置、历史数据、资源查找、文件记录等功能。元数据算是一种电子式目录,为了达到编制目录的目的,必须在描述并收藏数据的内容或特色,进而达成协助数据检索的目的。
本实施例中,一个数据库具有一个数据库元数据。
在本实施例中,按照传统的定义,元数据(Metadata)是关于数据的数据。在数据仓库系统中,元数据可以帮助数据仓库管理员和数据仓库的开发人员非常方便地找到他们所关心的数据;元数据是描述数据仓库内数据的结构和建立方法的数据,可将其按用途的不同分为两类:技术元数据(TechnicalMetadata)和业务元数据(BusinessMetadata)。
在本实施例中,技术元数据是存储关于数据仓库系统技术细节的数据,是用于开发和管理数据仓库使用的数据,它主要包括以下信息:数据仓库结构的描述,包括仓库模式、视图、维、层次结构和导出数据的定义,以及数据集市的位置和内容;业务系统、数据仓库和数据集市的体系结构和模式;汇总用的算法,包括度量和维定义算法,数据粒度、主题领域、聚集、汇总、预定义的查询与报告;由操作环境到数据仓库环境的映射,包括源数据和它们的内容、数据分割、数据提取、清理、转换规则和数据刷新规则、安全(用户授权和存取控制)。业务元数据从业务角度描述了数据仓库中的数据,它提供了介于使用者和实际系统之间的语义层,使得不懂计算机技术的业务人员也能够"读懂"数据仓库中的数据。业务元数据主要包括以下信息:使用者的业务术语所表达的数据模型、对象名和属性名;访问数据的原则和数据的来源;系统所提供的分析方法以及公式和报表的信息;具体包括以下信息:企业概念模型:这是业务元数据所应提供的重要的信息,它表示企业数据模型的高层信息、整个企业的业务概念和相互关系。以这个企业模型为基础,不懂数据库技术和SQL语句的业务人员对数据仓库中的数据也能做到心中有数;多维数据模型:这是企业概念模型的重要组成部分,它告诉业务分析人员在数据集市当中有哪些维、维的类别、数据立方体以及数据集市中的聚合规则。这里的数据立方体表示某主题领域业务事实表和维表的多维组织形式;业务概念模型和物理数据之间的依赖:以上提到的业务元数据只是表示出了数据的业务视图,这些业务视图与实际的数据仓库或数据库、多维数据库中的表、字段、维、层次等之间的对应关系也应该在元数据知识库中有所体现。
在本实施例中,该方法使用的元数据即上述的业务元数据。
本实施例中,该方法使用的元数据起到了承上启下的作用,具体体现在以下几个方面:
元数据是进行数据集成所必需的数据仓库最大的特点就是它的集成性。这一特点不仅体现在它所包含的数据上,还体现在实施数据仓库项目的过程当中。一方面,从各个数据源中抽取的数据要按照一定的模式存入数据仓库中,这些数据源与数据仓库中数据的对应关系及转换规则都要存储在元数据知识库中;另一方面,在数据仓库项目实施过程中,直接建立数据仓库往往费时、费力,因此在实践当中,人们可能会按照统一的数据模型,首先建设数据集市,然后在各个数据集市的基础上再建设数据仓库。不过,当数据集市数量增多时很容易形成"蜘蛛网"现象,而元数据管理是解决"蜘蛛网"的关键。如果在建立数据集市的过程中,注意了元数据管理,在集成到数据仓库中时就会比较顺利;相反,如果在建设数据集市的过程中忽视了元数据管理,那么最后的集成过程就会很困难,甚至不可能实现。基于此,该方法可以基于元数据改写特性提高后续对数据库进行风险评估的效率。
同时,元数据定义的语义层可以帮助最终用户理解数据仓库中的数据最终用户不可能像数据仓库系统管理员或开发人员那样熟悉数据库技术,因此迫切需要有一个“翻译”,能够使他们清晰地理解数据仓库中数据的含意。元数据可以实现业务模型与数据模型之间的映射,因而可以把数据以用户需要的方式"翻译"出来,从而帮助最终用户理解和使用数据,进而帮助对数据库进行风险评估。
另外,元数据可以支持需求变化随着信息技术的发展和企业职能的变化,企业的需求也在不断地改变。如何构造一个随着需求改变而平滑变化的软件系统,是软件工程领域中的一个重要问题。传统的信息系统往往是通过文档来适应需求变化,但是仅仅依靠文档还是远远不够的。成功的元数据管理系统可以把整个业务的工作流、数据流和信息流有效地管理起来,使得系统不依赖特定的开发人员,从而提高系统的可扩展性。
作为一种可选的实施方式,在根据各个数据库的开发环境,选择与待采集数据库对应的元数据采集方法的步骤之前,该方法还包括:
确定待采集数据库。
作为一种可选的实施方式,确定用于存储业务数据的数据库的步骤包括:
确定业务数据的业务类型;
确定业务类型对应的数据库为用于存储业务数据的数据库。
作为一种可选的实施方式,确定用于存储业务数据的数据库的步骤包括:
确定业务数据的数据信息;
确定数据信息对应的数据库为用于存储业务数据的数据库。
作为一种可选的实施方式,根据各个数据库的开发环境,选择与待采集数据库对应的元数据采集方法的步骤包括:
在保存有数据库接口信息的Java数据库连接接口中获取与待采集数据库相对应的预设连接信息;
在保存有元数据采集方法的采集SQL数据库中获取与待采集数据库的开发环境相匹配的采集SQL;采集SQL用于在基于预设连接信息建立数据风险评估装置与待采集数据库之间的通讯连接后,采集元数据。
本实施例中,Java数据库连接接口为JDBC接口。具体的,JDBC是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。该方法中使用的JDBC是面向关系型数据库的。
在本实施例中,预设连接信息为客户端程序访问数据库时所需要的信息。
在本实施例中,预设连接信息包括与数据库相对应的用户名、与数据库相对应的密钥、与数据库相对应的URL以及与数据库相对应的数据库驱动;其中,URL用于表示数据库的连接地址,用户名和密钥用于登录数据库,数据库驱动用于驱动数据库。
实施这种实施方式,通过该种方法能够实现接口统一、规范、可扩展的效果。
本实施例中,数据库为关系型数据库。其中,关系型数据库是指采用了关系模型来组织数据的数据库。
本实施例中,该方法能够动态的根据数据库的数据库类型进行采集SQL的确定,以使采集SQL是准确对应数据库的。
在本实施例中,该方法可以通过内置的关系型元数据库风险评估器动态读取与数据库的元数据类型相对应的采集SQL,并完成相应采集。可见,实施这种实施方式,能够通过内置关系型元数据库风险评估器,使得该方法可以通过数据库类型动态读取采集SQL并完成采集;该过程只需要配置不同类型数据库的采集SQL,便可以实现对不同的数据库类型的动态支持效果。
本实施例中,数据库接口信息包括多个预设链接信息。
在本实施例中,预设链接信息包括用户名、用户密钥、数据库链接等等。
本实施例中,采集SQL用于采集数据库的数据库元数据。
在本实施例中,元数据采集方法与采集SQL相对应,多个采集SQL组成SQL数据库。
在本实施例中,采集SQL与数据库开发环境相关。具体的,采集SQL与数据库类型相关,不同的数据库具有不同的采集SQL类型。
实施这种实施方式,能够在根据各个数据库的开发环境,选择与待采集数据库对应的数据库风险评估方法的过程中,可以优先在保存有数据库接口信息的Java数据库连接接口中获取与待采集数据库相对应的预设连接信息;然后再通过该预设连接信息建立数据风险评估装置与待采集数据库之间的通讯连接;此后,再根据采集SQL数据库中寻找与待采集数据库相匹配的采集SQL,以使该采集SQL能够确定数据库风险评估方法。可见,该方法能够基于Java数据库连接接口(即JDBC)获取用于建立通讯连接的通讯信息,从而提高风险评估装置与各个数据库之间的综合连接能力;同时,该方法还能够通过SQL库确定与数据库风险评估方法相对应的采集SQL,并使用该采集SQL采集元数据,以使该元数据能够用于对数据库进行风险评估。
S102、使用元数据采集方法,从待采集数据库所对应的元数据中采集出多个目标字段。
本实施例中,元数据采集方法用于表示如何采集元数据以及采集哪些元数据的方法。
在本实施例中,使用元数据采集方法可以采集到多个目标字段。
作为一种可选的实施方式,使用元数据采集方法,从待采集数据库所对应的元数据中采集出多个目标字段的步骤包括:
根据各个数据库之间的数据依赖关系,获取与待采集数据库相关联的关联数据库;
根据关联数据库的开发环境,确定与关联数据库对应的关联采集SQL;
使用采集SQL,从待采集数据库所对应的元数据中采集出第一字段;
使用关联采集SQL,从关联数据库对应的元数据中采集出第二字段;
将第一字段以及第二字段作为目标字段。
实施这种实施方式,能够在使用数据库风险评估方法时,从待采集数据库所对应的元数据中采集出多个目标字段的过程中,可以优先根据各个数据库之间的数据依赖关系,获取与待采集数据库相关联的关联数据库;再根据关联数据库的开发环境,确定与关联数据库对应的关联采集SQL;然后再使用采集SQL,从待采集数据库所对应的元数据中采集出第一字段;同时使用关联采集SQL,从关联数据库对应的元数据中采集出第二字段;最后再将第一字段以及第二字段作为目标字段。可见,该方法能够获取到多个数据库中的字段,并将其作为目标字段,以使后续步骤根据该目标字段进行相应的风险分析,从而使得风险分析可以针对多个数据库,进而实现对多个数据库的风险分析方法。
S103、根据多个目标字段的字段类型、字段长度以及字段命名方式对待采集数据库进行评估。
本实施例中,字段类型可以为字符类型,即byte、short、int、long、float、double、char等。
作为一种可选的实施方式,根据多个目标字段的字段类型、字段长度以及字段命名方式对待采集数据库进行评估的步骤包括:
判断元数据中表征数据库或者数据表格名称的字段命名方式是否符合预设命名方式;
判断元数据中所有字段的长度是否在预设范围内;
判断元数据中所有字段的类型是否为预设类型。
实施这种实施方式,能够在根据多个目标字段的字段类型、字段长度以及字段命名方式对待采集数据库进行评估的过程中,可以判断元数据中表征数据库或者数据表格名称的字段命名方式是否符合预设命名方式;判断元数据中所有字段的长度是否在预设范围内;再判断元数据中所有字段的类型是否为预设类型;此时该方法可以获取到三个判断结果,以该三个判断结果为依据,能够确定出数据库是否为风险数据库。可见,该方法能够提出一种基于各类标准对数据库元数据进行风险评估的方式,基于该种方式,该方法能够获取到一个评估结果,并使用该评估结果确定数据库是否具有风险,从而有利于提高对数据库进行风险评估的效率与准确程度。
本实施例中,预设命名方式、预设范围、预设类型都是存储在一个数据库标准中的,该方法可以通过调用该标准来判断获取到的多个目标字段是否符合该标准。
举例来说,金融管理数据表格中为命名方式,当字段中的内容为金融管理表格时,该方法认为该表格的命名方式不符合预设的命名方式,故将其认为时有风险的。
S104、当得到的评估值大于预设阈值时,确定待采集数据库为风险数据库。
本实施例中,上述步骤中的判断结果如果有两个为是时,就认为该评估值是二。
本实施例中,评估值还可以是上述三个判断中,每个判断得到的符合百分比的平均值。如,不符合预设命名方式的有60%,不符合预设范围的有45%,不符合预设类型的有95%,那么评估值即为66.67%。
作为一种可选的实施方式,该方法还包括:
当得到的评估值不大于预设阈值时,确定待采集数据库所对应的元数据的当前版本号;
判断当前版本号是否大于待采集数据库所对应的历史版本号;
当前版本号大于历史版本号时,存储元数据,并将历史版本号更新为当前版本号。
本实施例中,该方法可以采用拉链式存储的方式对采集数据进行数据存储。在该种存储方式中,存储空间随着采集次数、时间的增大而变得稳定。
请参阅图3,图3示出了一种拉链式存储的举例示意图。其中,业务数据包括A、B、C,在2021-8-1这一天,A由版本1更新为版本2,B保持版本1未变。此时,该方法对更新了的A进行拉链式存储,对B不进行在存储。到了2021-8-2这一天,A由版本2更新为版本3,此时,该方法再对A进行拉链式存储。当到了2021-8-3这一天,A和C都保持版本3没有发生变化,此时,不对任何数据记性更新存储。可见,该过程中可以对更新的数据进行拉链是存储。
实施这种实施方式,能够通过拉链存储大幅节省存储空间。
实施这种实施方式,该方法还可以在得到的评估值不大于预设阈值时,确定待采集数据库所对应的元数据的当前版本号;然后,判断当前版本号是否大于待采集数据库所对应的历史版本号;最后,再在当前版本号大于历史版本号时,存储元数据,并将历史版本号更新为当前版本号。可见,该方法能够通过一种拉链存储的方式实现元数据与版本号的记录,从而使得元数据的存储不会占用过多空间,且查询起来较为方便
本实施例中,该方法还可以提供了一种数据库的动态风险评估方法,该方法可以优先接收业务数据,并确定用于存储业务数据的数据库;然后,再将业务数据存入数据库中,并采集与数据库相对应的数据库元数据;再后,对数据库元数据进行评估,得到评估结果;最后,当评估结果表示数据库出现风险时,确定业务数据为风险数据,并确定数据库为风险数据库。
在本实施例中,该方法在确定用于存储业务数据的数据库的过程中可以优先确定业务数据的业务类型;然后再确定业务类型对应的数据库为用于存储业务数据的数据库。还可以优先确定业务数据的数据信息;然后再确定数据信息对应的数据库为用于存储业务数据的数据库。
在本实施例中,该方法在根据采集SQL采集数据库的数据库元数据的过程中可优先在预设数据关系图表集合中,获取与数据库相对应的数据关系图表;然后再根据采集SQL,在数据库中采集与数据关系图表相对应的数据库元数据。
本实施例中,该方法的执行主体可以为计算机、服务器等计算装置,对此本实施例中不作任何限定。
在本实施例中,该方法的执行主体还可以为智能手机、平板电脑等智能设备,对此本实施例中不作任何限定。
可见,实施本实施例所描述的数据库风险评估方法,能够优先收录所有数据库的开发环境和数据库风险评估方法,当需要对数据库进行风险评估时,根据数据库的开发环境来选择对应的数据库风险评估方法;在选择出数据库风险评估方法之后,该方法可以使用该数据库风险评估方法从待采集数据库所对应的元数据中采集出多个目标字段;然后,该方法再根据多个目标字段的字段类型、字段长度以及字段命名方式对待采集数据库进行风险评估,得到评估值;当得到的评估值大于预设阈值时,该方法就确定待采集数据库为风险数据库。可见,实施这种实施方式,该方法能够根据对应的数据库确定对应的数据库风险评估方法,并根据该风险评估方法对数据库进行有效地风险评估,从而得到准确地风险评估结果;同时,该方法还能够通过使用元数据来替代以往对全部数据的使用,从而大大减少的数据采集量和风险评估量,进而有利于提高风险评估效率。
实施例2
请参看图2,图2为本申请实施例提供的一种数据库风险评估装置的结构示意图。如图2所示,该数据库风险评估装置包括:
选择单元210,用于根据各个数据库的开发环境,选择与待采集数据库对应的元数据采集方法;
采集单元220,用于使用元数据采集方法,从待采集数据库所对应的元数据中采集出多个目标字段;
评估单元230,用于根据多个目标字段的字段类型、字段长度以及字段命名方式对待采集数据库进行评估;
确定单元240,用于当得到的评估值大于预设阈值时,确定待采集数据库为风险数据库。
作为一种可选的实施方式,选择单元210包括:
第一获取子单元211,用于在保存有数据库接口信息的Java数据库连接接口中获取与待采集数据库相对应的预设连接信息;
选择子单元212,用于在保存有元数据采集方法的采集SQL数据库中获取与待采集数据库的开发环境相匹配的采集SQL;采集SQL用于在基于预设连接信息建立数据风险评估装置与待采集数据库之间的通讯连接后,采集元数据。
作为一种可选的实施方式,采集单元220包括:
第二获取子单元221,用于根据各个数据库之间的数据依赖关系,获取与待采集数据库相关联的关联数据库;
确定子单元222,用于根据关联数据库的开发环境,确定与关联数据库对应的关联采集SQL;
采集子单元223,用于使用采集SQL,从待采集数据库所对应的元数据中采集出第一字段;
采集子单元223,还用于使用关联采集SQL,从关联数据库对应的元数据中采集出第二字段;
确定子单元222,还用于将第一字段以及第二字段作为目标字段。
作为一种可选的实施方式,评估单元230包括:
第一判断子单元231,用于判断元数据中表征数据库或者数据表格名称的字段命名方式是否符合预设命名方式;
第二判断子单元232,用于判断元数据中所有字段的长度是否在预设范围内;
第三判断子单元233,用于判断元数据中所有字段的类型是否为预设类型。
作为一种可选的实施方式,数据库风险评估装置还包括:
确定单元240,还用于当得到的评估值不大于预设阈值时,确定待采集数据库所对应的元数据的当前版本号;
判断单元250,用于判断当前版本号是否大于待采集数据库所对应的历史版本号;
更新单元260,用于当当前版本号大于历史版本号时,存储元数据,并将历史版本号更新为当前版本号。
本实施例中,该开发环境与数据库的类型有关。
本实施例中,上述的待采集数据库用于指代待采集数据库元数据的数据库。
本实施例中,一个数据库中包括的所有数据都具有各自的元数据。
在本实施例中,元数据(Metadata),又称中介数据、中继数据,为描述数据的数据(dataaboutdata),主要是描述数据属性(property)的信息,用来支持如指示存储位置、历史数据、资源查找、文件记录等功能。元数据算是一种电子式目录,为了达到编制目录的目的,必须在描述并收藏数据的内容或特色,进而达成协助数据检索的目的。
本实施例中,一个数据库具有一个数据库元数据。
在本实施例中,按照传统的定义,元数据(Metadata)是关于数据的数据。在数据仓库系统中,元数据可以帮助数据仓库管理员和数据仓库的开发人员非常方便地找到他们所关心的数据;元数据是描述数据仓库内数据的结构和建立方法的数据,可将其按用途的不同分为两类:技术元数据(TechnicalMetadata)和业务元数据(BusinessMetadata)。
在本实施例中,该方法使用的元数据即上述的业务元数据。
本实施例中,Java数据库连接接口为JDBC接口。具体的,JDBC是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。该方法中使用的JDBC是面向关系型数据库的。
在本实施例中,预设连接信息为客户端程序访问数据库时所需要的信息。
在本实施例中,预设连接信息包括与数据库相对应的用户名、与数据库相对应的密钥、与数据库相对应的URL以及与数据库相对应的数据库驱动;其中,URL用于表示数据库的连接地址,用户名和密钥用于登录数据库,数据库驱动用于驱动数据库。
本实施例中,数据库为关系型数据库。其中,关系型数据库是指采用了关系模型来组织数据的数据库。
本实施例中,该方法能够动态的根据数据库的数据库类型进行采集SQL的确定,以使采集SQL是准确对应数据库的。
本实施例中,数据库接口信息包括多个预设链接信息。
在本实施例中,预设链接信息包括用户名、用户密钥、数据库链接等等。
本实施例中,采集SQL用于采集数据库的数据库元数据。
在本实施例中,元数据采集方法与采集SQL相对应,多个采集SQL组成SQL数据库。
在本实施例中,采集SQL与数据库开发环境相关。具体的,采集SQL与数据库类型相关,不同的数据库具有不同的采集SQL类型。
本实施例中,元数据采集方法用于表示如何采集元数据以及采集哪些元数据的方法。
在本实施例中,使用元数据采集方法可以采集到多个目标字段。
本实施例中,预设命名方式、预设范围、预设类型都是存储在一个数据库标准中的,该方法可以通过调用该标准来判断获取到的多个目标字段是否符合该标准。
本申请实施例中,对于数据库风险评估装置的解释说明可以参照实施例1中的描述,对此本实施例中不再多加赘述。
可见,可见,实施本实施例所描述的该数据库风险评估装置可以通过选择单元来根据各个数据库的开发环境,选择与待采集数据库对应的元数据采集方法;通过采集单元来使用元数据采集方法,从待采集数据库所对应的元数据中采集出多个目标字段;通过评估单元来根据多个目标字段的字段类型、字段长度以及字段命名方式对待采集数据库进行评估;通过确定单元来当得到的评估值大于预设阈值时,确定待采集数据库为风险数据库。可见,实施这种实施方式,该方法能够根据对应的数据库确定对应的数据库风险评估方法,并根据该风险评估方法对数据库进行有效地风险评估,从而得到准确地风险评估结果;同时,该方法还能够通过使用元数据来替代以往对全部数据的使用,从而大大减少的数据采集量和风险评估量,进而有利于提高风险评估效率。
本申请实施例提供了一种电子设备,包括存储器以及处理器,存储器用于存储计算机程序,处理器运行计算机程序以使电子设备执行本申请实施例1中任一项数据库风险评估方法。
本申请实施例提供了一种计算机可读存储介质,其存储有计算机程序指令,计算机程序指令被一处理器读取并运行时,执行本申请实施例1中任一项数据库风险评估方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的装置来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种数据库风险评估方法,其特征在于,所述方法包括:
根据各个数据库的开发环境,选择与待采集数据库对应的元数据采集方法;
使用所述元数据采集方法,从所述待采集数据库所对应的元数据中采集出多个目标字段;
根据所述多个目标字段的字段类型、字段长度以及字段命名方式对所述待采集数据库进行评估;
当得到的评估值大于预设阈值时,确定所述待采集数据库为风险数据库。
2.根据权利要求1所述的数据库风险评估方法,其特征在于,所述根据各个数据库的开发环境,选择与待采集数据库对应的元数据采集方法的步骤包括:
在保存有数据库接口信息的Java数据库连接接口中获取与所述待采集数据库相对应的预设连接信息;
在保存有元数据采集方法的采集SQL数据库中获取与所述待采集数据库的开发环境相匹配的采集SQL;所述采集SQL用于在基于所述预设连接信息建立所述数据风险评估装置与所述待采集数据库之间的通讯连接后,采集元数据。
3.根据权利要求2所述的数据库风险评估方法,其特征在于,所述使用所述元数据采集方法,从所述待采集数据库所对应的元数据中采集出多个目标字段的步骤包括:
根据各个数据库之间的数据依赖关系,获取与所述待采集数据库相关联的关联数据库;
根据所述关联数据库的开发环境,确定与所述关联数据库对应的关联采集SQL;
使用所述采集SQL,从所述待采集数据库所对应的元数据中采集出第一字段;
使用所述关联采集SQL,从所述关联数据库对应的元数据中采集出第二字段;
将所述第一字段以及所述第二字段作为所述目标字段。
4.根据权利要求1所述的数据库风险评估方法,其特征在于,所述根据所述多个目标字段的字段类型、字段长度以及字段命名方式对所述待采集数据库进行评估的步骤包括:
判断所述元数据中表征数据库或者数据表格名称的字段命名方式是否符合预设命名方式;
判断所述元数据中所有字段的长度是否在预设范围内;
判断所述元数据中所有字段的类型是否为预设类型。
5.根据权利要求1所述的数据库风险评估方法,其特征在于,所述方法还包括:
当得到的评估值不大于预设阈值时,确定所述待采集数据库所对应的元数据的当前版本号;
判断所述当前版本号是否大于所述待采集数据库所对应的历史版本号;
当所述当前版本号大于所述历史版本号时,存储所述元数据,并将所述历史版本号更新为所述当前版本号。
6.一种数据库风险评估装置,其特征在于,所述数据库风险评估装置包括:
选择单元,用于根据各个数据库的开发环境,选择与待采集数据库对应的元数据采集方法;
采集单元,用于使用所述元数据采集方法,从所述待采集数据库所对应的元数据中采集出多个目标字段;
评估单元,用于根据所述多个目标字段的字段类型、字段长度以及字段命名方式对所述待采集数据库进行评估;
确定单元,用于当得到的评估值大于预设阈值时,确定所述待采集数据库为风险数据库。
7.根据权利要求6所述的数据库风险评估装置,其特征在于,所述选择单元包括:
第一获取子单元,用于在保存有数据库接口信息的Java数据库连接接口中获取与所述待采集数据库相对应的预设连接信息;
选择子单元,用于在保存有元数据采集方法的采集SQL数据库中获取与所述待采集数据库的开发环境相匹配的采集SQL;所述采集SQL用于在基于所述预设连接信息建立所述数据风险评估装置与所述待采集数据库之间的通讯连接后,采集元数据。
8.根据权利要求7所述的数据库风险评估装置,其特征在于,所述采集单元包括:
第二获取子单元,用于根据各个数据库之间的数据依赖关系,获取与所述待采集数据库相关联的关联数据库;
确定子单元,用于根据所述关联数据库的开发环境,确定与所述关联数据库对应的关联采集SQL;
采集子单元,用于使用所述采集SQL,从所述待采集数据库所对应的元数据中采集出第一字段;
所述采集子单元,还用于使用所述关联采集SQL,从所述关联数据库对应的元数据中采集出第二字段;
所述确定子单元,还用于将所述第一字段以及所述第二字段作为所述目标字段。
9.根据权利要求6所述的数据库风险评估装置,其特征在于,所述评估单元包括:
第一判断子单元,用于判断所述元数据中表征数据库或者数据表格名称的字段命名方式是否符合预设命名方式;
第二判断子单元,用于判断所述元数据中所有字段的长度是否在预设范围内;
第三判断子单元,用于判断所述元数据中所有字段的类型是否为预设类型。
10.根据权利要求6所述的数据库风险评估装置,其特征在于,所述数据库风险评估装置还包括:
所述确定单元,还用于当得到的评估值不大于预设阈值时,确定所述待采集数据库所对应的元数据的当前版本号;
判断单元,用于判断所述当前版本号是否大于所述待采集数据库所对应的历史版本号;
更新单元,用于当所述当前版本号大于所述历史版本号时,存储所述元数据,并将所述历史版本号更新为所述当前版本号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111601599.0A CN114298525A (zh) | 2021-12-24 | 2021-12-24 | 一种数据库风险评估方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111601599.0A CN114298525A (zh) | 2021-12-24 | 2021-12-24 | 一种数据库风险评估方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114298525A true CN114298525A (zh) | 2022-04-08 |
Family
ID=80969355
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111601599.0A Pending CN114298525A (zh) | 2021-12-24 | 2021-12-24 | 一种数据库风险评估方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114298525A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115712623A (zh) * | 2022-11-22 | 2023-02-24 | 中国司法大数据研究院有限公司 | 一种基于捕获元数据变更的批量数据容错采集方法 |
-
2021
- 2021-12-24 CN CN202111601599.0A patent/CN114298525A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115712623A (zh) * | 2022-11-22 | 2023-02-24 | 中国司法大数据研究院有限公司 | 一种基于捕获元数据变更的批量数据容错采集方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10061816B2 (en) | Metric recommendations in an event log analytics environment | |
US9037579B2 (en) | Generating dynamic hierarchical facets from business intelligence artifacts | |
Bleifuß et al. | Exploring change: A new dimension of data analytics | |
US10095766B2 (en) | Automated refinement and validation of data warehouse star schemas | |
US20120072435A1 (en) | Multidimensional tags | |
CA2722320C (en) | Paging hierarchical data | |
US9946702B2 (en) | Digital processing system for transferring data for remote access across a multicomputer data network and method thereof | |
CN114116716A (zh) | 一种层次数据检索方法、装置和设备 | |
US20180121433A1 (en) | Discovery of data assets using metadata | |
WO2014028300A1 (en) | Managing cross-correlated data | |
JP2013513144A (ja) | ビュー内でデータ項目の注釈を取り出すための方法、装置、およびコンピュータ・プログラム | |
CN112199433A (zh) | 一种用于城市级数据中台的数据治理系统 | |
US10360239B2 (en) | Automated definition of data warehouse star schemas | |
Jin et al. | Personal web revisitation by context and content keywords with relevance feedback | |
Tešendić et al. | Business intelligence in the service of libraries | |
US10997504B2 (en) | Knowledge-driven generation of semantic layer | |
KR101829198B1 (ko) | 보고서의 중요도를 분석하는 메타 데이터 기반 온라인 분석 프로세싱 시스템 | |
CN114298525A (zh) | 一种数据库风险评估方法及装置 | |
Sheth et al. | Complex relationships and knowledge discovery support in the InfoQuilt system | |
CN107291951B (zh) | 数据处理方法、装置、存储介质和处理器 | |
US11308104B2 (en) | Knowledge graph-based lineage tracking | |
GB2479654A (en) | Subscription based retrieval from oil field database | |
CN113360496B (zh) | 一种构建元数据标签库的方法及装置 | |
CN116414854A (zh) | 数据资产查询方法、装置、计算机设备和存储介质 | |
CN116561114A (zh) | 一种基于元数据的管理方法 |
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 |