数据清洗方法、系统、存储介质及电子设备技术方案

技术编号:21034155 阅读:63 留言:0更新日期:2019-05-04 05:23
本发明专利技术提供一种数据清洗方法、系统、存储介质及电子设备,所述数据清洗方法包括:选择目标数据源并从所述目标数据源中选择目标源表,以确定清洗数据来源;选择待清洗的ES集群中待清洗的索引;基于所述目标数据源及待清洗的ES集群生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图;根据所述待清洗的索引和所述拓扑图制定清洗规则,所述清洗规则指示所述目标源表的字段与待清洗的索引的字段之间的映射;根据所述映射从所述目标数据源中捞取相应的数据至所述待清洗的索引以同步所述待清洗的ES集群。本发明专利技术具有灵活且易实现的特点,可以极大提高数据清洗的效率,降低数据同步的出错率。

【技术实现步骤摘要】
数据清洗方法、系统、存储介质及电子设备
本专利技术涉及计算机
,尤其涉及一种数据清洗方法、系统、存储介质及电子设备。
技术介绍
ElasticSearch(ES)是一个基于Lucene(一开放源代码的全文检索引擎工具包)的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,在互联网架构中作为非关系型数据库应用及其广泛。当前一般的使用场景是结构化的数据储存在传统的关系型数据库中,比如mysql,oracle;非结构化的数据存储在非关系型数据库中,比如elasticsearch、solr。而且对于大型综合平台,通常涉及到多个模块,为了保证数据的安全性,以及平台之间的解耦,隔离,容灾。同样的数据会散布到关系型数据库和非关系型数据库中,而非关系型数据库往往作为提高搜索性能使用。ES集群中有一个或多个节点,其中有一个为主节点,这个主节点是可以通过选举产生的,主从节点是对于集群内部来说的。ES的一个概念就是去中心化,字面上理解就是无中心节点,这是对于集群外部来说的,因为从外部来看ES集群,在逻辑上是个整体,你与任何一个节点的通信和与整个ES集群通信是等价的。ES可以把一个完整的索引分成多个分片,这样的好处是可以把一个大的索引拆分成多个,分布到不同的节点上。构成分布式搜索。分片的数量只能在索引创建前指定,并且索引创建后不能更改。ES可以设置多个索引的副本,副本的作用一是提高系统的容错性,当某个节点某个分片损坏或丢失时可以从副本中恢复。二是提高ES的查询效率,ES会自动对搜索请求进行负载均衡。ES在有节点加入或退出时会根据机器的负载对索引分片进行重新分配,挂掉的节点重新启动时也会进行数据恢复。在数据存储领域往往是一些系统使用关系型数据库管理数据,同时将多个关系型数据的数据同步到NOSQL数据库中以供另一些系统使用,特别是涉及到对搜索的实时性要求比较高,搜索复杂度高的检索。这就带来一个数据的一致性问题。而现有技术中的数据清洗方法的实现较为复杂,且难以保证数据同步的准确性。
技术实现思路
针对现有技术中的问题,本专利技术的目的在于提供一种数据清洗方法、系统、存储介质及电子设备,以提高数据清洗的效率,降低数据同步的出错率。根据本专利技术的一方面,提供一种数据清洗方法,所述数据清洗方法包括:选择目标数据源并从所述目标数据源中选择目标源表,以确定清洗数据来源;选择待清洗的ES集群中待清洗的索引;基于所述目标数据源及待清洗的ES集群生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图;根据所述待清洗的索引和所述拓扑图制定清洗规则,所述清洗规则指示所述目标源表的字段与待清洗的索引的字段之间的映射;根据所述映射从所述目标数据源中捞取相应的数据至所述待清洗的索引以同步所述待清洗的ES集群。在本专利技术的一实施方式中,所述选择目标数据源的步骤之后还包括:测试所述目标数据源的连接。在本专利技术的一实施方式中,所述根据所述映射从所述目标数据源中捞取相应的数据至所述待清洗的索引以同步所述待清洗的ES集群的步骤之前包括:对所述目标数据源中待捞取数据的类型进行校验。在本专利技术的一实施方式中,所述选择待清洗的ES集群中待清洗的索引包括:自待清洗的ES集群中选择待检查的索引;检查各ES集群中的待检查的索引的健康值,以选择待清洗的索引。在本专利技术的一实施方式中,所述自待清洗的ES集群中选择待检查的索引之前包括:检查所述待清洗的ES集群的健康状态,以选择待检查的索引。在本专利技术的一实施方式中,所述基于所述目标数据源及待清洗的ES集群生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图的步骤包括:基于所述目标数据源生成指示所述目标数据源的数据结构的第一拓扑图;基于所述待清洗的ES集群生成指示所述待清洗的ES集群的数据结构的第二拓扑图。在本专利技术的一实施方式中,所述根据所述待清洗的索引和所述拓扑图制定清洗规则的步骤包括:接收用户的第一操作,所述第一操作指示所述第一拓扑图中的字段;接收用户的第二操作,所述第二操作指示所述第二拓扑图中的字段;根据所述第一操作指示所述第一拓扑图中的字段及所述第二操作指示所述第二拓扑图中的字段确定所述清洗规则中待映射的所述目标源表的字段与待清洗的索引的字段。根据本专利技术的另一方面,提供一种数据清洗系统,所述数据清洗系统包括:第一选择模块,用以选择目标数据源并从所述目标数据源中选择目标源表,以确定清洗数据来源;第二选择模块,用以选择待清洗的ES集群中待清洗的索引;拓扑图生成模块,用以基于所述目标数据源及待清洗的ES集群生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图;清洗规则制定模块,用以根据所述待清洗的索引和所述拓扑图制定清洗规则,所述清洗规则指示所述目标源表的字段与待清洗的索引的字段之间的映射。以及数据同步模块,用以根据所述映射从所述目标数据源中捞取相应的数据至所述待清洗的索引以同步所述待清洗的ES集群。根据本专利技术的又一方面,提供一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如上所述数据清洗方法中的步骤。根据本专利技术的又一方面,提供一种电子设备,所述电子设备包括:处理器;存储介质,其上存储有计算机程序,所述计算机程序被所述处理器运行时执行如上所述数据清洗方法中的步骤。本专利技术在数据源数据与ES集群数据不一致时提供ES集群数据的清洗功能,具有灵活且易实现的特点。本专利技术通过生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图,并根据所述待清洗的索引和所述拓扑图制定清洗规则,可以极大提高数据清洗的效率,降低数据同步的出错率。附图说明通过阅读参照以下附图对非限制性实施例所作的详细描述,本专利技术的其它特征、目的和优点将会变得更明显。图1是本专利技术一实施例中数据清洗方法的流程图。图2是本专利技术另一实施例中数据清洗方法的流程图。图3是本专利技术一实施例中数据清洗方法的局部流程图。图4是本专利技术一实施例中数据清洗系统的结构示意图。图5是本专利技术另一实施例中数据清洗系统的结构示意图。图6是本专利技术一实施例中数据清洗系统的应用示意图。图7是本专利技术一实施例中计算机可读存储介质的结构示意图。以及图8是本专利技术一实施例中电子设备的结构示意图。具体实施方式现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。为了解决现有技术的不足,本专利技术提供一种数据清洗方法、系统、存储介质及电子设备,本专利技术在数据源数据与ES集群数据不一致时提供ES集群数据的清洗功能,具有灵活且易实现的特点,通过生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图,并根据所述待清洗的本文档来自技高网
...

【技术保护点】
1.一种数据清洗方法,其特征在于,包括:选择目标数据源并从所述目标数据源中选择目标源表,以确定清洗数据来源;选择待清洗的ES集群中待清洗的索引;基于所述目标数据源及待清洗的ES集群生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图;根据所述待清洗的索引和所述拓扑图确定清洗规则,所述清洗规则指示所述目标源表的字段与待清洗的索引的字段之间的映射;根据所述映射从所述目标数据源中捞取相应的数据至所述待清洗的索引以同步所述待清洗的ES集群。

【技术特征摘要】
1.一种数据清洗方法,其特征在于,包括:选择目标数据源并从所述目标数据源中选择目标源表,以确定清洗数据来源;选择待清洗的ES集群中待清洗的索引;基于所述目标数据源及待清洗的ES集群生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图;根据所述待清洗的索引和所述拓扑图确定清洗规则,所述清洗规则指示所述目标源表的字段与待清洗的索引的字段之间的映射;根据所述映射从所述目标数据源中捞取相应的数据至所述待清洗的索引以同步所述待清洗的ES集群。2.根据权利要求1所述的数据清洗方法,其特征在于,所述选择目标数据源的步骤之后还包括:测试所述目标数据源的连接。3.根据权利要求1所述的数据清洗方法,其特征在于,所述根据所述映射从所述目标数据源中捞取相应的数据至所述待清洗的索引以同步所述待清洗的ES集群的步骤之前包括:对所述目标数据源中待捞取数据的类型进行校验。4.根据权利要求1所述的数据清洗方法,其特征在于,所述选择待清洗的ES集群中待清洗的索引包括:自待清洗的ES集群中选择待检查的索引;检查各ES集群中的待检查的索引的健康值,以选择待清洗的索引。5.根据权利要求4所述的数据清洗方法,其特征在于,所述自待清洗的ES集群中选择待检查的索引之前包括:检查所述待清洗的ES集群的健康状态,以选择待检查的索引。6.根据权利要求1至5中任一项所述的数据清洗方法,其特征在于,所述基于所述目标数据源及待清洗的ES集群生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图的步骤包括:基于所述目标数据源生成指示所述目标数据...

【专利技术属性】
技术研发人员:张元武肖明冯鑫
申请(专利权)人:江苏满运软件科技有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1