CN107688664B - 图表生成方法、装置、计算机设备和存储介质 - Google Patents
图表生成方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN107688664B CN107688664B CN201710874046.XA CN201710874046A CN107688664B CN 107688664 B CN107688664 B CN 107688664B CN 201710874046 A CN201710874046 A CN 201710874046A CN 107688664 B CN107688664 B CN 107688664B
- Authority
- CN
- China
- Prior art keywords
- chart
- data
- synchronization
- data table
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/248—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/177—Editing, e.g. inserting or deleting of tables; using ruled lines
- G06F40/18—Editing, e.g. inserting or deleting of tables; using ruled lines of spreadsheets
Abstract
本发明涉及一种图表生成方法、装置、计算机设备和存储介质。图表生成方法包括:接收图表生成指令,根据图表生成指令获取待生成的图表的地址;地址包括同步前地址和同步后地址;根据同步前地址在源数据库中抓取源数据表,根据同步后地址在目标数据库中抓取目标数据表;获取图表配置信息,根据图表配置信息中记录的源数据表中待对比的字段名以及目标数据表中待对比的字段名,将源数据表中的图表数据与目标数据表中的图表数据进行对比;当源数据表中的图表数据与目标数据表中的图表数据一致时,根据目标数据表中的图表数据生成对应的图表。该方法能够提高生成图表准确性。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及图表生成方法、装置、计算机设备和存储介质。
背景技术
在当今大数据时代,企业需要对业务数据进行统计分析,以了解客户需求。例如,保险公司在保险业务处理过程中,每月需要从不同的业务系统同步大量的保单进行结算和统计,以了解客户的投保趋势。图表凭借可视化和直观性等优势,越来越多的用于数据统计分析。由此,图表的开发工具也越来越多,如FusionCharts、Highcharts和Echarts(一种图表开发工具)等。但如果在数据同步过程发生数据丢失或者出错等情况,则使得图表开发工具实际用于生成图表的数据可能与实际的业务数据并不相同,可能使最终生成的图表不能真实的反映数据的变化趋势或者比例分布等,从而对用户进行数据分析产生误导。由此,如何提高图表内容的准确性,以方便用户根据图表进行准确数据分析成为目前需要解决的一个技术问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高图表内容的准确性,从而方便用户根据图表进行准确数据分析的图表生成方法、装置、计算机设备和存储介质。
一种图表生成方法,包括:
接收图表生成指令,根据图表生成指令获取待生成的图表的地址;所述地址包括同步前地址和同步后地址;
根据所述同步前地址在源数据库中抓取源数据表,根据所述同步后地址在目标数据库中抓取目标数据表;
获取图表配置信息,根据所述图表配置信息中记录的源数据表中待对比的字段名以及目标数据表中待对比的字段名,将所述源数据表中的图表数据与目标数据表中的图表数据进行对比;
当源数据表中的图表数据与目标数据表中的图表数据一致时,根据所述目标数据表中的图表数据生成对应的图表。
在其中一个实施例中,在所述根据所述同步后地址在目标数据库中抓取目标数据表的步骤之前,还包括:
调用数据同步脚本,所述数据同步脚本包括第一同步脚本,所述第一同步脚本包括多个标签;
获取同步配置信息,所述同步配置信息记录了源数据表的表名;
利用源数据表的表名对第一同步脚本中的标签进行替换,以对数据同步脚本进行更新;
通过执行更新后的数据同步脚本,将源数据库中的图表数据同步到目标数据库。
在其中一个实施例中,所述数据同步脚本还包括第二同步脚本,所述同步配置信息还记录了源数据库的连接字符串;所述通过执行更新后的数据同步脚本,将源数据库中的图表数据同步到目标数据库的步骤,包括:
根据源数据库的连接字符串,在源数据库中读取源数据表中的字段信息,根据所述字段信息生成第二同步脚本;
通过执行更新后的数据同步脚本,对源数据库中的图表数据进行去重处理,将去重后的图表数据同步到目标数据库。
在其中一个实施例中,所述图表配置信息还记录了待生成的图表对应的属性信息,所述根据所述目标数据表中的图表数据生成对应的图表的步骤,包括:
根据待生成的图表对应的属性信息生成对应的数据传输对象;
创建画布,在所述画布中渲染所述数据传输对象,生成临时图表;
对所述图表数据中的字符长度进行筛选,得到字符长度最长的图表数据;
根据字符长度最长的图表数据对应的像素点在所述画布上的起止位置,计算所述图表数据的字符宽度;
根据所述字符宽度调整所述临时图表的边距,生成对应的图表。
在其中一个实施例中,所述方法还包括:
当源数据表中的图表数据与目标数据表中的图表数据不一致时,则拦截所述图表生成指令;
生成数据不一致提示,所述数据不一致提示包括一个或多个字段名;
接收对所述字段名对应图表数据的补正请求,获取补正后的图表数据,根据目标数据表中的图表数据以及补正后的图表数据生成对应的图表;或
接收对所述数据不一致提示的忽略请求,根据目标数据表中的图表数据生成对应的图表。
一种图表生成装置,所述装置包括:
数据抓取模块,用于接收图表生成指令,根据图表生成指令获取待生成的图表的地址;所述地址包括同步前地址和同步后地址;根据所述同步前地址在源数据库中抓取源数据表,根据所述同步后地址在目标数据库中抓取目标数据表;
数据对比模块,用于获取图表配置信息,根据所述图表配置信息中记录的源数据表中待对比的字段名以及目标数据表中待对比的字段名,将所述源数据表中的图表数据与目标数据表中的图表数据进行对比;
图表生成模块,用于当源数据表中的图表数据与目标数据表中的图表数据一致时,根据所述目标数据表中的图表数据生成对应的图表。
在其中一个实施例中,所述装置还包括数据同步模块,用于调用数据同步脚本,所述数据同步脚本包括第一同步脚本,所述第一同步脚本包括多个标签;获取同步配置信息,所述同步配置信息记录了源数据表的表名;利用源数据表的表名对第一同步脚本中的标签进行替换,以对数据同步脚本进行更新;通过执行更新后的数据同步脚本,将源数据库中的图表数据同步到目标数据库。
在其中一个实施例中,所述数据同步脚本还包括第二同步脚本,所述同步配置信息还记录了源数据库的连接字符串;所述装置还包括数据同步模块,用于根据源数据库的连接字符串,在源数据库中读取源数据表中的字段信息,根据所述字段信息生成第二同步脚本;通过执行更新后的数据同步脚本,对源数据库中的图表数据进行去重处理,将去重后的图表数据同步到目标数据库。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本发明一个实施例中提供的图表生成方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明一个实施例中提供的图表生成方法的步骤。
上述图表生成方法、装置、计算机设备和存储介质,通过待生成的图表的同步前地址和同步后地址可以从不用的数据库中直接抓取源数据表和目标数据表,根据图表配置信息可以将源数据表和目标数据表的图表数据进行有效对比,并根据对比结果进行后续的图表生成过程。由于在创建图表之前对用于生成图表的图表数据的准确性进行校验,可以提高图表内容的准确性,进而方便用户根据图表进行准确数据分析。
附图说明
图1为一个实施例中图表生成方法的流程图;
图2为一个实施例中图表生成装置的结构示意图;
图3为一个实施例中计算机设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
可以理解,本发明所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本发明的范围的情况下,可以将第一客户端称为第二客户端,且类似地,可将第二客户端称为第一客户端。第一客户端和第二客户端两者都是客户端,但其不是同一客户端。
在一个实施例中,如图1所示,提供了一种图表生成方法,以该方法应用于终端为例进行说明,具体包括以下步骤:
步骤102,接收图表生成指令,根据图表生成指令获取待生成的图表的地址;地址包括同步前地址和同步后地址。
终端上运行了数据同步工具,如Hadoop、DBSync等。数据同步工具可以将图表数据从业务系统对应的源数据库同步至目标数据库。源数据库中包括一个或多个源数据表;目标数据库中包括一个或多个目标数据表。源数据库和目标数据库可以分别部署在不同的服务器上。源数据库与目标数据库均可以是关系型数据库,如Sql Server数据库、Oracle数据库或MySql数据库等;也可以是非关系型数据库,如键值存储数据库(Key-Value)等。
终端上还运行了图表开发工具,如FusionCharts、Highcharts、Echarts等。可以理解,数据同步工具与图表开发工具也可以运行在不同的终端上。图表开发工具中存储了图表配置信息。图表配置信息可以是用户在需要创建图表时添加至图表开发工具的。图表开发工具根据图表配置信息可以对源数据库与目标数据库中的图表数据进行对比,根据对比结果进行图表生成。
步骤104,根据同步前地址在源数据库中抓取源数据表,根据同步后地址在目标数据库中抓取目标数据表。
步骤106,获取图表配置信息,根据图表配置信息中记录的源数据表中待对比的字段名以及目标数据表中待对比的字段名,将源数据表中的图表数据与目标数据表中的图表数据进行对比。
当用户需要创建图表时,终端利用图表开发工具接收用户的图表生成指令。图表开发工具根据图表生成指令获取预先设置的图表配置信息。图表配置信息包括待生成的图表的地址,该地址可以是数据库的连接字符串等。该地址包括同步前地址和同步后地址。图表配置信息还包括待对比的数据表的基本信息,如待对比的数据表表名、待对比的字段名等。图表开发工具根据源数据库的连接字符串,调用对应的数据库连接对象连接至源数据库,根据待对比的源数据表的表名在源数据库中抓取对应的源数据表。图表开发工具根据目标数据库的连接字符串,调用对应的数据库连接对象连接至目标数据库,根据待对比的目标数据表的表名在目标数据库中抓取对应的目标数据表。
在抓取到源数据表和目标数据表后,图表开发工具分别读取源数据表的图表数据和目标数据表的图表数据,根据图表配置信息中源数据表中待对比的字段名以及目标数据表中待对比的字段名,将源数据表的图表数据和目标数据表的图表数据进行对比。
图表配置信息包括源数据表和目标数据表的全部字段名。图表开发工具对源数据表和目标数据表中全部图表数据进行逐一对比。例如,源数据表中的第一字段与目标数据表中的第一字段从第一行开始逐行对比,源数据表中的第二字段与目标数据表中的第二字段从第一行开始逐行对比,以此类推,直至所有的字段完成对比。可以理解,为了提高数据对比效率,图表配置信息也可以仅包括源数据表和目标数据表的部分字段名。
步骤108,当源数据表中的图表数据与目标数据表中的图表数据一致时,根据目标数据表中的图表数据生成对应的图表。
若对比结果为源数据表的图表数据和目标数据表的图表数据一致,则图表开发工具根据目标数据表中的图表数据生成对应的图表。
在一个实施例中,该方法还包括:当源数据表中的图表数据与目标数据表中的图表数据不一致时,则拦截图表生成指令;生成数据不一致提示,数据不一致提示包括一个或多个字段名;接收对字段名对应图表数据的补正请求,获取补正后的图表数据,根据目标数据表中的图表数据以及补正后的图表数据生成对应的图表;或接收对数据不一致提示的忽略请求,根据目标数据表中的图表数据生成对应的图表。
若对比结果为源数据表的图表数据和目标数据表的图表数据不一致,则图表开发工具生成数据不一致提示,展示该数据不一致提示,以提示用户目标数据表相对源数据表存在图表数据缺失或错误的情况。数据不一致提示可以包括全部图表数据,也可以只包括不一致的图表数据。为了便于用户了解对比结果,数据不一致提示可以只显示目标数据表相对源数据表缺少或出错的图表数据对应的字段名。
若上述字段名对应的图表数据对于图表生成较为重要,用户可以在预设时间内对缺少的字段名对应图表数据进行补充,或对出错的图表数据进行替换。图表开发工具接收用户的补正请求,补正请求中携带了补正后的图表数据。图表开发工具利用目标数据表中的图表数据以及补正后的图表数据生成对应的图表。
若上述字段名对应的图表数据对于图表生成可以忽略,则图表开发工具接收用户在预设时间内的忽略请求,仍根据目标数据表中的图表数据生成对应的图表。当对比发现源数据表与目标数据表中的图表数据存在不一致时,及时提示用户,由用户自由选择是否需要对不一致的图表数据进行补正,以使图表开发工具可以及时创建图表,减少数据不一致对图表生成的耽搁,进而提高图表生成效率。
本实施例中,通过待生成的图表的同步前地址和同步后地址可以从不用的数据库中直接抓取源数据表和目标数据表,根据图表配置信息可以将源数据表和目标数据表的图表数据进行有效对比,并根据对比结果进行后续的图表生成过程。由于在创建图表之前对用于生成图表的图表数据的准确性进行校验,可以提高图表内容的准确性,进而方便用户根据图表进行准确数据分析。
在一个实施例中,在接收图表生成指令,根据图表生成指令获取待生成的图表的地址的步骤之前,还包括:接收图表配置请求,根据图表配置请求显示第一配置页面;获取用户在第一配置页面录入的图表配置信息;记录图表配置信息。
当用户需要开发图表时,图表开发工具接收用户的图表配置请求,根据图表配置请求显示第一配置页面,获取并记录用户在第一配置页面录入的图表配置信息。当用户需要利用其它图表数据生成图表或者对图表生成方式进行调整时,可以对图表配置信息进行变更。具体的,图表开发工具接收用户的配置变更请求,根据配置变更请求显示第二配置页面。配置变更请求携带了需要变更的图表配置标识,图表开发工具根据该图表配置标识查询对应的图表配置信息,在第二配置页面展示查询到的图表配置信息,获取用户对该图表配置信息的修改操作,记录修改后的图表配置信息。
本实施例中,采用页面配置的方式添加或变更图表配置信息,使得用户无需重新编写代码,只需添加、删除或修改易读的图表配置信息即可实现图表开发,降低了图表开发的门槛。当需要针对其他某项图表数据生成图表时,用户只需要添加该项图表数据对应的图表配置信息即可,提高图表生成效率。
在一个实施例中,在根据同步后地址在目标数据库中抓取目标数据表的步骤之前,还包括:调用数据同步脚本,数据同步脚本包括第一同步脚本,第一同步脚本包括多个标签;获取同步配置信息,同步配置信息记录了源数据表的表名;利用源数据表的表名对第一同步脚本中的标签进行替换,以对数据同步脚本进行更新;通过执行更新后的数据同步脚本,将源数据库中的图表数据同步到目标数据库。
传统方式中,在利用数据同步工具从不同的业务系统进行数据同步之前,用户需要预先针对不同的业务系统编写不同的数据同步脚本。但事实上,不同业务系统对应的数据同步脚本类似,若需要进行数据同步的业务系统较多,则用户需要进行大量的重复动作,浪费人力,也降低了数据同步效率。为了减少用户操作,本方案利用图表开发工具预先编写一套通用的数据同步脚本。该数据同步脚本包括第一同步脚本和第二同步脚本。
第一同步脚本包括至少一个预设格式的标签。预设格式是指在标签两侧中的至少一侧设有预设标识。预设标识可以是“#”,“@”,“*”等,从而预设格式的标签可以是“#ABC#”,“@DEF”或“GHI*”等。当用户需要进行数据同步时,可以采用上述页面配置的方式在数据同步工具中添加图表配置信息。图表配置信息包括多个标签及其对应的源数据表的表名。数据同步工具调用数据同步脚本,根据预设标识识别第一同步脚本中的标签,根据图表配置信息查询每个标签对应的源数据表的表名,利用查询到的源数据表的表名对相应的标签进行替换,以对第一同步脚本进行更新。
第二同步脚本包括建表脚本和同步脚本。图表配置信息还包括源数据库的连接字符串,验证标识等。验证标识可以是用户名和密码等。数据同步工具根据源数据库的连接字符串和验证标识,与源数据库建立连接,在源数据库中读取每张源数据表的字段信息。字段信息不同,对应的建表脚本和同步脚本不同。数据同步工具根据每张源数据表的字段信息,生成对应的建表语句和同步语句,将生成的多条建表语句写入对应的建表脚本,将生成的多条同步语句写入对应的同步脚本,以对第二同步脚本进行更新。数据同步工具通过执行更新后的数据同步脚本,从源数据库将图表数据同步至目标数据库。
本实施例中,利用图表开发工具预先编写一套通用的数据同步脚本,针对需要进行数据同步的不同业务系统添加了对应的同步配置信息。当需要从某个业务系统同步图表数据时,只需根据对应的同步配置信息对通用的数据同步脚本进行更新,通过执行更新后的数据同步脚本即可将图表数据从源数据库同步至目标数据库,可以减少用户操作,也提高了数据同步效率。
在一个实施例中,数据同步脚本还包括第二同步脚本,同步配置信息还记录了源数据库的连接字符串;通过执行更新后的数据同步脚本,将源数据库中的图表数据同步到目标数据库的步骤,包括:根据源数据库的连接字符串,在源数据库中读取源数据表中的字段信息,根据字段信息生成第二同步脚本;通过执行更新后的数据同步脚本,对源数据库中的图表数据进行去重处理,将去重后的图表数据同步到目标数据库。
图表配置信息还包括每张源数据表对应的同步方式。同步方式包括全量同步,增量去重同步和增量不去重同步。当用户需要进行数据同步时,数据同步工具获取每张源数据表对应的同步方式,若同步方式为增量去重,则根据源数据表的字段信息,生成对应的去重语句。数据同步工具调用通用的数据同步脚本,在第二同步脚本中添加去重脚本,将生成的去重语句写入去重脚本,以对第二同步脚本进行更新。数据同步工具通过执行更新后的数据同步脚本,对源数据库中的图表数据进行去重处理,将去重后的图表数据同步至目标数据库。
本实施例中,数据同步工具已经对同步到目标数据库中的图表数据进行了去重处理,使得图表开发工具可以直接利用目标数据库中的图表数据进行图表生成,无需再作其他处理,进而提高图表生成效率。
在一个实施例中,根据目标数据表中的图表数据生成对应的图表的步骤,包括:获取目标数据表的表名和字段名,根据表名和字段名生成一种或多种图例的推荐信息;展示推荐信息,获取推荐信息在预设时间内的确认结果;若确认结果为同意,则根据推荐信息在图例库中获取对应的图例;否则,获取一种或多种图例的选定信息,根据选定信息在图例库中获取对应的图例;利用获取到的图例以及目标数据表中的图表数据生成对应的图表。
若源数据表的图表数据和目标数据表的图表数据一致,则图表开发工具在图例库中获取一种或多种图例,根据获取到的图例和目标数据表中的图表数据生成对应的图表。其中,获取到的图例可以是图表开发工具自动推荐的,也可以是用户指定的。具体的,图表开发工具获取目标数据表的表名和字段名,按照预设规则,针对该表名和字段名生成对应的图例的推荐信息。例如,若表名包括“密度”“分布”“率”或“比例”等关键词,则生成柱状图或饼形图的推荐信息;若字段名包括“时间”或“日期”等关键词,则生成折线图的推荐信息。
在另一个实施例中,用户利用图表开发工具发送的图表生成指令携带了用户标识。图表开发工具根据该用户标识查询该用户对应的历史图例选择信息,如对某种图例的选定比例达到阈值。图表开发工具也可以根据该图例选择信息生成一种或多种图例的推荐信息。
图表开发工具展示推荐信息,用户在预设时间内可以对该推荐信息进行确认。若确认结果为同意,或者在预设时间内未接收到用户对推荐信息的确认结果,则图表开发工具根据该推荐信息在图例库中获取对应的图例。若用户不同意推荐信息,也可以重新选定一个或多个图例。图表开发工具根据该选定信息在图例库中获取对应的图例。
本实施例中,根据用于生成图表的图表数据向用户推荐一种或多种图例,使得生成的图表可以更好的反映数据的变化趋势或者比例分布等。用户也可以根据自己的喜好自由选定图例,实用性强。
在一个实施例中,图表配置信息还记录了待生成的图表对应的属性信息,根据目标数据表中的图表数据生成对应的图表的步骤,包括:根据待生成的图表对应的属性信息生成对应的数据传输对象;创建画布,在画布中渲染数据传输对象,生成临时图表;对图表数据中的字符长度进行筛选,得到字符长度最长的图表数据;根据字符长度最长的图表数据对应的像素点在画布上的起止位置,计算图表数据的字符宽度;根据字符宽度调整临时图表的边距,生成对应的图表。
在传统方式中,初始化图表开发工具时,通常将图表的坐标轴的边距设置为一个默认固定值,如50像素,但实际图表数据在画布中占据的宽度无法预先得知,当图表数据长度过长时,容易超出坐标轴的显示范围,导致部分图表数据被截断显示不完整。
图表配置信息还包括待生成的图表的属性信息。属性信息包括图表标识、图表标题、多个图表显示顺序、图层设置或坐标信息等。坐标信息包括图表编号、图例名称、坐标轴类型、坐标轴最大值、坐标轴最小值、数据显示方式等。其中,坐标轴类型包括categoryAxis(分类轴)和valueAxis(数值轴)。数据显示方式包括整数型、百分数型和小数型。图表开发工具根据待生成的图表的属性信息生成对应的数据传输对象(以下简称dto对象)。dto对象可以是键值对的形式,如optionDTO(title、xAxis、yAxis、series)。图表开发工具对dto对象进行格式转换,转换为Json格式。图表开发工具创建canvas等画布,并将Json格式的dto对象发送至JSP页面(Java服务器页面),以使JSP页面在画布上对Json格式的dto对象进行渲染,得到临时图表。
图表开发工具对目标数据表中图表数据的字符长度进行筛选,得到字符长度最长的图表数据,根据字符长度最长的图表数据对应的像素点在画布上的起止位置计算该图表数据的字符宽度。图表开发工具比较该字符宽度是否超过默认固定值,当源数据表中的图表数据与目标数据表中的图表数据不一致时,根据该字符宽度调整临时图表的边距,生成最终的图表;否则,则无需对生成的临时图表进行调整,从而生成的临时图表即为最终的图表。
本实施例中,根据字符长度最长的图表数据及时调整画布的边距,从而可以保证最终生成的图表可以完整的显示每项图表数据。
在一个实施例中,在根据获取到的图例以及目标数据表中的图表数据生成对应的图表的步骤之后,还包括:检测是否到达图表更新周期;返回获取待生成的图表的地址的步骤,重新对比源数据表和目标数据表中的图表数据是否一致;若不一致,则根据源数据表中的图表数据对目标数据表中的图表数据进行更新,根据更新后的图表数据生成对应的图表。
每隔图表更新周期,图表开发工具根据图表配置信息对源数据表和目标数据表中的图表数据重新对比,以检测用于生成图表的图表数据是否发生变化。当源数据表中的图表数据与目标数据表中的图表数据不一致时,数据同步工具根据源数据表中的图表数据对目标数据表中的图表数据进行更新,图表开发工具利用更新后的图表数据生成对应的图表。
本实施例中,自动检测用于生成图表的图表数据是否发生变化,根据检测结果对图表进行周期性更新,可以提高图表内容的准确性,进一步方便用户根据图表进行准确数据分析。
在一个实施例中,如图2所示,提供了一种图表生成装置,包括:数据抓取模块202,数据对比模块204和图表生成模块206,其中:
数据抓取模块202,用于接收图表生成指令,根据图表生成指令获取待生成的图表的地址;地址包括同步前地址和同步后地址;根据同步前地址在源数据库中抓取源数据表,根据同步后地址在目标数据库中抓取目标数据表。
数据对比模块204,用于获取图表配置信息,根据图表配置信息中记录的源数据表中待对比的字段名以及目标数据表中待对比的字段名,将源数据表中的图表数据与目标数据表中的图表数据进行对比。
图表生成模块206,用于当源数据表中的图表数据与目标数据表中的图表数据一致时,根据目标数据表中的图表数据生成对应的图表。
在一个实施例中,该装置还包括数据同步模块208,用于调用数据同步脚本,数据同步脚本包括第一同步脚本,第一同步脚本包括多个标签;获取同步配置信息,同步配置信息记录了源数据表的表名;利用源数据表的表名对第一同步脚本中的标签进行替换,以对数据同步脚本进行更新;通过执行更新后的数据同步脚本,将源数据库中的图表数据同步到目标数据库。
在一个实施例中,数据同步脚本还包括第二同步脚本,同步配置信息还记录了源数据库的连接字符串;同步模块208还用于根据源数据库的连接字符串,在源数据库中读取源数据表中的字段信息,根据字段信息生成第二同步脚本;通过执行更新后的数据同步脚本,对源数据库中的图表数据进行去重处理,将去重后的图表数据同步到目标数据库。
上述的图表生成装置可以实现为一种计算机程序的形式,计算机程序可在如图3所示的计算机设备上运行。
在一个实施例中,提供了一种计算机设备,如图3所示,该计算机设备包括通过系统总线连接的处理器、非易失性存储介质、内存储器、网络接口、显示屏和输入装置。其中,计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该计算机设备的非易失性存储介质存储有操作系统和计算机程序,该计算机设备的内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机程序被处理器执行时以实现一种图表生成方法。该终端的网络接口用于与外部的网络接口进行通信。终端的显示屏可以是触摸屏等,输入装置可以是显示屏上覆盖的触摸层,还可以是终端外壳上设置的按键、轨迹球,触控板,外接的键盘、触控板或鼠标等。该计算机设备可以是电脑、手机、平板电脑等。处理器执行计算机程序时可以执行以下步骤:接收图表生成指令,根据图表生成指令获取待生成的图表的地址;地址包括同步前地址和同步后地址;根据同步前地址在源数据库中抓取源数据表,根据同步后地址在目标数据库中抓取目标数据表;获取图表配置信息,根据图表配置信息中记录的源数据表中待对比的字段名以及目标数据表中待对比的字段名,将源数据表中的图表数据与目标数据表中的图表数据进行对比;当源数据表中的图表数据与目标数据表中的图表数据一致时,根据目标数据表中的图表数据生成对应的图表。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
在一个实施例中,处理器执行计算机程序时还执行以下步骤:调用数据同步脚本,数据同步脚本包括第一同步脚本,第一同步脚本包括多个标签;获取同步配置信息,同步配置信息记录了源数据表的表名;利用源数据表的表名对第一同步脚本中的标签进行替换,以对数据同步脚本进行更新;通过执行更新后的数据同步脚本,将源数据库中的图表数据同步到目标数据库。
在一个实施例中,数据同步脚本还包括第二同步脚本,同步配置信息还记录了源数据库的连接字符串;处理器执行计算机程序时还执行以下步骤:根据源数据库的连接字符串,在源数据库中读取源数据表中的字段信息,根据字段信息生成第二同步脚本;通过执行更新后的数据同步脚本,对源数据库中的图表数据进行去重处理,将去重后的图表数据同步到目标数据库。
在一个实施例中,图表配置信息还记录了待生成的图表对应的属性信息,处理器执行计算机程序时还执行以下步骤:根据待生成的图表对应的属性信息生成对应的数据传输对象;创建画布,在画布中渲染数据传输对象,生成临时图表;对图表数据中的字符长度进行筛选,得到字符长度最长的图表数据;根据字符长度最长的图表数据对应的像素点在画布上的起止位置,计算图表数据的字符宽度;根据字符宽度调整临时图表的边距,生成对应的图表。
在一个实施例中,处理器执行计算机程序时还执行以下步骤:当源数据表中的图表数据与目标数据表中的图表数据不一致时,则拦截图表生成指令;生成数据不一致提示,数据不一致提示包括一个或多个字段名;接收对字段名对应图表数据的补正请求,获取补正后的图表数据,根据目标数据表中的图表数据以及补正后的图表数据生成对应的图表;或接收对数据不一致提示的忽略请求,根据目标数据表中的图表数据生成对应的图表。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现计算机程序以下步骤:接收图表生成指令,根据图表生成指令获取待生成的图表的地址;地址包括同步前地址和同步后地址;根据同步前地址在源数据库中抓取源数据表,根据同步后地址在目标数据库中抓取目标数据表;获取图表配置信息,根据图表配置信息中记录的源数据表中待对比的字段名以及目标数据表中待对比的字段名,将源数据表中的图表数据与目标数据表中的图表数据进行对比;当源数据表中的图表数据与目标数据表中的图表数据一致时,根据目标数据表中的图表数据生成对应的图表。
在一个实施例中,计算机程序被处理器执行时还执行以下步骤:调用数据同步脚本,数据同步脚本包括第一同步脚本,第一同步脚本包括多个标签;获取同步配置信息,同步配置信息记录了源数据表的表名;利用源数据表的表名对第一同步脚本中的标签进行替换,以对数据同步脚本进行更新;通过执行更新后的数据同步脚本,将源数据库中的图表数据同步到目标数据库。
在一个实施例中,,数据同步脚本还包括第二同步脚本,同步配置信息还记录了源数据库的连接字符串;计算机程序被处理器执行时还执行以下步骤:根据源数据库的连接字符串,在源数据库中读取源数据表中的字段信息,根据字段信息生成第二同步脚本;通过执行更新后的数据同步脚本,对源数据库中的图表数据进行去重处理,将去重后的图表数据同步到目标数据库。
在一个实施例中,图表配置信息还记录了待生成的图表对应的属性信息,计算机程序被处理器执行时还执行以下步骤:根据待生成的图表对应的属性信息生成对应的数据传输对象;创建画布,在画布中渲染数据传输对象,生成临时图表;对图表数据中的字符长度进行筛选,得到字符长度最长的图表数据;根据字符长度最长的图表数据对应的像素点在画布上的起止位置,计算图表数据的字符宽度;根据字符宽度调整临时图表的边距,生成对应的图表。
在一个实施例中,计算机程序被处理器执行时还执行以下步骤:当源数据表中的图表数据与目标数据表中的图表数据不一致时,则拦截图表生成指令;生成数据不一致提示,数据不一致提示包括一个或多个字段名;接收对字段名对应图表数据的补正请求,获取补正后的图表数据,根据目标数据表中的图表数据以及补正后的图表数据生成对应的图表;或接收对数据不一致提示的忽略请求,根据目标数据表中的图表数据生成对应的图表。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种图表生成方法,包括:
接收图表生成指令,根据图表生成指令获取待生成的图表的地址;所述地址包括同步前地址和同步后地址;
根据所述同步前地址在源数据库中抓取源数据表,根据所述同步后地址在目标数据库中抓取目标数据表;
获取图表配置信息,根据所述图表配置信息中记录的源数据表中待对比的字段名以及目标数据表中待对比的字段名,将所述源数据表中的图表数据与目标数据表中的图表数据进行对比;
当所述源数据表中的图表数据与目标数据表中的图表数据一致时,根据所述图表配置信息所记录的待生成图表的属性信息生成对应的数据传输对象;
创建画布,在所述画布中渲染所述数据传输对象,生成临时图表;
对所述目标数据表中图表数据的字符长度进行筛选,得到字符长度最长的图表数据;
根据字符长度最长的图表数据对应的像素点在所述画布上的起止位置,计算所述图表数据的字符宽度;
根据所述字符宽度调整所述临时图表的边距,生成对应的图表。
2.根据权利要求1所述的方法,其特征在于,在所述根据所述同步后地址在目标数据库中抓取目标数据表的步骤之前,还包括:
调用数据同步脚本,所述数据同步脚本包括第一同步脚本,所述第一同步脚本包括多个标签;
获取同步配置信息,所述同步配置信息记录了源数据表的表名;
利用源数据表的表名对第一同步脚本中的标签进行替换,以对数据同步脚本进行更新;
通过执行更新后的数据同步脚本,将源数据库中的图表数据同步到目标数据库。
3.根据权利要求2所述的方法,其特征在于,所述数据同步脚本还包括第二同步脚本,所述同步配置信息还记录了源数据库的连接字符串;所述通过执行更新后的数据同步脚本,将源数据库中的图表数据同步到目标数据库的步骤,包括:
根据源数据库的连接字符串,在源数据库中读取源数据表中的字段信息,根据所述字段信息生成第二同步脚本;
通过执行更新后的数据同步脚本,对源数据库中的图表数据进行去重处理,将去重后的图表数据同步到目标数据库。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当源数据表中的图表数据与目标数据表中的图表数据不一致时,则拦截所述图表生成指令;
生成数据不一致提示,所述数据不一致提示包括一个或多个字段名;
接收对所述字段名对应图表数据的补正请求,获取补正后的图表数据,根据目标数据表中的图表数据以及补正后的图表数据生成对应的图表;或
接收对所述数据不一致提示的忽略请求,根据目标数据表中的图表数据生成对应的图表。
5.一种图表生成装置,其特征在于,所述装置包括:
数据抓取模块,用于接收图表生成指令,根据图表生成指令获取待生成的图表的地址;所述地址包括同步前地址和同步后地址;根据所述同步前地址在源数据库中抓取源数据表,根据所述同步后地址在目标数据库中抓取目标数据表;
数据对比模块,用于获取图表配置信息,根据所述图表配置信息中记录的源数据表中待对比的字段名以及目标数据表中待对比的字段名,将所述源数据表中的图表数据与目标数据表中的图表数据进行对比;
图表生成模块,用于当源数据表中的图表数据与目标数据表中的图表数据一致时,
根据所述图表配置信息所记录的待生成图表的属性信息生成对应的数据传输对象;
创建画布,在所述画布中渲染所述数据传输对象,生成临时图表;
对所述目标数据表中图表数据的字符长度进行筛选,得到字符长度最长的图表数据;
根据字符长度最长的图表数据对应的像素点在所述画布上的起止位置,计算所述图表数据的字符宽度;
根据所述字符宽度调整所述临时图表的边距,生成对应的图表。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括数据同步模块,用于调用数据同步脚本,所述数据同步脚本包括第一同步脚本,所述第一同步脚本包括多个标签;获取同步配置信息,所述同步配置信息记录了源数据表的表名;利用源数据表的表名对第一同步脚本中的标签进行替换,以对数据同步脚本进行更新;通过执行更新后的数据同步脚本,将源数据库中的图表数据同步到目标数据库。
7.根据权利要求6所述的装置,其特征在于,所述数据同步脚本还包括第二同步脚本,所述同步配置信息还记录了源数据库的连接字符串;所述装置还包括数据同步模块,用于根据源数据库的连接字符串,在源数据库中读取源数据表中的字段信息,根据所述字段信息生成第二同步脚本;通过执行更新后的数据同步脚本,对源数据库中的图表数据进行去重处理,将去重后的图表数据同步到目标数据库。
8.根据权利要求5所述的装置,其特征在于,所述图表生成装置还用于当源数据表中的图表数据与目标数据表中的图表数据不一致时,则拦截所述图表生成指令;生成数据不一致提示,所述数据不一致提示包括一个或多个字段名;接收对所述字段名对应图表数据的补正请求,获取补正后的图表数据,根据目标数据表中的图表数据以及补正后的图表数据生成对应的图表;或接收对所述数据不一致提示的忽略请求,根据目标数据表中的图表数据生成对应的图表。
9.一种计算机设备,包括存储装置及处理器,所述存储装置中储存有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-4任意一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1-4任意一项所述方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710874046.XA CN107688664B (zh) | 2017-09-25 | 2017-09-25 | 图表生成方法、装置、计算机设备和存储介质 |
PCT/CN2017/108454 WO2019056494A1 (zh) | 2017-09-25 | 2017-10-31 | 图表生成方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710874046.XA CN107688664B (zh) | 2017-09-25 | 2017-09-25 | 图表生成方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107688664A CN107688664A (zh) | 2018-02-13 |
CN107688664B true CN107688664B (zh) | 2020-04-03 |
Family
ID=61156645
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710874046.XA Active CN107688664B (zh) | 2017-09-25 | 2017-09-25 | 图表生成方法、装置、计算机设备和存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107688664B (zh) |
WO (1) | WO2019056494A1 (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110019533A (zh) * | 2018-05-24 | 2019-07-16 | 中国平安人寿保险股份有限公司 | 同步脚本生成方法、装置、设备及计算机可读存储介质 |
CN109634951B (zh) * | 2018-10-23 | 2023-12-22 | 平安科技(深圳)有限公司 | 大数据采集方法、装置、计算机设备及存储介质 |
CN110069571A (zh) * | 2019-03-18 | 2019-07-30 | 平安普惠企业管理有限公司 | 一种自动化数据对比方法及装置、电子设备 |
CN110119319B (zh) * | 2019-03-29 | 2021-09-03 | 北京康爱营养科技股份有限公司 | 一种接口匹配方法及装置 |
WO2020208632A1 (en) * | 2019-04-10 | 2020-10-15 | Beacon Cure Ltd. | System and method for validating tabular summary reports |
CN110413161B (zh) * | 2019-06-14 | 2021-08-31 | 深圳爱根斯通科技有限公司 | 组件配置方法、装置以及电子设备 |
CN110688423A (zh) * | 2019-09-06 | 2020-01-14 | 中国平安财产保险股份有限公司 | 数据处理及展示方法、系统、设备及存储介质 |
CN110889286B (zh) * | 2019-10-12 | 2022-04-12 | 平安科技(深圳)有限公司 | 基于数据表的依赖关系识别方法、装置和计算机设备 |
CN111342933B (zh) * | 2020-02-25 | 2022-06-07 | 卓望数码技术(深圳)有限公司 | 数据传输方法、设备及介质 |
CN114372445B (zh) * | 2022-03-21 | 2022-08-12 | 奇安信科技集团股份有限公司 | 文档生成方法、装置、电子设备及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101051336A (zh) * | 2006-04-03 | 2007-10-10 | 佳能株式会社 | 电子医疗图表系统、数据处理设备和方法 |
CN104461513A (zh) * | 2014-11-21 | 2015-03-25 | 山东航天信息有限公司 | 一种生成表单界面的方法及装置 |
CN105447200A (zh) * | 2015-12-30 | 2016-03-30 | 金蝶软件(中国)有限公司 | 一种数据处理方法及数据处理装置 |
CN107015957A (zh) * | 2017-03-16 | 2017-08-04 | 深圳市沃易科技有限公司 | 用户表单生成方法和装置 |
CN107122364A (zh) * | 2016-02-25 | 2017-09-01 | 华为技术有限公司 | 数据操作方法和数据管理服务器 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101067849A (zh) * | 2006-12-20 | 2007-11-07 | 腾讯科技(深圳)有限公司 | 数据图表的生成方法及生成系统 |
US8542117B1 (en) * | 2010-02-18 | 2013-09-24 | Athoc, Inc. | Predictive alert targeting for mass notification systems |
KR20120073841A (ko) * | 2010-12-27 | 2012-07-05 | 한국전자통신연구원 | 포렌식 데이터의 데이터테이블 생성 장치 및 방법 |
US9928281B2 (en) * | 2015-03-20 | 2018-03-27 | International Business Machines Corporation | Lightweight table comparison |
CN106055535B (zh) * | 2016-06-02 | 2020-06-12 | 深圳市中润四方信息技术有限公司 | 一种图表生成方法及装置 |
-
2017
- 2017-09-25 CN CN201710874046.XA patent/CN107688664B/zh active Active
- 2017-10-31 WO PCT/CN2017/108454 patent/WO2019056494A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101051336A (zh) * | 2006-04-03 | 2007-10-10 | 佳能株式会社 | 电子医疗图表系统、数据处理设备和方法 |
CN104461513A (zh) * | 2014-11-21 | 2015-03-25 | 山东航天信息有限公司 | 一种生成表单界面的方法及装置 |
CN105447200A (zh) * | 2015-12-30 | 2016-03-30 | 金蝶软件(中国)有限公司 | 一种数据处理方法及数据处理装置 |
CN107122364A (zh) * | 2016-02-25 | 2017-09-01 | 华为技术有限公司 | 数据操作方法和数据管理服务器 |
CN107015957A (zh) * | 2017-03-16 | 2017-08-04 | 深圳市沃易科技有限公司 | 用户表单生成方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN107688664A (zh) | 2018-02-13 |
WO2019056494A1 (zh) | 2019-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107688664B (zh) | 图表生成方法、装置、计算机设备和存储介质 | |
CN107861655B (zh) | 控件匹配方法、装置、计算机设备和存储介质 | |
CN109656921B (zh) | 组织架构数据处理方法、装置、计算机设备及存储介质 | |
CN108228814B (zh) | 数据同步方法及装置 | |
US10261893B2 (en) | Implicit coordination of deployment and regression testing across data centers and system clusters | |
JP6514244B2 (ja) | 差異検出装置及びプログラム | |
WO2020082558A1 (zh) | 基于函数名称的埋点方法、装置、计算机设备及存储介质 | |
CN110287101A (zh) | 用户界面自动化测试方法、装置、计算机设备及存储介质 | |
US11797258B2 (en) | Conversational analytics with data visualization snapshots | |
EP3396558A1 (en) | Method for user identifier processing, terminal and nonvolatile computer readable storage medium thereof | |
CN111078559B (zh) | java代码中函数调用的提取方法、装置、介质及计算机设备 | |
CN112433712A (zh) | 报表展示方法、装置、计算机设备和存储介质 | |
CN113254534A (zh) | 数据同步方法、装置及计算机存储介质 | |
CN115544183A (zh) | 数据可视化方法、装置、计算机设备和存储介质 | |
CN109800069B (zh) | 一种实现数据治理的方法及装置 | |
CN109213668B (zh) | 操作记录方法、装置及终端 | |
CN112783482B (zh) | 一种可视化表单生成方法、装置、设备及存储介质 | |
CN112817817B (zh) | 埋点信息查询方法、装置、计算机设备和存储介质 | |
US20190205454A1 (en) | Tracking and viewing model changes based on time | |
JP7235110B2 (ja) | 操作ログ取得装置、操作ログ取得方法および操作ログ取得プログラム | |
CN115062084B (zh) | 基于数据库元数据构建api接口方法及装置 | |
CN107168822B (zh) | Oracle streams的异常修复系统及方法 | |
WO2020233093A1 (zh) | 关联图谱生成方法、装置、计算机设备和存储介质 | |
CN112100534A (zh) | 页面分享中的信息处理方法、装置、介质及电子设备 | |
CN111079199B (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 |