CN109710603A - 数据清洗方法、系统、存储介质及电子设备 - Google Patents

数据清洗方法、系统、存储介质及电子设备 Download PDF

Info

Publication number
CN109710603A
CN109710603A CN201811627786.4A CN201811627786A CN109710603A CN 109710603 A CN109710603 A CN 109710603A CN 201811627786 A CN201811627786 A CN 201811627786A CN 109710603 A CN109710603 A CN 109710603A
Authority
CN
China
Prior art keywords
cleaned
cluster
data
index
data source
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.)
Granted
Application number
CN201811627786.4A
Other languages
English (en)
Other versions
CN109710603B (zh
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.)
Jiangsu Yunmanman Information Technology Co Ltd
Original Assignee
Jiangsu Manyun Software Technology 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 Jiangsu Manyun Software Technology Co Ltd filed Critical Jiangsu Manyun Software Technology Co Ltd
Priority to CN201811627786.4A priority Critical patent/CN109710603B/zh
Publication of CN109710603A publication Critical patent/CN109710603A/zh
Application granted granted Critical
Publication of CN109710603B publication Critical patent/CN109710603B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

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

Abstract

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

Description

数据清洗方法、系统、存储介质及电子设备
技术领域
本发明涉及计算机技术领域,尤其涉及一种数据清洗方法、系统、存储介质及电子设备。
背景技术
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是本发明一实施例中数据清洗方法的流程图。如图1所示,所述数据清洗方法包括:
S110、选择目标数据源并从所述目标数据源中选择目标源表,以确定清洗数据来源。需要强调的是,数据源的选择并不限于单一的表,也可以选择多张表中的多个字段作为清洗数据来源。
此处所述目标数据源为传统的关系型数据库,当前主流的关系型数据库有Oracle、DB2、PostgreSQL、Microsoft SQL Server、Microsoft Access、MySQL、浪潮K-DB等。所述目标源表是以行和列的形式组织起来的数据的集合。例如,可能有一个有关作者信息的名为authors的表。每列都包含特定类型的,如作者的姓氏。每行都包含有关特定作者的所有信息:姓名、住址等等。在关系型数据库当中,一个表就是一个关系,一个关系数据库可以包含多个表。
S120、选择待清洗的ES集群中待清洗的索引。
具体而言,所述选择待清洗的ES集群中待清洗的索引的步骤包括:
检查所述待清洗的ES集群的健康状态。
基于所述健康状态,自待清洗的ES集群中选择待检查的索引。
检查各ES集群中的待检查的索引的健康值,以选择待清洗的索引。
其中,一个ES集群可能由1个节点1个索引构成,亦或有100个数据节点,3个主节点,几个客户端节点,这些节点的所有操作都发生在成百上千的分片上。关于ES集群的健康状态,可以通过调用Cluster Health API(用以访问ES集群以测试ES集群的健康状态)获知。举例而言,可以像下面这样调用cluster-health API:
GET_cluster/health
像其他ES API一样cluster-health将返回一个JSON字符串作为response,下面的信息包含了一些ES集群相关的重要信息
在上面比较重要的数据字段是status,它的可能取值如下:
green:表示所有分片和副本都被分配,ES集群100%可用。
yellow:表示所有分片都被分配,但是部分副本缺失,没有数据丢失,查询结果也是完整的。但存在一定程度安全隐患,如果再丢失一部分主分片可能导致数据丢失。
red:表示至少丢失1个主分片(和所有的备份),这意味着ES集群丢失了数据,查询结果将不再完整,索引数据时会抛出异常。
green/yellow/red是一个很好的衡量ES集群状态健康程度的指标,其它的指标描述了ES集群的其他状态。
"cluster_name":集群名称。
number_of_nodes:集群所有节点数。
number_of_data_nodes:集群所有数据节点数。
active_primary_shards:集群所有索引的主分片数。
active_shards:集群所有索引的主分片数。
relocating_shards:表示当前集群分片从一个节点转移到另一个节点的分片数,这个值一般情况为0,但是可能会增加,当ES集群不平衡时会存在这种情况,比如一个新节点的加入或一个几点关闭。
initializing_shards:表示分片在创建初期的分片数。
unassigned_shards:未分配分片数。
关于索引的健康值:索引的健康值也有三种,yellow、green、red,与以上关于ES集群的健康状态的理解一致。
S130、基于所述目标数据源及待清洗的ES集群生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图。
具体地,所述基于所述目标数据源及待清洗的ES集群生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图的步骤包括:
基于所述目标数据源生成指示所述目标数据源的数据结构的第一拓扑图。
基于所述待清洗的ES集群生成指示所述待清洗的ES集群的数据结构的第二拓扑图。
S140、根据所述待清洗的索引和所述拓扑图确定清洗规则,所述清洗规则指示所述目标源表的字段与待清洗的索引的字段之间的映射。
具体地,所述根据所述待清洗的索引和所述拓扑图制定清洗规则的步骤包括:
接收用户的第一操作,所述第一操作指示所述第一拓扑图中的字段。
接收用户的第二操作,所述第二操作指示所述第二拓扑图中的字段。
根据所述第一操作指示所述第一拓扑图中的字段及所述第二操作指示所述第二拓扑图中的字段确定所述清洗规则中待映射的所述目标源表的字段与待清洗的索引的字段。
S150、根据所述映射从所述目标数据源中捞取相应的数据至所述待清洗的索引以同步所述待清洗的ES集群。至此本发明可以高效、灵活地实现对ES集群和关系型数据库中数据的同步。
进一步而言,如图3所示,所述根据所述映射从所述目标数据源中捞取相应的数据至所述待清洗的索引以同步所述待清洗的ES集群的步骤包括:
S310、从所述目标数据源中捞取数据。
S320、将已捞取数据批量导入待清洗的ES集群并备份。
S330、对待清洗的ES集群的健康状态进行监控并返回监控结果。
S340、基于所述监控结果捞取备份数据。
S350、将已捞取的备份数据批量导入待清洗的ES集群。
本发明在数据源数据与ES集群数据不一致时提供ES集群数据的清洗功能,具有灵活且易实现的特点。本发明通过生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图,并根据所述待清洗的索引和所述拓扑图制定清洗规则,可以极大提高数据清洗的效率,降低数据同步的出错率。
本发明还提供另一种数据清洗方法。图2是本发明另一实施例中数据清洗方法的流程图。如图2所示,所述数据清洗方法包括:
S210、选择目标数据源并从所述目标数据源中选择目标源表,以确定清洗数据来源。此处所述目标数据源为传统的关系型数据库。
S220、测试所述目标数据源的连接,以选择有效的数据清洗路径。
具体地,用户可以选则多个目标数据源和目标源表进行连接测试并以模板的形式保存,以后在使用前搜索相应的模板即可。
S230、选择待清洗的ES集群中待清洗的索引。
具体而言,所述选择待清洗的ES集群中待清洗的索引的步骤包括:
检查所述待清洗的ES集群的健康状态。
基于所述健康状态,自待清洗的ES集群中选择待检查的索引。
检查各ES集群中的待检查的索引的健康值,以选择待清洗的索引。
关于ES集群的健康状态以及索引的健康值的含义已在上一实施例中阐述,此处不再赘述。
S240、基于所述目标数据源及待清洗的ES集群生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图。
具体地,所述基于所述目标数据源及待清洗的ES集群生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图的步骤包括:
基于所述目标数据源生成指示所述目标数据源的数据结构的第一拓扑图。
基于所述待清洗的ES集群生成指示所述待清洗的ES集群的数据结构的第二拓扑图。
S250、根据所述待清洗的索引和所述拓扑图确定清洗规则,所述清洗规则指示所述目标源表的字段与待清洗的索引的字段之间的映射。
具体地,所述根据所述待清洗的索引和所述拓扑图确定清洗规则的步骤包括:
接收用户的第一操作,所述第一操作指示所述第一拓扑图中的字段。
接收用户的第二操作,所述第二操作指示所述第二拓扑图中的字段。
根据所述第一操作指示所述第一拓扑图中的字段及所述第二操作指示所述第二拓扑图中的字段确定所述清洗规则中待映射的所述目标源表的字段与待清洗的索引的字段。
S260、对所述目标数据源中待捞取数据的类型进行校验。通过对所述目标数据源中待捞取数据的类型进行校验可以确认清洗数据来源的可靠性,保证数据清洗工作的顺利进行。
S270、根据所述映射从所述目标数据源中捞取相应的数据至所述待清洗的索引以同步所述待清洗的ES集群。该步骤的具体实现可以参见图3,在此不予赘述。
本发明在数据源数据与ES集群数据不一致时提供ES集群数据的清洗功能,具有灵活且易实现的特点。本发明通过生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图,并根据所述待清洗的索引和所述拓扑图制定清洗规则,可以极大提高数据清洗的效率,降低数据同步的出错率。
根据本发明的另一方面,提供一种数据清洗系统。图4是本发明一实施例中数据清洗系统的结构示意图。如图4所示,所述数据清洗系统800包括:第一选择模块801、第二选择模块802、拓扑图生成模块803、清洗规则制定模块804以及数据同步模块805。所述第一选择模块801用以选择目标数据源并从所述目标数据源中选择目标源表,以确定清洗数据来源。所述第二选择模块802用以选择待清洗的ES集群中待清洗的索引。所述拓扑图生成模块803用以基于所述目标数据源及待清洗的ES集群生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图。所述清洗规则制定模块804用以根据所述待清洗的索引和所述拓扑图制定清洗规则,所述清洗规则指示所述目标源表的字段与待清洗的索引的字段之间的映射。所述数据同步模块805用以根据所述映射从所述目标数据源中捞取相应的数据至所述待清洗的索引以同步所述待清洗的ES集群。本发明在数据源数据与ES集群数据不一致时提供ES集群数据的清洗功能,具有灵活且易实现的特点。本发明通过生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图,并根据所述待清洗的索引和所述拓扑图制定清洗规则,可以极大提高数据清洗的效率,降低数据同步的出错率。
相应的,本发明还提供另一种数据清洗系统。图5是本发明另一实施例中数据清洗系统的结构示意图。如图5所示,所述数据清洗系统810除了包括所述第一选择模块801、所述第二选择模块802、所述拓扑图生成模块803、所述清洗规则制定模块804以及所述数据同步模块805之外,还包括:连接测试模块806及数据类型校验模块807。所述连接测试模块806用以测试所述目标数据源的连接,以选择有效的数据清洗路径。所述数据类型校验模块807用以对所述目标数据源中待捞取数据的类型进行校验。本发明在数据源数据与ES集群数据不一致时提供ES集群数据的清洗功能,具有灵活且易实现的特点。本发明通过生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图,并根据所述待清洗的索引和所述拓扑图制定清洗规则,可以极大提高数据清洗的效率,降低数据同步的出错率。
图6是本发明一实施例中数据清洗系统的应用示意图。如图6所示,在本发明的具体实施例中,客户端601通过网关602连接代理服务器603。代理服务器603连接至前端服务器604。所述数据清洗系统部署在前端服务器604上并通过调用起支撑作用的微服务集群605从数据源606获取数据源数据,再将所获取的数据源数据存储至ES集群607。
在本发明的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被例如处理器执行时可以实现上述实施例中所述数据清洗方法中的步骤。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述数据清洗方法或者所述的货物推荐方法描述的根据本发明各种示例性实施方式的步骤。
图7是本发明一实施例中计算机可读存储介质的结构示意图。图7描述了根据本发明的实施方式的用于实现上述方法的程序产品700,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品700可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本发明在数据源数据与ES集群数据不一致时提供ES集群数据的清洗功能,具有灵活且易实现的特点。本发明通过生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图,并根据所述待清洗的索引和所述拓扑图制定清洗规则,可以极大提高数据清洗的效率,降低数据同步的出错率。
在本发明的示例性实施例中,还提供一种电子设备,该电子设备可以包括处理器,以及用于存储所述处理器的可执行指令的存储器。其中,所述处理器配置为经由执行所述可执行指令来执行上述实施例中所述数据清洗方法中的步骤。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
下面参照图8来描述根据本发明的这种实施方式的电子设备400。图8显示的电子设备400仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图8所示,电子设备400以通用计算设备的形式表现。电子设备400的组件可以包括但不限于:至少一个处理单元410、至少一个存储单元420、连接不同系统组件(包括存储单元420和处理单元410)的总线430、显示单元440等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元410执行,使得所述处理单元410执行本说明书上述数据清洗方法中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元410可以执行如图1中所示的步骤。
所述存储单元420可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)4201和/或高速缓存存储单元4202,还可以进一步包括只读存储单元(ROM)4203。
所述存储单元420还可以包括具有一组(至少一个)程序模块4205的程序/实用工具4204,这样的程序模块4205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线430可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备400也可以与一个或多个外部设备500(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备400交互的设备通信,和/或与使得该电子设备400能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口450进行。并且,电子设备400还可以通过网络适配器460与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器460可以通过总线430与电子设备400的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备400使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本发明实施方式的上述数据清洗方法中的步骤。
本发明在数据源数据与ES集群数据不一致时提供ES集群数据的清洗功能,具有灵活且易实现的特点。本发明通过生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图,并根据所述待清洗的索引和所述拓扑图制定清洗规则,可以极大提高数据清洗的效率,降低数据同步的出错率。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

Claims (10)

1.一种数据清洗方法,其特征在于,包括:
选择目标数据源并从所述目标数据源中选择目标源表,以确定清洗数据来源;
选择待清洗的ES集群中待清洗的索引;
基于所述目标数据源及待清洗的ES集群生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图;
根据所述待清洗的索引和所述拓扑图确定清洗规则,所述清洗规则指示所述目标源表的字段与待清洗的索引的字段之间的映射;
根据所述映射从所述目标数据源中捞取相应的数据至所述待清洗的索引以同步所述待清洗的ES集群。
2.根据权利要求1所述的数据清洗方法,其特征在于,所述选择目标数据源的步骤之后还包括:
测试所述目标数据源的连接。
3.根据权利要求1所述的数据清洗方法,其特征在于,所述根据所述映射从所述目标数据源中捞取相应的数据至所述待清洗的索引以同步所述待清洗的ES集群的步骤之前包括:
对所述目标数据源中待捞取数据的类型进行校验。
4.根据权利要求1所述的数据清洗方法,其特征在于,所述选择待清洗的ES集群中待清洗的索引包括:
自待清洗的ES集群中选择待检查的索引;
检查各ES集群中的待检查的索引的健康值,以选择待清洗的索引。
5.根据权利要求4所述的数据清洗方法,其特征在于,所述自待清洗的ES集群中选择待检查的索引之前包括:
检查所述待清洗的ES集群的健康状态,以选择待检查的索引。
6.根据权利要求1至5中任一项所述的数据清洗方法,其特征在于,所述基于所述目标数据源及待清洗的ES集群生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图的步骤包括:
基于所述目标数据源生成指示所述目标数据源的数据结构的第一拓扑图;
基于所述待清洗的ES集群生成指示所述待清洗的ES集群的数据结构的第二拓扑图。
7.根据权利要求6所述的数据清洗方法,其特征在于,所述根据所述待清洗的索引和所述拓扑图制定清洗规则的步骤包括:
接收用户的第一操作,所述第一操作指示所述第一拓扑图中的字段;
接收用户的第二操作,所述第二操作指示所述第二拓扑图中的字段;
根据所述第一操作指示的所述第一拓扑图中的字段及所述第二操作指示的所述第二拓扑图中的字段确定所述清洗规则中待映射的所述目标源表的字段与待清洗的索引的字段。
8.一种数据清洗系统,其特征在于,包括:
第一选择模块,用以选择目标数据源并从所述目标数据源中选择目标源表,以确定清洗数据来源;
第二选择模块,用以选择待清洗的ES集群中待清洗的索引;
拓扑图生成模块,用以基于所述目标数据源及待清洗的ES集群生成指示所述目标数据源及待清洗的ES集群的数据结构的拓扑图;
清洗规则制定模块,用以根据所述待清洗的索引和所述拓扑图确定清洗规则,所述清洗规则指示所述目标源表的字段与待清洗的索引的字段之间的映射;
数据同步模块,用以根据所述映射从所述目标数据源中捞取相应的数据至所述待清洗的索引以同步所述待清洗的ES集群。
9.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1至7中任一项所述的步骤。
10.一种电子设备,其特征在于,所述电子设备包括:
处理器;
存储介质,其上存储有计算机程序,所述计算机程序被所述处理器运行时执行如权利要求1至7中任一项所述的步骤。
CN201811627786.4A 2018-12-28 2018-12-28 数据清洗方法、系统、存储介质及电子设备 Active CN109710603B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811627786.4A CN109710603B (zh) 2018-12-28 2018-12-28 数据清洗方法、系统、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811627786.4A CN109710603B (zh) 2018-12-28 2018-12-28 数据清洗方法、系统、存储介质及电子设备

Publications (2)

Publication Number Publication Date
CN109710603A true CN109710603A (zh) 2019-05-03
CN109710603B CN109710603B (zh) 2020-11-24

Family

ID=66258054

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811627786.4A Active CN109710603B (zh) 2018-12-28 2018-12-28 数据清洗方法、系统、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN109710603B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110209650A (zh) * 2019-05-05 2019-09-06 苏宁易购集团股份有限公司 数据规整迁移方法、装置、计算机设备和存储介质
CN113064885A (zh) * 2020-12-29 2021-07-02 中国移动通信集团贵州有限公司 一种数据清洗方法和装置
CN113220549A (zh) * 2021-04-01 2021-08-06 深圳市猎芯科技有限公司 爬虫数据监控方法、系统、计算机设备及存储介质
CN113868237A (zh) * 2021-09-30 2021-12-31 杭州数梦工场科技有限公司 数据清洗方法及装置

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101853283A (zh) * 2010-05-21 2010-10-06 南京邮电大学 面向多维数据的语义索引对等网络的构建方法
US20150310081A1 (en) * 2012-12-04 2015-10-29 Thomson Licensing Database synchronization
CN106255103A (zh) * 2016-07-29 2016-12-21 华为技术有限公司 一种数据同步方法及设备
CN107463692A (zh) * 2017-08-11 2017-12-12 山东合天智汇信息技术有限公司 超大文本数据同步到搜索引擎的方法和系统
CN107689982A (zh) * 2017-06-25 2018-02-13 平安科技(深圳)有限公司 多数据源数据同步方法、应用服务器及计算机可读存储介质
CN107767924A (zh) * 2017-11-13 2018-03-06 医渡云(北京)技术有限公司 原始数据核对方法、装置、电子设备及存储介质
CN108133007A (zh) * 2017-12-22 2018-06-08 北京明朝万达科技股份有限公司 一种数据同步方法和系统
CN108153784A (zh) * 2016-12-06 2018-06-12 北京京东尚科信息技术有限公司 同步数据处理方法和装置
CN108446396A (zh) * 2018-03-26 2018-08-24 电子科技大学 一种基于改进型cim模型的电力数据处理方法
CN108810130A (zh) * 2018-06-01 2018-11-13 北京京东尚科信息技术有限公司 一种分配请求规划的方法和装置
CN109086409A (zh) * 2018-08-02 2018-12-25 泰康保险集团股份有限公司 微服务数据处理方法、装置、电子设备及计算机可读介质

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101853283A (zh) * 2010-05-21 2010-10-06 南京邮电大学 面向多维数据的语义索引对等网络的构建方法
US20150310081A1 (en) * 2012-12-04 2015-10-29 Thomson Licensing Database synchronization
CN106255103A (zh) * 2016-07-29 2016-12-21 华为技术有限公司 一种数据同步方法及设备
CN108153784A (zh) * 2016-12-06 2018-06-12 北京京东尚科信息技术有限公司 同步数据处理方法和装置
CN107689982A (zh) * 2017-06-25 2018-02-13 平安科技(深圳)有限公司 多数据源数据同步方法、应用服务器及计算机可读存储介质
CN107463692A (zh) * 2017-08-11 2017-12-12 山东合天智汇信息技术有限公司 超大文本数据同步到搜索引擎的方法和系统
CN107767924A (zh) * 2017-11-13 2018-03-06 医渡云(北京)技术有限公司 原始数据核对方法、装置、电子设备及存储介质
CN108133007A (zh) * 2017-12-22 2018-06-08 北京明朝万达科技股份有限公司 一种数据同步方法和系统
CN108446396A (zh) * 2018-03-26 2018-08-24 电子科技大学 一种基于改进型cim模型的电力数据处理方法
CN108810130A (zh) * 2018-06-01 2018-11-13 北京京东尚科信息技术有限公司 一种分配请求规划的方法和装置
CN109086409A (zh) * 2018-08-02 2018-12-25 泰康保险集团股份有限公司 微服务数据处理方法、装置、电子设备及计算机可读介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王占宏等: "分布式弹性搜索研究与实践", 《微型电脑应用》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110209650A (zh) * 2019-05-05 2019-09-06 苏宁易购集团股份有限公司 数据规整迁移方法、装置、计算机设备和存储介质
CN113064885A (zh) * 2020-12-29 2021-07-02 中国移动通信集团贵州有限公司 一种数据清洗方法和装置
CN113064885B (zh) * 2020-12-29 2023-10-27 中国移动通信集团贵州有限公司 一种数据清洗方法和装置
CN113220549A (zh) * 2021-04-01 2021-08-06 深圳市猎芯科技有限公司 爬虫数据监控方法、系统、计算机设备及存储介质
CN113868237A (zh) * 2021-09-30 2021-12-31 杭州数梦工场科技有限公司 数据清洗方法及装置

Also Published As

Publication number Publication date
CN109710603B (zh) 2020-11-24

Similar Documents

Publication Publication Date Title
CN109710603A (zh) 数据清洗方法、系统、存储介质及电子设备
Zhang et al. Transaction chains: achieving serializability with low latency in geo-distributed storage systems
KR102134494B1 (ko) 위치 정보를 가진 데이터 프로파일링
Holzschuher et al. Performance of graph query languages: comparison of cypher, gremlin and native access in neo4j
US11030247B2 (en) Layered graph data structure
Chen et al. Improving large graph processing on partitioned graphs in the cloud
US9158832B1 (en) Method and computing device for maintaining dependencies among reference elements
CN105684377B (zh) 一种创建支持mpp数据库中的可重读隔离级别的分布式事务管理器的系统和方法
JP6381170B2 (ja) 基数推定を介した結合パスの効率的な判定
AU2018309008B2 (en) Writing composite objects to a data store
US9405855B2 (en) Processing diff-queries on property graphs
US20150302300A1 (en) Efficient graph-based rule engine for complex, dynamic, unstructured data
US10599652B2 (en) Database query time estimator
CN109446529A (zh) 一种基于确定有穷自动机的敏感词检测方法和系统
CN107102995B (zh) 一种sql执行计划的确定方法及装置
CN109716321B (zh) N路散列连接
CN109117375A (zh) 数据库接口测试方法、系统、设备和存储介质
US20170141945A1 (en) Repeat Execution of Root Cause Analysis Logic Through Run-Time Discovered Topology Pattern Maps
JP5884901B2 (ja) プログラム、情報処理装置およびイベント処理方法
Zhu et al. Bigop: Generating comprehensive big data workloads as a benchmarking framework
Talukder et al. Parallel graph mining with dynamic load balancing
US20170269982A1 (en) Early diagnosis of hardware, software or configuration problems in data warehouse system utilizing grouping of queries based on query parameters
Kim et al. Parallel processing of multiple graph queries using MapReduce
US8161079B2 (en) Acquisition and expansion of storage area network interoperation relationships
CN111290714B (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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210224

Address after: 210012 4th floor, building 5, no.170-1, software Avenue, Yuhuatai District, Nanjing City, Jiangsu Province

Patentee after: Jiangsu manyun Logistics Information Co.,Ltd.

Address before: 210012 3-5 / F, building 4, 170-1 software Avenue, Yuhuatai District, Nanjing City, Jiangsu Province

Patentee before: JIANGSU MANYUN SOFTWARE TECHNOLOGY Co.,Ltd.

CP01 Change in the name or title of a patent holder

Address after: 210012 4th floor, building 5, no.170-1, software Avenue, Yuhuatai District, Nanjing City, Jiangsu Province

Patentee after: Jiangsu Yunmanman Information Technology Co.,Ltd.

Address before: 210012 4th floor, building 5, no.170-1, software Avenue, Yuhuatai District, Nanjing City, Jiangsu Province

Patentee before: Jiangsu manyun Logistics Information Co.,Ltd.

CP01 Change in the name or title of a patent holder
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20190503

Assignee: Nanjing Manyun Cold Chain Technology Co.,Ltd.

Assignor: Jiangsu Yunmanman Information Technology Co.,Ltd.

Contract record no.: X2023980040393

Denomination of invention: Data cleaning methods, systems, storage media, and electronic devices

Granted publication date: 20201124

License type: Common License

Record date: 20230824

EE01 Entry into force of recordation of patent licensing contract
CP02 Change in the address of a patent holder

Address after: 210012 3rd floor, building a, Wanbo Science Park, 66 Huashen Avenue, Yuhuatai District, Nanjing City, Jiangsu Province

Patentee after: Jiangsu Yunmanman Information Technology Co.,Ltd.

Address before: 210012 4th floor, building 5, no.170-1, software Avenue, Yuhuatai District, Nanjing City, Jiangsu Province

Patentee before: Jiangsu Yunmanman Information Technology Co.,Ltd.

CP02 Change in the address of a patent holder