一种基于数据存储的异构数据整合方法和装置的制造方法

文档序号:9667474阅读:538来源:国知局
一种基于数据存储的异构数据整合方法和装置的制造方法
【技术领域】
[0001] 本发明涉及计算机技术领域,特别涉及一种基于数据存储的异构数据整合方法和 装置。
【背景技术】
[0002] 随着信息化的推进,企业在信息化过程中会积累大量的数据资源,并保存在不同 的数据库中。
[0003] 由于不同系统使用的数据库类型、数据格式互不相同,在数据结构上存在很大的 差异,导致各系统资源相互孤立,无法形成数据共享。

【发明内容】

[0004] 本发明提供一种基于数据存储的异构数据整合方法和装置,能够整合异构数据。
[0005] 第一方面,本发明实施例提供了一种基于数据存储的异构数据整合方法,包括:
[0006] 建立数据连接总线接口,通过数据连接总线接口连接至数据库;
[0007] 提取数据库中符合数据提取标准的数据到数据存储中;
[0008] 汇总所述数据存储中的数据,将数据类型分析转换为统一数据类型;
[0009] 保存所述数据存储中的统一数据类型的数据至主数据库。
[0010] 优选地,
[0011] 所述建立数据连接总线接口包括:通过包括数据库连接信息的数据表建立数据连 接总线接口。
[0012] 优选地,
[0013] 在所述提取数据库中符合数据提取标准的数据到数据存储之前,进一步包括:
[0014] 接收数据整合策略,根据数据整合策略动态生成数据提取标准。
[0015] 优选地,
[0016] 在所述保存所述数据存储中的统一数据类型的数据至主数据库之前,进一步包 括:
[0017] 在所述数据连接总线接口建立临时表,将所述数据存储中的数据临时储存在所述 临时表中。
[0018] 在所述保存所述数据存储中的统一数据类型的数据至主数据库后删除所述临时 表。
[0019] 第二方面,本发明提供了一种基于数据存储的异构数据整合装置,包括:
[0020] 建立单元,用于建立数据连接总线接口,触发连接单元;
[0021] 连接单元,用于通过数据连接总线接口连接至数据库,触发提取单元;
[0022] 提取单元,用于提取数据库中符合数据提取标准的数据到数据存储中,将所述符 合数据提取标准的数据输出给处理单元;
[0023] 处理单元,用于汇总所述符合数据提取标准的数据,将数据类型分析转换为统一 数据类型,将所述数据存储中的同一数据类型的数据输出给保存单元;
[0024] 保存单元,用于将所述数据存储中的同一数据类型的数据保存至主数据库。
[0025] 优选地,
[0026] 所述建立单元,用于通过包括数据库连接信息的数据表建立数据连接总线接口, 触发所述连接单元。
[0027] 优选地,进一步包括:
[0028] 接收单元,用于接收数据整合策略,将数据整合策略输出给生成单元;
[0029] 生成单元,用于根据数据整合策略动态生成数据提取标准,将提取标准输出给所 述提取单元。
[0030] 优选地,进一步包括:
[0031] 临时存储单元,用于在所述数据连接总线接口建立临时表,将所述数据存储中的 数据临时储存在所述临时表中,将临时表中的所述数据存储中的数据输出给所述保存单 元;
[0032] 删除单元,用于在所述保存单元将所述数据存储中的同一数据类型的数据保存至 主数据库后删除临时表。
[0033] 本发明实施例提出的基于数据存储的异构数据整合方法及装置,通过建立数据连 接总线接口连接至数据库,提取数据库中符合数据提取标准的数据到数据存储中,并将数 据转换成统一的数据类型保存至主数据库,从而将异构数据的整合至主数据库,从而实现 数据共享。
【附图说明】
[0034]图1是本发明实施例提供的基于数据存储的异构数据整合方法流程图;
[0035] 图2是本发明另一实施例提供的基于数据存储的异构数据整合方法流程图;
[0036]图3是本发明实施例提供的数据表结构图;
[0037]图4是本发明实施例提供的整合策略表结构图;
[0038]图5是本发明实施例提供的基于数据存储的异构数据整合装置结构示意图;
[0039]图6是本发明另一实施例提供的基于数据存储的异构数据整合装置结构示意图;
[0040]图7是本发明又一实施例提供的基于数据存储的异构数据整合装置结构示意图。
【具体实施方式】
[0041] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本 发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实 施例,都属于本发明保护的范围。
[0042] 本发明实施例提供了一种基于数据存储的异构数据整合方法,如图1所示,该方 法可以包括以下步骤:
[0043] 步骤101 :建立数据连接总线接口,通过数据连接总线接口连接至数据库;
[0044] 步骤102 :提取数据库中符合数据提取标准的数据到数据存储中;
[0045] 步骤103 :分析数据存储中的数据,将数据类型转换为统一数据类型;
[0046] 步骤104:保存数据存储中的统一数据类型的数据至主数据库。
[0047] 可见,由于本发明实施例提出的基于数据存储的异构数据整合方法及装置,通过 建立数据连接总线接口连接至数据库,提取数据库中符合数据提取标准的数据到数据存储 中,并将数据转换成统一的数据类型保存至主数据库,从而将异构数据的整合至主数据库, 从而实现数据共享。
[0048] 在本发明一个优选实施例中,为了建立能够根据连接信息连接到多个不同的数据 库的数据连接总线接口,建立数据连接总线接口包括:通过包括数据库连接信息的数据表 建立数据连接总线接口,从而数据连接总线接口能够根据连接信息连接到多个不同的数据 库。
[0049] 在本发明一个优选实施例中,为了根据数据整合策略动态生成数据提取标准,在 步骤102之前,进一步包括:接收数据整合策略,根据数据整合策略动态生成数据提取标 准,从而可以根据数据整合策略动态生成数据提取标准。
[0050] 在本发明一个优选实施例中,为了将数据存储中的数据保存至主数据库,在步骤 104之前,进一步包括:在数据连接总线接口建立临时表,将所述数据存储中的数据临时储 存在所述临时表中,并在步骤104之后删除所述临时表。
[0051] 为使本发明的目的、技术方案和优点更加清楚,下面结合附图及具体实施例对本 发明作进一步地详细描述。
[0052] 本发明实施例提供了一种基于数据存储的异构数据整合方法,如图2所示,该方 法包括以下实现过程:
[0053] 步骤201 :通过包括数据库连接信息的数据表建立数据连接总线接口。
[0054] 在本实施例中,数据连接总线接口支持各主流数据库。例如,Oracle、Sql Server、 Sybase等。可以根据数据接口提供数据库连接信息的配置方法,配置数据库连接信息并保 存。
[0055] 其中,数据表结构如图3所示,数据库连接信息包括数据库类型、服务器名称、 数据库名称、登录用户和登录口令。例如,数据库类型为MSSQLSERVER,服务器名称为 master,数据库名称为系统数据库,登录用户为user,登录口令为123456。
[0056] 配置方法如下:
[0057] //数据库系统类型
[0058] vsdbms = ds_bz· object. CXDWDB_DBMS[vl_cur_row]
[0059] //服务器名称
[0060]vssrvnm=ds_bz·object.CXDWDB_SRVNM[vl_cur_row]
[0061] //数据库名称
[0062] vsdbnm = ds_bz. object. CXDWDB_DBNM[vl_cur_;row]
[0063] //登录用户
[0064]vslogid=ds_bz·object.CXDWDB_L0GID[vl_cur_row]
[0065] //登录口令
[0066] vspass = ds_bz· object. CXDWDB_PASS[vl_cur_row]
[0067] 步骤202 :通过数据连接总线接口连接至数据库,并判断是否连接成功,如果成 功,执行步骤203,否则,弹出"数据库连接失败"的提示信息。
[0068] 在本实施例中,通过获取并解析数据库连接信息,根据具体配置信息连接到对应 的数据库,连接完毕后判断是否连接成功。
[0069] //获取连接信息
[0070] SELECT
[0071] CXDWDB-SRVNM,CXDWDB-DBMS,CXDWDB-DBNM,CXDWDB-L0
[0072] GID,CXDWDB-PASS,CXDWDB-ZTNAME
[0073] INTO:vsSrvnm, :vsdbms, :vsdbnm, :vslogid, :vspass, :vsztname
[0074] FROM CXDWDB
[0075] WHERE CXDWDB_DWBH = : dwbh;
[0076] ptran. SERVERNAME = trim(vssrvnm)
[0077] ptran. DBMS = "ADO. NET"
[0078] vsspace = trim(vsdbms)
[0079] ptran. DATABASE = trim(vsdbnm)
[0080] ptran. LOGID = trim(vslogid)
[0081] if not isnull (vsPass) and Trim(vsPass)〈>" then
[0082] f-passexpand (vspass)
[0083] vsPass = Right (vspass, len (vspass)-3)
[0084] end if
[0085] ptran. L0GPASS = trim (vspass)
[0086] gf_SetHelp(〃正在连接数据库,请等待.....〃)
[0087] SetPointer(HourGlass !)
[0088] disconnect using ptran ;
[0089] if pos (vsspace,"Oracle") >0then
[0090] ptran. dbparm =
[0091] ''Namespace = J System. Data. Ole
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1