CN110347743A - 一种数据库通信方法 - Google Patents
一种数据库通信方法 Download PDFInfo
- Publication number
- CN110347743A CN110347743A CN201810224484.6A CN201810224484A CN110347743A CN 110347743 A CN110347743 A CN 110347743A CN 201810224484 A CN201810224484 A CN 201810224484A CN 110347743 A CN110347743 A CN 110347743A
- Authority
- CN
- China
- Prior art keywords
- data
- database
- module
- communication
- 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.)
- Pending
Links
- 238000004891 communication Methods 0.000 title claims abstract description 96
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000012545 processing Methods 0.000 claims abstract description 45
- 238000004519 manufacturing process Methods 0.000 claims abstract description 43
- 230000001960 triggered effect Effects 0.000 claims abstract description 7
- 238000003780 insertion Methods 0.000 claims description 6
- 230000037431 insertion Effects 0.000 claims description 6
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 230000009466 transformation Effects 0.000 claims description 2
- 241001269238 Data Species 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
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/25—Integrating or interfacing systems involving database management systems
-
- 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种数据库通信方法,服务器包括源数据库、生产数据库、操作界面模块、定时通信模块,源数据库包括源数据表,生产数据库包括中间表、生产数据表,操作界面模块包括开始通信触发按钮,定时通信模块包括数据处理模块,方法包括开始通信、数据读取、数据处理、数据写入等过程。本发明采用内置数据处理模块的定时通信模块对数据源有选择性的读取,具有处理效率高的特点。
Description
技术领域
本发明涉及一种数据库通信方法,特别涉及一种高效的数据库通信方法,属于数据处理领域。
背景技术
随着企业发展和信息化管理系统的广泛应用,企业使用的ERP管理系统、CRM客户管理系统、仓储管理系统、订单处理系统等都有着许多SaaS软件供应商提供服务,一定程度上减少了全部由企业自主研发的成本,但也导致各个系统独立运行,数据同步共享比较麻烦,需要额外的时间和技术成本对数据接口进行个性化定制开发。即使有少数大企业提供的整套信息化管理系统,依旧有无法满足企业所有软件及数据业务需求的时候。比如在社区生鲜电商行业,由于业务模式比较特殊,软件服务商没有一套完整的订单和管理系统可以满足现有需求,导致ERP管理系统和顾客网上下单平台由不同软件服务商提供,数据结构不一致,数据库不同导致订单和客户信息需要通过一款定制的数据同步装置才能够让下单平台的数据即时准确通讯到ERP管理系统。
现有同类产品存在以下技术缺陷:⑴中间表创建为与源数据表相同的表结构,意味着在异构数据库中每次为获取到相应源数据后都要进行相应的数据处理后才能使用,对与目标数据库和目标程序增加运算负担;⑵中间表存在诸多目标数据库和目标程序不需要的垃圾数据,将源数据库中的数据完全导入到表结构相同的中间表时,会导致源数据库以及中间表所在的目标数据库同时储存大量垃圾数据,占用不必要的存储空间;⑶上述垃圾数据会导致在因传输数据异常引发相关问题后,给数据溯源查找问题带来不便;⑷同类产品不够灵活,使用条件所限需要将数据同步装置内置于生产程序内,固定于某些平台或者操作系统中使用。
发明内容
本发明数据库通信方法公开了新的方案,采用内置数据处理模块的定时通信模块对数据源有选择性的读取,解决了现有方案的目标数据库运算负担重以及无用数据占用存储资源的问题。
本发明数据库通信方法,数据库通信方法通过服务器实现,服务器包括源数据库、生产数据库、操作界面模块、定时通信模块,源数据库包括源数据表,生产数据库包括中间表、生产数据表,操作界面模块包括开始通信触发按钮,定时通信模块包括数据处理模块,包括过程:服务器调用操作界面模块,操作员点击操作界面模块的开始通信触发按钮调用定时通信模块连接源数据库与生产数据库,定时通信模块根据设定好的通信延迟时间和时间间隔定时重复执行数据通信任务直到退出程序时停止,定时通信模块连接源数据库与生产数据库后读取源数据库的数据处理后写入生产数据库的中间表,同时标记源数据库中已经被读取过的数据避免重复通讯,生产数据库再从中间表里读取所需要的数据并且覆盖到生产数据表中完成数据插入或更新,同时标记中间表中被读取的数据记录,每个批次的数据通信和数据处理任务完成后定时通信模块断开数据库的连接直到下一个通信时间点再次重复以上步骤,关闭定时通信模块,停止数据通信。
进一步,本方案的方法的定时通信模块包括数据库连接模块、数据处理模块、定时模块,数据库连接模块连接源数据库与生产数据库,数据处理模块读取源数据库的数据处理后写入生产数据库的中间表,同时标记源数据库中已经被读取过的数据避免重复通讯,定时模块设定重复执行任务的时间间隔与延迟启动时间。
更进一步,本方案的方法的数据库连接模块根据数据库类型加载相应驱动,加载数据库地址、数据库实例、用户名和用户密码连接上需要有数据交流的源数据库与生产数据库。
更进一步,本方案的方法的数据处理模块根据通信数据类型将数据通信分成多个数据通信处理任务,从源数据库的源数据表读取生产数据库所需要的数据经数据变形、转换后生成插入语句写入生产数据库的中间表,同时标记源数据表中已经被读取过的数据来避免重复通信。
本发明数据库通信方法采用内置数据处理模块的定时通信模块对数据源有选择性的读取,具有处理效率高的特点。
附图说明
图1是本发明数据库通信方法的流程简图。
图2是操作界面模块的流程简图。
图3是定时通信模块的流程简图。
图4是数据库连接模块的流程简图。
图5是数据处理模块的流程简图。
具体实施方式
如图1所示,本发明数据库通信方法的流程简图。数据库通信方法,数据库通信方法通过服务器实现,服务器包括源数据库、生产数据库、操作界面模块、定时通信模块,源数据库包括源数据表,生产数据库包括中间表、生产数据表,操作界面模块包括开始通信触发按钮,定时通信模块包括数据处理模块,包括过程:服务器调用操作界面模块,操作员点击操作界面模块的开始通信触发按钮调用定时通信模块连接源数据库与生产数据库,定时通信模块根据设定好的通信延迟时间和时间间隔定时重复执行数据通信任务直到退出程序时停止,定时通信模块连接源数据库与生产数据库后读取源数据库的数据处理后写入生产数据库的中间表,同时标记源数据库中已经被读取过的数据避免重复通讯,生产数据库再从中间表里读取所需要的数据并且覆盖到生产数据表中完成数据插入或更新,同时标记中间表中被读取的数据记录,每个批次的数据通信和数据处理任务完成后定时通信模块断开数据库的连接直到下一个通信时间点再次重复以上步骤,关闭定时通信模块,停止数据通信。上述方案采用内置数据处理模块的定时通信模块对数据源有选择性的读取,能够有效减轻生产程序的运算负担,保证处理能力和效率,避免大量垃圾数据占用有限的存储空间,中间表内容直观,方便对问题进行分析从而即时处理解决。
为了实现数据库间的定时数据通信,本方案的方法的定时通信模块包括数据库连接模块、数据处理模块、定时模块,数据库连接模块连接源数据库与生产数据库,数据处理模块读取源数据库的数据处理后写入生产数据库的中间表,同时标记源数据库中已经被读取过的数据避免重复通讯,定时模块设定重复执行任务的时间间隔与延迟启动时间。为了实现数据库连接,本方案的方法的数据库连接模块根据数据库类型加载相应驱动,加载数据库地址、数据库实例、用户名和用户密码连接上需要有数据交流的源数据库与生产数据库。为了实现数据处理,本方案的方法的数据处理模块根据通信数据类型将数据通信分成多个数据通信处理任务,从源数据库的源数据表读取生产数据库所需要的数据经数据变形、转换后生成插入语句写入生产数据库的中间表,同时标记源数据表中已经被读取过的数据来避免重复通信。
本方案公开了一种实现免环境部署跨平台不同种数据库非相同结构数据的定时同步通讯(信)方法,属于数据处理技术领域。具体而言,在数据通讯和数据转换过程中提供高效的数据应用,过滤不必要的垃圾数据,实现直观简易的中间表数据结构和内容跨平台使用。
如图1所示,将JRE(Java Runtime Environment)java运行环境包以及本程序的执行程序“数据库通讯程序.jar”一起打包成一个Startup.bat批处理程序,运行该批处理程序。程序首先调用操作界面模块,主要目的是告知使用人程序现在已经开始启动运行。操作界面有一个“开始通讯”按钮,点击后开始执行数据定时通讯任务。定时通讯任务在启动之后,会根据设定好的通讯延迟时间和时间间隔定时重复执行数据通讯任务,直到退出程序时停止。定时通讯任务是封装在定时模块内的,具体运行步骤是:根据服务器地址、数据库类型、访问用户和密码连接上需要有数据交流的任意两个数据库;根据需要通讯的数据不同,按照表和数据处理分成不同的数据通讯处理任务,从源数据库中的某个表中读取生产程序所需要的数据,再经过数据处理模块之后,将处理后的数据写入生产数据库中的中间表,同时标记源数据库中已经被读取过的数据避免重复通讯;生产数据库再从中间表里读取所需要的数据并且覆盖到生产表中完成数据插入或更新,同时标记中间表中被读取的数据记录;每个批次的数据通讯和数据处理任务完成之后都会断开数据库的连接,直到下一个通讯时间点再次重复以上步骤;关闭程序,停止数据通讯。
如图2所示,操作界面模块。本程序主要模块为数据数据处理和通讯,在后台自主进行,界面模块主要是用来告知使用者程序已经启动,随时可以根据需要开始进行数据通讯。点击界面模块中的“开始通讯”按钮,即打开定时通讯任务模块并正式开始数据通讯处理。
如图3所示,定时通讯(任务)模块。开始数据通讯处理后就在此模块内按照指定的间隔区间重复执行,直到退出程序。在此任务循环内,会启动两个数据库的连接模块。然后根据连接模块反馈的连接对象,导入到数据处理模块,按照待处理的数据表分别依次进行数据处理,完成后关闭数据库连接对象。
如图4所示,数据库连接模块。根据指定的服务器地址、数据库类型、访问用户和密码连接上两个数据库,并返回连接实例。
如图5所示,数据处理模块。导入连接实例后,根据需求,对源数据表内的有效数据进行读取,然后按照要求进行数据处理,生成数据库操作语句,将处理后的数据插入生产数据库中的中间表内,中间表会根据插入顺序在自增字段内编号。与此同时,也会生成数据库操作语句对源数据库数据进行标记,避免重复读取。生产数据表会根据需求从中间表按照标记和插入顺序进行读取。
本方案将JRE(Java Runtime Environment)java运行环境包以及本程序的执行程序“数据库通讯程序.jar”一起打包成一个Startup.bat批处理程序,使得该由Java编写的程序在没有部署Java环境的操作系统中(包括Windows和IOS系统)可以直接运行,免去繁琐的环境部署步骤。将数据处理部分全部内置于通讯程序,能够有效减轻生产程序的运算负担。大批量处理数据和频繁的数据读写会使得生产程序的资源无法得到有效应用。由于通讯程序可以放在任意平台上使用,可以让两个需要通讯的数据库和通讯程序分别放在3个不同的主机上,以保证处理能力和效率。数据处理内置于通讯程序后,只需要根据生产程序的需要,对源数据有选择性的读取,避免大量垃圾数据占用有限的存储空间。中间表内的数据是非覆盖式永久保留的,以便出现问题时进行数据溯源,中间表字段和数据已经是经过甄选处理的,内容直观,通讯程序对中间表内数据的每一次操作都有记录可查,方便对问题进行分析从而即时处理解决。基于以上特点,本方案的数据库通信方法相比现有方案具有突出的实质性特点和显著的进步。
本方案的数据库通信方法并不限于具体实施方式中公开的内容,实施例中出现的技术方案可以基于本领域技术人员的理解而延伸,本领域技术人员根据本方案结合公知常识作出的简单替换方案也属于本方案的范围。
Claims (4)
1.一种数据库通信方法,所述数据库通信方法通过服务器实现,所述服务器包括源数据库、生产数据库、操作界面模块、定时通信模块,所述源数据库包括源数据表,所述生产数据库包括中间表、生产数据表,所述操作界面模块包括开始通信触发按钮,所述定时通信模块包括数据处理模块,其特征是包括过程:
服务器调用操作界面模块,操作员点击操作界面模块的开始通信触发按钮调用定时通信模块连接源数据库与生产数据库,定时通信模块根据设定好的通信延迟时间和时间间隔定时重复执行数据通信任务直到退出程序时停止,定时通信模块连接源数据库与生产数据库后读取源数据库的数据处理后写入生产数据库的中间表,同时标记源数据库中已经被读取过的数据避免重复通讯,生产数据库再从中间表里读取所需要的数据并且覆盖到生产数据表中完成数据插入或更新,同时标记中间表中被读取的数据记录,每个批次的数据通信和数据处理任务完成后定时通信模块断开数据库的连接直到下一个通信时间点再次重复以上步骤,关闭定时通信模块,停止数据通信。
2.根据权利要求1所述的数据库通信方法,其特征在于,所述定时通信模块包括数据库连接模块、数据处理模块、定时模块,数据库连接模块连接源数据库与生产数据库,数据处理模块读取源数据库的数据处理后写入生产数据库的中间表,同时标记源数据库中已经被读取过的数据避免重复通讯,定时模块设定重复执行任务的时间间隔与延迟启动时间。
3.根据权利要求2所述的数据库通信方法,其特征在于,所述数据库连接模块根据数据库类型加载相应驱动,加载数据库地址、数据库实例、用户名和用户密码连接上需要有数据交流的源数据库与生产数据库。
4.根据权利要求2所述的数据库通信方法,其特征在于,所述数据处理模块根据通信数据类型将数据通信分成多个数据通信处理任务,从源数据库的源数据表读取生产数据库所需要的数据经数据变形、转换后生成插入语句写入生产数据库的中间表,同时标记源数据表中已经被读取过的数据来避免重复通信。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810224484.6A CN110347743A (zh) | 2018-03-19 | 2018-03-19 | 一种数据库通信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810224484.6A CN110347743A (zh) | 2018-03-19 | 2018-03-19 | 一种数据库通信方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110347743A true CN110347743A (zh) | 2019-10-18 |
Family
ID=68172320
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810224484.6A Pending CN110347743A (zh) | 2018-03-19 | 2018-03-19 | 一种数据库通信方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110347743A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110060719A1 (en) * | 2009-09-05 | 2011-03-10 | Vivek Kapoor | Method for Transforming Setup Data in Business Applications |
CN102495910A (zh) * | 2011-12-28 | 2012-06-13 | 畅捷通信息技术股份有限公司 | 实现异构系统数据定时同步的装置和方法 |
CN102831211A (zh) * | 2012-08-14 | 2012-12-19 | 中山大学 | 一种基于表关联分析的数据表迁移的方法 |
CN105989006A (zh) * | 2015-01-27 | 2016-10-05 | 中芯国际集成电路制造(上海)有限公司 | 数据迁移方法和装置 |
CN106469226A (zh) * | 2016-09-30 | 2017-03-01 | 安徽马钢自动化信息技术有限公司 | 基于数据库中间表的数据通讯方法 |
-
2018
- 2018-03-19 CN CN201810224484.6A patent/CN110347743A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110060719A1 (en) * | 2009-09-05 | 2011-03-10 | Vivek Kapoor | Method for Transforming Setup Data in Business Applications |
CN102495910A (zh) * | 2011-12-28 | 2012-06-13 | 畅捷通信息技术股份有限公司 | 实现异构系统数据定时同步的装置和方法 |
CN102831211A (zh) * | 2012-08-14 | 2012-12-19 | 中山大学 | 一种基于表关联分析的数据表迁移的方法 |
CN105989006A (zh) * | 2015-01-27 | 2016-10-05 | 中芯国际集成电路制造(上海)有限公司 | 数据迁移方法和装置 |
CN106469226A (zh) * | 2016-09-30 | 2017-03-01 | 安徽马钢自动化信息技术有限公司 | 基于数据库中间表的数据通讯方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109800056A (zh) | 一种基于容器的区块链部署方法 | |
CN103927314B (zh) | 一种数据批量处理的方法和装置 | |
CN102375837A (zh) | 数据采集系统和方法 | |
CN109376142A (zh) | 数据迁移方法及终端设备 | |
CN110928681A (zh) | 数据的处理方法和装置、存储介质及电子装置 | |
CN107894945A (zh) | 埋点添加方法、移动终端及计算机可读存储介质 | |
CN112363809A (zh) | 一种基于kubernetes实现微服务链路收集的系统及其方法 | |
CN110765552A (zh) | 三维地质模型的属性信息展示方法及装置 | |
CN105338107A (zh) | 一种据点运营同步管理系统及方法 | |
CN110866065A (zh) | 一种数据交换系统、交换方法及存储介质 | |
CN114513410A (zh) | 一种设备快速接入物联网平台的方法和系统 | |
CN107168795B (zh) | 基于cpu-gpu异构复合式并行计算框架的密码子偏差系数模型方法 | |
CN109710263A (zh) | 代码的编译方法、装置、存储介质及电子设备 | |
CN110347743A (zh) | 一种数据库通信方法 | |
CN108089871A (zh) | 软件自动更新方法、装置、设备及存储介质 | |
RU2016129564A (ru) | Способ построения единого информационного пространства и система для его осуществления | |
CN101320443A (zh) | 一种电子工单的处理方法及处理装置 | |
CN105574195B (zh) | 判断数据库是否应下线回收的方法及装置 | |
CN106230618A (zh) | 一种系统日志集中处理系统 | |
CN113382075A (zh) | 企业信息管理平台、管理方法、电子设备及存储介质 | |
CN104808968B (zh) | 全局数据的存储、上报方法与装置和系统 | |
CN109241388A (zh) | 一种应用程序接口行为分析方法和系统 | |
CN111506646A (zh) | 数据同步方法、装置、系统、存储介质及处理器 | |
CN108206894B (zh) | 一种业务处理系统、方法及装置 | |
CN111708751B (zh) | 一种基于Hue实现数据加载的方法,系统,设备及可读存储介质 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191018 |
|
RJ01 | Rejection of invention patent application after publication |