CN113342885A - 数据导入方法、装置、设备及计算机程序产品 - Google Patents
数据导入方法、装置、设备及计算机程序产品 Download PDFInfo
- Publication number
- CN113342885A CN113342885A CN202110659020.XA CN202110659020A CN113342885A CN 113342885 A CN113342885 A CN 113342885A CN 202110659020 A CN202110659020 A CN 202110659020A CN 113342885 A CN113342885 A CN 113342885A
- Authority
- CN
- China
- Prior art keywords
- import
- task
- current
- concurrent
- data import
- 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
Links
- 230000008676 import Effects 0.000 title claims abstract description 359
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000004590 computer program Methods 0.000 title claims description 10
- 230000001419 dependent effect Effects 0.000 claims description 30
- 238000004364 calculation method Methods 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 abstract description 7
- 238000009530 blood pressure measurement Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000013515 script Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000009790 rate-determining step (RDS) Methods 0.000 description 1
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/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/21—Design, administration or maintenance of databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5021—Priority
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及金融科技(Fintech)技术领域,公开了一种数据导入方法,所述方法包括:确定对目标数据库的并发数据导入任务;获取并计算各并发数据导入任务上一次的实际导入速率之和;若和大于0,则获取目标数据库的安全TPS、安全IOPS、当前TPS和当前IOPS;计算当前TPS与安全TPS之差得到TPS偏差,计算当前IOPS与安全IOPS之差得到IOPS偏差;根据TPS偏差和IOPS偏差的大小确定偏差值较大的目标当前指标;根据目标当前指标和并发数据导入任务的预设优先级确定各并发数据导入任务的最优导入速率,按照最优导入速率执行并发数据导入任务。本发明实现了将有限的数据库资源优先分配给最重要的任务。
Description
技术领域
本发明涉及金融科技(Fintech)技术领域,尤其涉及数据导入方法、装置统、设备及计算机程序产品。
背景技术
随着计算机技术的发展,越来越多的技术(大数据、分布式、区块链Blockchain、人工智能等)应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,但由于金融行业的安全性、实时性要求,也对数据导入导出技术提出了更高的要求。
由于DB(database,数据库)的性能瓶颈,同一时刻对DB进行大量数据导入操作时,可能对DB所在机器产生较高的负载,将导致DB出现性能压力,进而会影响服务的稳定。现有技术中,在对DB的数据导入速度进行控制时,是通过人工根据经验手动设置的数据导入速度,这种数据导入速度的设置方案对管理人员的经验依赖性极高,对于多个重要程度不一样的任务,无法保证将有限的数据库资源优先分配给最重要的任务。
发明内容
本发明的主要目的在于提出一种数据导入方法、装置、设备及计算机程序产品,旨在解决现有的数据库的数据导入速度配置的智能性和及时性不高的技术问题。
为实现上述目的,本发明提供一种数据导入方法,所述数据导入方法包括如下步骤:
确定对目标数据库的并发数据导入任务;
获取各所述并发数据导入任务上一次的实际导入速率;
计算各所述并发数据导入任务上一次的实际导入速率之和,得到当前并发导入速率;
若所述当前并发导入速率大于0,则获取所述目标数据库的安全每秒处理事务数TPS、安全每秒进行读写操作的次数IOPS、当前TPS和当前IOPS;
计算所述当前TPS与所述安全TPS之差,得到TPS偏差,计算所述当前IOPS与所述安全IOPS之差,得到IOPS偏差;
根据所述TPS偏差和IOPS偏差的大小,确定偏差值较大的目标当前指标,所述目标当前指标为所述当前TPS和当前IOPS中的一个;
根据所述目标当前指标和所述并发数据导入任务的预设优先级确定各所述并发数据导入任务的最优导入速率,按照与各所述并发数据导入任务按照对应的最优导入速率执行所述并发数据导入任务。
可选地,所述根据所述目标当前指标和所述并发数据导入任务的预设优先级确定各所述并发数据导入任务的最优导入速率的步骤包括:
根据所述并发数据导入任务的数量和各所述并发数据导入任务的预设优先级,确定各所述并发数据导入任务的并发资源占比;
根据所述目标当前指标对应的目标安全指标、所述目标当前指标和当前并发导入速率,确定期待并发导入速率;
计算各所述并发数据导入任务的所述并发资源占比和期待并发导入速率之积,作为所述并发数据导入任务的最优导入速率。
可选地,所述确定对目标数据库的并发数据导入任务的步骤之前,还包括:
获取对目标数据库的原始数据导入任务,基于所述目标数据库的预设最大并发值控制各所述原始数据导入任务进行抢锁;
将抢锁成功的原始数据导入任务确定为并发数据导入任务。
可选地,所述基于所述目标数据库的预设最大并发值控制各所述原始数据导入任务进行抢锁的步骤包括:
确定所述原始数据导入任务中存在依赖关系的依赖任务组和不存在依赖关系的非依赖任务组;其中,所述依赖任务组中的原始数据导入任务按照依赖关系顺序抢锁;
基于所述目标数据库的预设最大并发值,控制所述依赖任务组和所述非依赖任务组进行抢锁,其中,每一所述依赖任务组在同一时刻的允许抢锁任务的数量为1。
可选地所述获取对目标数据库的原始数据导入任务的步骤之前,还包括:
接收数仓数据导出请求,根据所述数仓数据导出请求获取填写于预设导出任务配置表页面中的数仓数据导出信息;所述数据导出信息包括源数仓信息、目标导出数据信息和目标数据库信息;
基于所述数据导出信息生成对目标数据库的原始数据导入任务。
可选地,所述获取所述目标数据库的当前TPS的步骤包括:
获取所述目标数据库从上一次启动至当前时刻所执行的第一更新语句数量、第一删除语句数量和第一插入语句数量;
在距所述当前时刻预设时长的第二时刻,获取所述目标数据库从上一次启动至所述第二时刻所执行的第二更新语句数量、第二删除语句数量和第二插入语句数量;
根据所述第一更新语句数量、第一删除语句数量、第一插入语句数量、第二更新语句数量、第二删除语句数量和第二插入语句数量和所述预设时长确定当前TPS。
可选地,所述获取所述目标数据库的当前IOPS的步骤包括:
获取所述目标数据库从上一次启动至当前时刻向硬盘读取键的数据块的第一读取次数和向硬盘写入键的数据块的第一写入次数;
在距所述当前时刻预设时长的第二时刻,获取所述目标数据库从上一次启动至所述第二时刻向硬盘读取键的数据块的第二读取次数和向硬盘写入键的数据块的第二写入次数;
根据所述第一读取次数、第一写入次数、第二读取次数、第二写入次数和所述预设时长确定当前IOPS。
此外,为实现上述目的,本发明还提供一种数据导入装置,所述数据导入装置包括:
并发任务确定模块,用于确定对目标数据库的并发数据导入任务;
实际导入速率确定模块,用于获取各所述并发数据导入任务上一次的实际导入速率;
当前导入速率确定模块,用于计算各所述并发数据导入任务上一次的实际导入速率之和,得到当前并发导入速率;
数据库参数获取模块,用于若所述当前并发导入速率大于0,则获取所述目标数据库的安全每秒处理事务数TPS、安全每秒进行读写操作的次数IOPS、当前TPS和当前IOPS;
偏差计算模块,用于计算所述当前TPS与所述安全TPS之差,得到TPS偏差,计算所述当前IOPS与所述安全IOPS之差,得到IOPS偏差;
目标指标确定模块,用于根据所述TPS偏差和IOPS偏差的大小,确定偏差值较大的目标当前指标,所述目标当前指标为所述当前TPS和当前IOPS中的一个;
导入速率确定模块,用于根据所述目标当前指标和所述并发数据导入任务的预设优先级确定各所述并发数据导入任务的最优导入速率,按照与各所述并发数据导入任务按照对应的最优导入速率执行所述并发数据导入任务。
此外,为实现上述目的,本发明还提供一种数据导入设备,所述数据导入设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据导入程序,所述数据导入程序被所述处理器执行时实现如上所述的数据导入方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机存储介质,所述计算机存储介质上存储有数据导入程序,所述数据导入程序被处理器执行时实现如上所述的数据导入方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机程序产品,所述计算机程序产品包括数据导入程序,所述数据导入程序被处理器执行时实现如上所述的数据导入方法的步骤。
本发明通过确定对目标数据库的并发数据导入任务;获取各所述并发数据导入任务上一次的实际导入速率;计算各所述并发数据导入任务上一次的实际导入速率之和,得到当前并发导入速率;若所述当前并发导入速率大于0,则获取所述目标数据库的安全每秒处理事务数TPS、安全每秒进行读写操作的次数IOPS、当前TPS和当前IOPS;计算所述当前TPS与所述安全TPS之差,得到TPS偏差,计算所述当前IOPS与所述安全IOPS之差,得到IOPS偏差;根据所述TPS偏差和IOPS偏差的大小,确定偏差值较大的目标当前指标,所述目标当前指标为所述当前TPS和当前IOPS中的一个;根据所述目标当前指标和所述并发数据导入任务的预设优先级确定各所述并发数据导入任务的最优导入速率,按照与各所述并发数据导入任务按照对应的最优导入速率执行所述并发数据导入任务。一方面,本发明通过依据偏差较大的性能指标对任务的导入速率自动进行调整,能够实现在保证数据库稳定性的前提下对导入速率进行调整;另一方面,通过根据任务的优先级确定对应的导入速率,能够给将有限的数据库资源优先分配给最重要的任务,从而提升数据库的数据导入速度配置的智能性和及时性。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的数据导入设备结构示意图;
图2为本发明数据导入方法第一实施例的流程示意图;
图3为本发明数据导入方法中IOPS偏差大于TPS偏差的一场景示意图;
图4为本发明数据导入方法中IOPS偏差大于TPS偏差的另一场景示意图;
图5为本发明数据导入方法中IOPS偏差小于TPS偏差的另一场景示意图;
图6为本发明数据导入方法中依据当前TPS进行调速后的数据库性能指标效果;
图7为本发明数据导入方法中依据当前IOPS进行调速后的数据库性能指标效果;
图8为本发明数据导入方法中预设导出任务配置表页面的示意图;
图9为本发明数据导入装置的模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的数据导入设备结构示意图。
本发明实施例数据导入设备可以是PC机或服务器设备,其上运行有虚拟机。
如图1所示,该数据导入设备可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的数据导入设备结构并不构成对设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及数据导入程序。
在图1所示的数据导入设备中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的数据导入程序,并执行下述数据导入方法中的操作。
基于上述硬件结构,提出本发明数据导入方法实施例。
参照图2,图2为本发明数据导入方法第一实施例的流程示意图,所述方法包括:
步骤S10,确定对目标数据库的并发数据导入任务;
步骤S20,获取各所述并发数据导入任务上一次的实际导入速率;
步骤S30,计算各所述并发数据导入任务上一次的实际导入速率之和,得到当前并发导入速率;
本实施例数据导入方法运用于数据导入设备中,数据导入设备可以是终端、机器人或者PC设备。
现有技术中,由于DB(database,数据库)的性能瓶颈,同一时刻对DB进行大量数据导入操作时,可能对DB所在机器产生较高的负载,将导致DB出现性能压力,进而会影响服务的稳定。现有技术中,在对DB的数据导入速度进行控制时,是通过人工根据经验手动设置的数据导入速度,这种数据导入速度的设置方案对管理人员的经验依赖性极高,对于多个重要程度不一样的任务,无法保证将有限的数据库资源优先分配给最重要的任务。
在此背景下,本实施例提供了一种数据导入方案,一方面通过依据偏差较大的性能指标对任务的导入速率自动进行调整,能够实现在保证数据库稳定性的前提下对导入速率进行调整;另一方面,通过根据任务的优先级确定对应的导入速率,能够给将有限的数据库资源优先分配给最重要的任务,从而提升数据库的数据导入速度配置的智能性和及时性。
在本实施例中,并发数据导入任务指的是多个需要同时操作同一个数据库的任务。在一实施场景中,并发数据导入任务可以是同一个数据库在一段时间内接收到的批量数据导入任务,即原始数据导入任务,该场景下,该原始数据导入任务的数量小于或者等于该数据库的最大并发值;在另一实施场景中,并发数据导入任务也可以是对前述原始数据导入任务进行并发限制后得到的,以避免高并发导致数据库性能压力过大,影响数据库的稳定性,可以理解的是,在该场景下,原始数据导入任务的数量大于该数据库的最大并发值。
在本实施例中,上述步骤S30之后还包括:确定所述当前并发导入速率是否等于0,若所述当前并发导入速率等于0,则按照与各所述并发数据导入任务对应的预设默认导入速率执行所述并发数据导入任务。
若任务为首次请求被执行,则该任务的上一次的实际导入速率为0,若当前并发导入速率等于0,说明各并发数据导入任务都是首次执行,则按照各并发数据导入任务对应的预设默认导入速率执行,无需进行最优调速处理。
步骤S40,若所述当前并发导入速率大于0,则获取所述目标数据库的安全每秒处理事务数TPS、安全每秒进行读写操作的次数IOPS、当前TPS和当前IOPS;
若当前并发导入速率大于0,说明并发数据导入任务中存在非首次执行的任务,则需进行最优调速处理,最优调速的基本原则是使并发数据导入任务在下一次被执行时以最优导入速率进行,使数据库的目标当前指标尽可能的稳定在对应的安全指标附近,从而保证数据库运行的稳定性,在这个前提下,再将有限的数据库资源优先分配给最重要的任务。
TPS(Transactions Per Second,每秒处理事务数)和IOPS(Input/Output PerSecond,每秒进行读写操作的次数)对于数据库这种读写频繁的应用,是衡量数据库性能的关键指标,故本实施例基于这两个关键指标来确定导入速率的依据。其中,安全TPS,顾名思义,指的是对数据库来说,TPS处于安全TPS值以及之下时,数据库能够以较高和较安全的性能运行,安全IOPS与之类似。
可以理解的是,安全TPS和安全IOPS可以是由数据库管理人员预先设置的;也可以是由数据导入设备对数据库进行压测,根据压测结果确定的,具体为,对数据库进行压测,得到数据库支持的最大TPS(Tm)和最大IOPS(Im),再结合安全系数k确定安全指标,安全TPS,即Ta=k*Tm,安全IOPS,即Ia=k*Im,其中,安全系数k由管理人员预先设置。
进一步地,上述步骤S40中,所述获取所述目标数据库的当前TPS的步骤包括:
步骤S41,获取所述目标数据库从上一次启动至当前时刻所执行的第一更新语句数量、第一删除语句数量和第一插入语句数量;
在本实施例中,在确定对目标数据库的并发数据导入任务时,获取目标数据库从上一次启动至当前时刻所执行的更新语句数量、删除语句数量和插入语句数量,作为第一更新语句数量(@old_num_com_update)、第一删除语句数量(@old_num_com_delete)和第一插入语句数量(@old_num_com_insert)。具体获取方式为通过以下语句实现:
select VARIABLE_VALUE into@old_num_com_update from GLOBAL_STATUSwhere VARIABLE_NAME='COM_UPDATE';
select VARIABLE_VALUE into@old_num_com_delete from GLOBAL_STATUSwhere VARIABLE_NAME='COM_DELETE';
select VARIABLE_VALUE into@old_num_com_insert from GLOBAL_STATUSwhere VARIABLE_NAME='COM_INSERT';
步骤S42,在距所述当前时刻预设时长的第二时刻,获取所述目标数据库从上一次启动至所述第二时刻所执行的第二更新语句数量、第二删除语句数量和第二插入语句数量;
在距离当前时刻预设时长的第二时刻,通过与步骤S41类似的方式,获取目标数据库从上一次启动至第二时刻所执行的第二更新语句数量(@new_num_com_update)、第二删除语句数量(@new_num_com_delete)和第二插入语句数量(@new_num_com_insert)。
步骤S43,根据所述第一更新语句数量、第一删除语句数量、第一插入语句数量、第二更新语句数量、第二删除语句数量和第二插入语句数量和所述预设时长确定当前TPS。
在确定当前TPS时,计算第二时刻的各语句数量之和,当前时刻的各语句数量之和,并将两个和的差值除以预设时长(t),即可得到当前TPS(Tc),具体为:
Tc=[(@new_num_com_update+@new_num_com_delete+@new_num_com_insert)-(@old_num_com_update+@old_num_com_delete+@old_num_com_insert)]/t。
其中,预设时长可由管理人员根据需要设置,例如,预设时长可以为1~60秒中的任意值,例如5秒、10秒、20秒、50秒等。
进一步地,上述步骤S40中,所述获取所述目标数据库的当前IOPS的步骤包括:
步骤S44,获取所述目标数据库从上一次启动至当前时刻向硬盘读取键的数据块的第一读取次数和向硬盘写入键的数据块的第一写入次数;
在本实施例中,在确定对目标数据库的并发数据导入任务时,获取目标数据库从上一次启动至当前时刻向硬盘读取键的数据块的读取次数和向硬盘写入键的数据块的写入次数,作为第一读取次数(@old_key_reads)和第一写入次数(@old_key_writes)。具体获取方式为通过以下语句实现:
select VARIABLE_VALUE INTO@old_key_reads from GLOBAL_STATUSwhereVARIABLE_NAME='KEY_READS';
select VARIABLE_VALUE INTO@old_key_writes from GLOBAL_STATUS whereVARIABLE_NAME='KEY_WRITES';
步骤S45,在距所述当前时刻预设时长的第二时刻,获取所述目标数据库从上一次启动至所述第二时刻向硬盘读取键的数据块的第二读取次数和向硬盘写入键的数据块的第二写入次数;
在距离当前时刻预设时长的第二时刻,通过与步骤S14类似的方式,获取目标数据库从上一次启动至第二时刻的第二读取次数(@new_key_reads)和第二写入次数(@new_key_writes)。
步骤S46,根据所述第一读取次数、第一写入次数、第二读取次数、第二写入次数和所述预设时长确定当前IOPS。
在确定当前IOPS时,计算第二时刻的读写次数之和,当前时刻的读写次数之和,并将两个和的差值除以预设时长(t),即可得到当前IOPS(Ic),具体为:
Ic=[(@new_key_reads+@new_key_writes)-(@old_key_reads+@old_key_writes)]/t。
其中,预设时长可由管理人员根据需要设置,例如,预设时长可以为1~60秒中的任意值,例如5秒、10秒、20秒、50秒等。
步骤S50,计算所述当前TPS与所述安全TPS之差,得到TPS偏差,计算所述当前IOPS与所述安全IOPS之差,得到IOPS偏差;
步骤S60,根据所述TPS偏差和IOPS偏差的大小,确定偏差值较大的目标当前指标,所述目标当前指标为所述当前TPS和当前IOPS中的一个;
在本实施例中,在确定当前TPS(Tc)、安全TPS(Ta)、当前IOPS(Ic)和安全IOPS(Ia)后,可计算当前TPS与安全TPS之差,得到TPS偏差△T=Tc-Ta,计算当前IOPS(Ic)和安全IOPS(Ia)之差,得到IOPS偏差△I=Ic-Ia。比较TPS指标的△T与IOPS指标的△I的大小,将偏差较大者对应的当前指标确定为目标当前指标,例如,参见图3及图4,若△T<△I,则将当前IOPS确定为目标当前指标;参见图5,若△T>△I,则将当前TPS确定为目标当前指标;若△T=△I,则将当前TPS和当前IOPS中的任一者确定为目标当前指标。
其中,偏差△所反映的是当前指标超出安全指标的值,该值越大,说明当前指标的资源越紧张,优先依据偏差较大的指标对任务导入速度进行设置,能够使该偏差较大的指标的资源紧张情况尽快缓解,避免数据库性能压力持续增大的情况发生。可以理解的是,偏差△可能大于0,也可能小于0,还可能等于0。
步骤S70,根据所述目标当前指标和所述并发数据导入任务的预设优先级确定各所述并发数据导入任务的最优导入速率,按照与各所述并发数据导入任务按照对应的最优导入速率执行所述并发数据导入任务。
在本实施例中,在确定目标当前指标后,即可根据目标当前指标和各并发数据导入任务的预设优先级确定各并发数据导入任务的最优导入速率。其中,各并发数据导入任务的预设优先级是管理人员根据每个任务的重要程度和/或紧急程度预先设置的。若目标当前指标为当前TPS,依据当前TPS进行调速后的数据库性能指标效果参见图6,可见,若TPS指标相对紧张,则重点根据TPS进行调速,可以实现调速后的数据库的TPS和IOPS均控制在安全指标上下;若目标当前指标为当前IOPS,依据当前IOPS进行调速后的数据库性能指标效果参见图7,可见,若IOPS指标相对紧张,则重点根据IOPS进行调速,可以实现调速后的数据库的TPS和IOPS均控制在安全指标上下。
进一步地,在按照各并发数据导入任务对应的最优导入速率执行并发数据导入任务后,会统计并记录各并发数据导入任务的实际导入速率,以供再次确定该并发数据导入任务的最优导入速率时使用。
本实施例通过确定对目标数据库的并发数据导入任务;获取各所述并发数据导入任务上一次的实际导入速率;计算各所述并发数据导入任务上一次的实际导入速率之和,得到当前并发导入速率;若所述当前并发导入速率大于0,则获取所述目标数据库的安全每秒处理事务数TPS、安全每秒进行读写操作的次数IOPS、当前TPS和当前IOPS;计算所述当前TPS与所述安全TPS之差,得到TPS偏差,计算所述当前IOPS与所述安全IOPS之差,得到IOPS偏差;根据所述TPS偏差和IOPS偏差的大小,确定偏差值较大的目标当前指标,所述目标当前指标为所述当前TPS和当前IOPS中的一个;根据所述目标当前指标和所述并发数据导入任务的预设优先级确定各所述并发数据导入任务的最优导入速率,按照与各所述并发数据导入任务按照对应的最优导入速率执行所述并发数据导入任务。本实施例一方面通过依据偏差较大的性能指标对任务的导入速率自动进行调整,能够实现在保证数据库稳定性的前提下对导入速率进行调整;另一方面,通过根据任务的优先级确定对应的导入速率,能够给将有限的数据库资源优先分配给最重要的任务,从而提升数据库的数据导入速度配置的智能性和及时性。
进一步地,基于上述实施例,提出本发明数据导入方法第二实施例。
上述步骤S70中,所述根据所述目标当前指标和所述并发数据导入任务的预设优先级确定各所述并发数据导入任务的最优导入速率的步骤包括:
步骤S71,根据所述并发数据导入任务的数量和各所述并发数据导入任务的预设优先级,确定各所述并发数据导入任务的并发资源占比;
步骤S72,根据所述目标当前指标对应的目标安全指标、所述目标当前指标和当前并发导入速率,确定期待并发导入速率;
步骤S73,计算各所述并发数据导入任务的所述并发资源占比和期待并发导入速率之积,作为所述并发数据导入任务的最优导入速率。
在本实施例中,在获取到各发数据导入任务的预设优先级后,即可结合并发数据导入任务的数量确定各并发数据导入任务的并发资源占比,具体为:
其中,Ri为并发资源占比;
Li、Lj为预设优先级;
n为并发数据导入任务的数量,n≤目标数据库的预设最大并发值。
由于最优调速的基本原则是使并发数据导入任务在下一次被执行时以最优导入速率进行,以使数据库的目标当前指标尽可能的稳定在对应的安全指标附近,从而保证数据库运行的稳定性,在这个前提下,再将有限的数据库资源优先分配给最重要的任务。另外,由于导入速率与当前指标是呈正比的,因此,若目标当前指标是当前TPS时,可以确定以下公式:
其中,V1sum为当前并发导入速率;
V2sum为各并发数据导入任务的最优导入速率之和,即期待并发导入速率;
Ta为目标当前指标;
Tc为目标安全指标。
通过该公式确定期待并发导入速率后,计算各并发数据导入任务的所述并发资源占比和期待并发导入速率之积,即可得到各并发数据导入任务的最优导入速率,具体为:
对应的,若目标当前指标是当前IOPS时,可以确定以下公式:
其中,V1sum为当前并发导入速率;
V2sum为各并发数据导入任务的最优导入速率之和,即期待并发导入速率;
Ia为目标当前指标;
Ic为目标安全指标。
通过该公式确定期待并发导入速率后,计算各并发数据导入任务的所述并发资源占比和期待并发导入速率之积,即可得到各并发数据导入任务的最优导入速率,具体为:
进一步地,基于上述实施例,提出本发明数据导入方法第三实施例。
上述步骤S10之前,还包括对原始数据导入任务进行并发限制的过程,具体为:
步骤a1,获取对目标数据库的原始数据导入任务,基于所述目标数据库的预设最大并发值控制各所述原始数据导入任务进行抢锁;
步骤a2,将抢锁成功的原始数据导入任务确定为并发数据导入任务。
在本实施例中,在检测到对目标数据库的原始数据导入任务时,确定原始数据导入任务的数量是否大于目标数据库的预设最大并发值,若否,则直接将原始数据导入任务确定为对目标数据库的并发数据导入任务;若是,则控制原始数据导入任务抢锁,将抢锁成功的原始数据导入任务确定为并发数据导入任务,而抢锁失败的原始数据导入任务则进入等待状态,至有锁被释放时再次抢锁,若抢锁失败则等待下一次有锁被释放时抢锁,直至抢锁成功。
其中,预设最大并发值,指的是目标数据库同一时刻最大允许运行的任务数量,可由管理人员根据目标数据库的性能设置,也可由数据导入设备对数据库进行并发任务压测,根据压测结果自动确定;本实施例中的锁,指的是并发锁,并发锁的数量与预设最大并发值一致,抢到锁的原始数据导入任务才会被确定为并发数据导入任务,并对该并发数据导入任务执行后续的导入速率确定步骤,再根据确定的导入速率执行该并发数据导入任务,在并发数据导入任务执行完成之后,其抢占的并发锁会被释放,被释放的锁能够再次被其他原始数据导入任务抢占。
在本实施例中,基于数据库的最大并发值引入抢锁机制,能够限制数据库的并发数据导入任务的数量,降低数据库同时处理的任务量,从而降低数据库的性能压力。
进一步地,上述步骤a1中,所述基于所述目标数据库的预设最大并发值控制各所述原始数据导入任务进行抢锁的步骤包括:
步骤a11,确定所述原始数据导入任务中存在依赖关系的依赖任务组和不存在依赖关系的非依赖任务组;其中,所述依赖任务组中的原始数据导入任务按照依赖关系排列;
步骤a12,基于所述目标数据库的预设最大并发值,控制所述依赖任务组和所述非依赖任务组进行抢锁,其中,每一所述依赖任务组在同一时刻的允许抢锁任务的数量为1。
由于在默认情况下,所有的原始数据导入任务都会同时抢锁,并在抢锁成功后被执行,但若部分任务之间存在依赖关系,即只有当X任务前面的一个或多个前置任务执行完成之后,才能执行X任务,此时若X任务与前置任务一起抢锁,即使X任务抢锁成功,其也会因为前置任务未完成而无法顺利执行。因此,为了减少无效抢锁,本实施例在获取到原始数据导入任务后,会确定原始数据导入任务中是否有存在依赖关系的任务,若否,则可控制所有的原始数据导入任务同时抢锁;若是,则需将互相之间存在依赖关系的任务归入依赖任务组,依赖任务组中的任务按照依赖关系串行抢锁并串行执行,剩余不存在依赖关系的任务则归入非依赖任务组。在划分依赖任务组和非依赖任务组,则可控制依赖任务组和所述非依赖任务组进行抢锁,每一依赖任务组在同一时刻只能有1个任务参与抢锁,且该任务为依赖关系中排序最靠前的任务,而非依赖任务组中的任务则没有该限制条件,即非依赖任务组中的所有任务在同一时刻都可以参与抢锁。
其中,每个任务的依赖关系是预先设置的,可通过为任务添加依赖标记的形式,设置任务的依赖关系,通过当前任务的依赖关系可以确定当前任务的前置任务,进而根据前置任务进行依赖任务组的划分。
在本实施例中,通过根据依赖关系控制任务串行抢锁和执行,能够减少无效抢锁的概率。
进一步地,基于上述实施例,提出本发明数据导入方法第四实施例。
上述获取对目标数据库的原始数据导入任务的步骤之前,还包括:
步骤b1,接收数仓数据导出请求,根据所述数仓数据导出请求获取填写于预设导出任务配置表页面中的数仓数据导出信息;所述数据导出信息包括源数仓信息、目标导出数据信息和目标数据库信息;
步骤b2,基于所述数据导出信息生成对目标数据库的原始数据导入任务。
现有的将数据从数仓导入至数据库的任务是通过脚本编写的方式实现的,由开发人员根据需求,将数仓信息与导出数据库信息维护在配置文件中,然后手动组装数据导出的SQOOP语句,再通过任务递交命令实现将数仓数据导入至数据库。由于这种数仓数据导入至数据库的任务是由开发人员手动编写脚本实现的,导致每个任务都需要编写对应的代码,对使用人员的技术能力要求较高,还存在配置繁琐、容易出错、代码很难复用、开发和使用成本高的缺点。
针对上述缺陷,本实施例封装了数据从数仓导出到数据库的通用模块,使数仓或数据库的使用人员不需要编写任何代码,只需要通过导出任务配置表页面填写数仓数据导出信息就能实现数仓数据导出任务的配置,进而基于该数仓数据导出信息生成对目标数据库的原始数据导入任务,从而使得数仓数据任务的配置流程能够通用化、可复用化,降低了配置难度和成本。
在本实施例中,当有将数仓数据导出至数据库的需求时,用户可以在前端页面打开预设导出任务配置表页面,参见图8,该页面中设计有填写源数仓信息(数据仓表)、目标导出数据信息(出库字段列表)和目标数据库信息(业务DB)的相应位置,还可以设计填写执行用户、数据模式(DCN不拆分、DCN拆分和DCN复制)、拆分字段、拆分依据、过滤条件、导出模式(updateonly、allowinsert和onlyinsert)、DB表、映射字段、区域、更新主键、删除SQL、SQL语句等信息的相应位置,具体可根据业务需要对页面的信息进行增减或修改。
在数仓数据导出信息配置完成之后,即可将预设导出任务配置表页面中填写的信息与对应的脚本模本进行组装,得到对目标数据库的原始数据导入任务。其中,脚本模板是开发人员基于数仓数据导出到数据库的通用流程预先编写的通用脚本。
本实施例通过提供导出任务配置表页面的方式,使得用户能够根据实际需求自定义配置数据导入任务,而无需接触代码层,降低了任务配置的难度,也使得任务配置更加灵活和高效。
进一步地,通过该前端页面,用户还可查看其所配置的原始数据导入任务的执行结果和异常原因等相关信息。
本发明还提供一种数据导入装置,参照图9,所述数据导入装置包括:
并发任务确定模块10,用于确定对目标数据库的并发数据导入任务;
实际导入速率确定模块20,用于获取各所述并发数据导入任务上一次的实际导入速率;
当前导入速率确定模块30,用于计算各所述并发数据导入任务上一次的实际导入速率之和,得到当前并发导入速率;
数据库参数获取模块40,用于若所述当前并发导入速率大于0,则获取所述目标数据库的安全每秒处理事务数TPS、安全每秒进行读写操作的次数IOPS、当前TPS和当前IOPS;
偏差计算模块50,用于计算所述当前TPS与所述安全TPS之差,得到TPS偏差,计算所述当前IOPS与所述安全IOPS之差,得到IOPS偏差;
目标指标确定模块60,用于根据所述TPS偏差和IOPS偏差的大小,确定偏差值较大的目标当前指标,所述目标当前指标为所述当前TPS和当前IOPS中的一个;
导入速率确定模块70,用于根据所述目标当前指标和所述并发数据导入任务的预设优先级确定各所述并发数据导入任务的最优导入速率,按照与各所述并发数据导入任务按照对应的最优导入速率执行所述并发数据导入任务。
可选地,所述导入速率确定模块,还用于:
根据所述并发数据导入任务的数量和各所述并发数据导入任务的预设优先级,确定各所述并发数据导入任务的并发资源占比;
根据所述目标当前指标对应的目标安全指标、所述目标当前指标和当前并发导入速率,确定期待并发导入速率;
计算各所述并发数据导入任务的所述并发资源占比和期待并发导入速率之积,作为所述并发数据导入任务的最优导入速率。
可选地,所述并发任务确定模块,还用于:
获取对目标数据库的原始数据导入任务,基于所述目标数据库的预设最大并发值控制各所述原始数据导入任务进行抢锁;
将抢锁成功的原始数据导入任务确定为并发数据导入任务。
可选地,所述并发任务确定模块,还用于:
确定所述原始数据导入任务中存在依赖关系的依赖任务组和不存在依赖关系的非依赖任务组;其中,所述依赖任务组中的原始数据导入任务按照依赖关系顺序抢锁;
基于所述目标数据库的预设最大并发值,控制所述依赖任务组和所述非依赖任务组进行抢锁,其中,每一所述依赖任务组在同一时刻的允许抢锁任务的数量为1。
可选地,所述并发任务确定模块,还用于:
接收数仓数据导出请求,根据所述数仓数据导出请求获取填写于预设导出任务配置表页面中的数仓数据导出信息;所述数据导出信息包括源数仓信息、目标导出数据信息和目标数据库信息;
基于所述数据导出信息生成对目标数据库的原始数据导入任务。
可选地,所述数据库参数获取模块,还用于:
获取所述目标数据库从上一次启动至当前时刻所执行的第一更新语句数量、第一删除语句数量和第一插入语句数量;
在距所述当前时刻预设时长的第二时刻,获取所述目标数据库从上一次启动至所述第二时刻所执行的第二更新语句数量、第二删除语句数量和第二插入语句数量;
根据所述第一更新语句数量、第一删除语句数量、第一插入语句数量、第二更新语句数量、第二删除语句数量和第二插入语句数量和所述预设时长确定当前TPS。
可选地,所述数据库参数获取模块,还用于:
获取所述目标数据库从上一次启动至当前时刻向硬盘读取键的数据块的第一读取次数和向硬盘写入键的数据块的第一写入次数;
在距所述当前时刻预设时长的第二时刻,获取所述目标数据库从上一次启动至所述第二时刻向硬盘读取键的数据块的第二读取次数和向硬盘写入键的数据块的第二写入次数;
根据所述第一读取次数、第一写入次数、第二读取次数、第二写入次数和所述预设时长确定当前IOPS。
上述各程序单元所执行的方法可参照本发明数据导入方法各个实施例,此处不再赘述。
本发明还提供一种数据导入设备,数据导入设备包括:存储器、处理器及存储在存储器上并可在处理器上运行的数据导入程序,数据导入程序被处理器执行时所实现的方法可参照本发明数据导入方法各个实施例,此处不再赘述。
本发明还提供一种计算机存储介质。
本发明计算机存储介质上存储有数据导入程序,所述数据导入程序被处理器执行时实现如上所述的数据导入方法的步骤。
其中,在所述处理器上运行的数据导入程序被执行时所实现的方法可参照本发明数据导入方法各个实施例,此处不再赘述。
本发明还提供一种计算机程序产品。
本发明计算机程序产品包括数据导入程序,所述数据导入程序被处理器执行时实现如上所述的数据导入方法的步骤。
其中,在所述处理器上运行的数据导入程序被执行时所实现的方法可参照本发明数据导入方法各个实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种数据导入方法,其特征在于,所述数据导入方法包括:
确定对目标数据库的并发数据导入任务;
获取各所述并发数据导入任务上一次的实际导入速率;
计算各所述并发数据导入任务上一次的实际导入速率之和,得到当前并发导入速率;
若所述当前并发导入速率大于0,则获取所述目标数据库的安全每秒处理事务数TPS、安全每秒进行读写操作的次数IOPS、当前TPS和当前IOPS;
计算所述当前TPS与所述安全TPS之差,得到TPS偏差,计算所述当前IOPS与所述安全IOPS之差,得到IOPS偏差;
根据所述TPS偏差和IOPS偏差的大小,确定偏差值较大的目标当前指标,所述目标当前指标为所述当前TPS和当前IOPS中的一个;
根据所述目标当前指标和所述并发数据导入任务的预设优先级确定各所述并发数据导入任务的最优导入速率,按照与各所述并发数据导入任务按照对应的最优导入速率执行所述并发数据导入任务。
2.如权利要求1所述的数据导入方法,其特征在于,所述根据所述目标当前指标和所述并发数据导入任务的预设优先级确定各所述并发数据导入任务的最优导入速率的步骤包括:
根据所述并发数据导入任务的数量和各所述并发数据导入任务的预设优先级,确定各所述并发数据导入任务的并发资源占比;
根据所述目标当前指标对应的目标安全指标、所述目标当前指标和当前并发导入速率,确定期待并发导入速率;
计算各所述并发数据导入任务的所述并发资源占比和期待并发导入速率之积,作为所述并发数据导入任务的最优导入速率。
3.如权利要求1所述的数据导入方法,其特征在于,所述确定对目标数据库的并发数据导入任务的步骤之前,还包括:
获取对目标数据库的原始数据导入任务,基于所述目标数据库的预设最大并发值控制各所述原始数据导入任务进行抢锁;
将抢锁成功的原始数据导入任务确定为并发数据导入任务。
4.如权利要求3所述的数据导入方法,其特征在于,所述基于所述目标数据库的预设最大并发值控制各所述原始数据导入任务进行抢锁的步骤包括:
确定所述原始数据导入任务中存在依赖关系的依赖任务组和不存在依赖关系的非依赖任务组;其中,所述依赖任务组中的原始数据导入任务按照依赖关系顺序抢锁;
基于所述目标数据库的预设最大并发值,控制所述依赖任务组和所述非依赖任务组进行抢锁,其中,每一所述依赖任务组在同一时刻的允许抢锁任务的数量为1。
5.如权利要求3所述的数据导入方法,其特征在于,所述获取对目标数据库的原始数据导入任务的步骤之前,还包括:
接收数仓数据导出请求,根据所述数仓数据导出请求获取填写于预设导出任务配置表页面中的数仓数据导出信息;所述数据导出信息包括源数仓信息、目标导出数据信息和目标数据库信息;
基于所述数据导出信息生成对目标数据库的原始数据导入任务。
6.如权利要求1所述的数据导入方法,其特征在于,所述获取所述目标数据库的当前TPS的步骤包括:
获取所述目标数据库从上一次启动至当前时刻所执行的第一更新语句数量、第一删除语句数量和第一插入语句数量;
在距所述当前时刻预设时长的第二时刻,获取所述目标数据库从上一次启动至所述第二时刻所执行的第二更新语句数量、第二删除语句数量和第二插入语句数量;
根据所述第一更新语句数量、第一删除语句数量、第一插入语句数量、第二更新语句数量、第二删除语句数量和第二插入语句数量和所述预设时长确定当前TPS。
7.如权利要求1所述的数据导入方法,其特征在于,所述获取所述目标数据库的当前IOPS的步骤包括:
获取所述目标数据库从上一次启动至当前时刻向硬盘读取键的数据块的第一读取次数和向硬盘写入键的数据块的第一写入次数;
在距所述当前时刻预设时长的第二时刻,获取所述目标数据库从上一次启动至所述第二时刻向硬盘读取键的数据块的第二读取次数和向硬盘写入键的数据块的第二写入次数;
根据所述第一读取次数、第一写入次数、第二读取次数、第二写入次数和所述预设时长确定当前IOPS。
8.一种数据导入装置,其特征在于,所述数据导入装置包括:
并发任务确定模块,用于确定对目标数据库的并发数据导入任务;
实际导入速率确定模块,用于获取各所述并发数据导入任务上一次的实际导入速率;
当前导入速率确定模块,用于计算各所述并发数据导入任务上一次的实际导入速率之和,得到当前并发导入速率;
数据库参数获取模块,用于若所述当前并发导入速率大于0,则获取所述目标数据库的安全每秒处理事务数TPS、安全每秒进行读写操作的次数IOPS、当前TPS和当前IOPS;
偏差计算模块,用于计算所述当前TPS与所述安全TPS之差,得到TPS偏差,计算所述当前IOPS与所述安全IOPS之差,得到IOPS偏差;
目标指标确定模块,用于根据所述TPS偏差和IOPS偏差的大小,确定偏差值较大的目标当前指标,所述目标当前指标为所述当前TPS和当前IOPS中的一个;
导入速率确定模块,用于根据所述目标当前指标和所述并发数据导入任务的预设优先级确定各所述并发数据导入任务的最优导入速率,按照与各所述并发数据导入任务按照对应的最优导入速率执行所述并发数据导入任务。
9.一种数据导入设备,其特征在于,所述数据导入设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的自定义图表生成程序,所述自定义图表生成程序被所述处理器执行时实现如权利要求1至7中任一项所述的数据导入方法的步骤。
10.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的数据导入方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110659020.XA CN113342885B (zh) | 2021-06-15 | 2021-06-15 | 数据导入方法、装置、设备及计算机程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110659020.XA CN113342885B (zh) | 2021-06-15 | 2021-06-15 | 数据导入方法、装置、设备及计算机程序产品 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113342885A true CN113342885A (zh) | 2021-09-03 |
CN113342885B CN113342885B (zh) | 2022-08-12 |
Family
ID=77477039
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110659020.XA Active CN113342885B (zh) | 2021-06-15 | 2021-06-15 | 数据导入方法、装置、设备及计算机程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113342885B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118550927A (zh) * | 2024-05-28 | 2024-08-27 | 北京优特捷信息技术有限公司 | 一种资产数据批量插入大数据分析平台的数据插入方法 |
Citations (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5724600A (en) * | 1994-12-06 | 1998-03-03 | Fujitsu Limited | Parallel processor system |
US20020184381A1 (en) * | 2001-05-30 | 2002-12-05 | Celox Networks, Inc. | Method and apparatus for dynamically controlling data flow on a bi-directional data bus |
US20130117235A1 (en) * | 2011-11-07 | 2013-05-09 | Sap Ag | Implicit Group Commit When Writing Database Log Entries |
US20140310473A1 (en) * | 2013-04-11 | 2014-10-16 | Institute of Computer Science (ICS) of the Foundation for Research and Technology-Hellas (FOR | Storage i/o path partitioning to eliminate i/o interference in consolidated servers |
US9547659B1 (en) * | 2015-08-11 | 2017-01-17 | International Business Machines Corporation | Reducing the cost of update, delete, and append-only insert operations in a database |
US20170083378A1 (en) * | 2015-09-18 | 2017-03-23 | Salesforce.Com, Inc. | Managing processing of long tail task sequences in a stream processing framework |
CN107145432A (zh) * | 2017-03-30 | 2017-09-08 | 华为技术有限公司 | 一种建立模型数据库的方法以及客户端 |
US9798584B1 (en) * | 2015-09-29 | 2017-10-24 | EMC IP Holding Company LLC | Methods and apparatus for IO sizing based task throttling |
CN108664628A (zh) * | 2018-05-14 | 2018-10-16 | 平安科技(深圳)有限公司 | 一种数据的导出方法及设备 |
US20190146837A1 (en) * | 2014-09-29 | 2019-05-16 | Samsung Electronics Co., Ltd. | Distributed real-time computing framework using in-storage processing |
CN109815295A (zh) * | 2019-02-18 | 2019-05-28 | 国家计算机网络与信息安全管理中心 | 分布式集群数据导入方法及装置 |
CN109857518A (zh) * | 2019-01-08 | 2019-06-07 | 平安科技(深圳)有限公司 | 一种网络资源的分配方法及设备 |
CN110209642A (zh) * | 2018-02-05 | 2019-09-06 | 北京智明星通科技股份有限公司 | 信息处理的方法、装置、服务器及计算机可读介质 |
US10503535B1 (en) * | 2017-07-13 | 2019-12-10 | EMC IP Holding Company LLC | Requirements based performance monitoring for virtual machine networks |
CN111506425A (zh) * | 2020-04-14 | 2020-08-07 | 星辰天合(北京)数据科技有限公司 | 服务质量数据处理方法和装置 |
US20200326878A1 (en) * | 2019-04-15 | 2020-10-15 | EMC IP Holding Company LLC | Early io control techniques for a remote data facility |
CN111782396A (zh) * | 2020-07-01 | 2020-10-16 | 浪潮云信息技术股份公司 | 一种基于分布式数据库的并发弹性控制方法 |
CN111858055A (zh) * | 2020-07-23 | 2020-10-30 | 平安普惠企业管理有限公司 | 任务处理方法、服务器及存储介质 |
CN112612537A (zh) * | 2020-12-16 | 2021-04-06 | 平安普惠企业管理有限公司 | 配置数据缓存方法、装置、设备及存储介质 |
-
2021
- 2021-06-15 CN CN202110659020.XA patent/CN113342885B/zh active Active
Patent Citations (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5724600A (en) * | 1994-12-06 | 1998-03-03 | Fujitsu Limited | Parallel processor system |
US20020184381A1 (en) * | 2001-05-30 | 2002-12-05 | Celox Networks, Inc. | Method and apparatus for dynamically controlling data flow on a bi-directional data bus |
US20130117235A1 (en) * | 2011-11-07 | 2013-05-09 | Sap Ag | Implicit Group Commit When Writing Database Log Entries |
US20140310473A1 (en) * | 2013-04-11 | 2014-10-16 | Institute of Computer Science (ICS) of the Foundation for Research and Technology-Hellas (FOR | Storage i/o path partitioning to eliminate i/o interference in consolidated servers |
US20190146837A1 (en) * | 2014-09-29 | 2019-05-16 | Samsung Electronics Co., Ltd. | Distributed real-time computing framework using in-storage processing |
US9547659B1 (en) * | 2015-08-11 | 2017-01-17 | International Business Machines Corporation | Reducing the cost of update, delete, and append-only insert operations in a database |
US20170083378A1 (en) * | 2015-09-18 | 2017-03-23 | Salesforce.Com, Inc. | Managing processing of long tail task sequences in a stream processing framework |
US9798584B1 (en) * | 2015-09-29 | 2017-10-24 | EMC IP Holding Company LLC | Methods and apparatus for IO sizing based task throttling |
CN107145432A (zh) * | 2017-03-30 | 2017-09-08 | 华为技术有限公司 | 一种建立模型数据库的方法以及客户端 |
US10503535B1 (en) * | 2017-07-13 | 2019-12-10 | EMC IP Holding Company LLC | Requirements based performance monitoring for virtual machine networks |
CN110209642A (zh) * | 2018-02-05 | 2019-09-06 | 北京智明星通科技股份有限公司 | 信息处理的方法、装置、服务器及计算机可读介质 |
CN108664628A (zh) * | 2018-05-14 | 2018-10-16 | 平安科技(深圳)有限公司 | 一种数据的导出方法及设备 |
CN109857518A (zh) * | 2019-01-08 | 2019-06-07 | 平安科技(深圳)有限公司 | 一种网络资源的分配方法及设备 |
CN109815295A (zh) * | 2019-02-18 | 2019-05-28 | 国家计算机网络与信息安全管理中心 | 分布式集群数据导入方法及装置 |
US20200326878A1 (en) * | 2019-04-15 | 2020-10-15 | EMC IP Holding Company LLC | Early io control techniques for a remote data facility |
CN111506425A (zh) * | 2020-04-14 | 2020-08-07 | 星辰天合(北京)数据科技有限公司 | 服务质量数据处理方法和装置 |
CN111782396A (zh) * | 2020-07-01 | 2020-10-16 | 浪潮云信息技术股份公司 | 一种基于分布式数据库的并发弹性控制方法 |
CN111858055A (zh) * | 2020-07-23 | 2020-10-30 | 平安普惠企业管理有限公司 | 任务处理方法、服务器及存储介质 |
CN112612537A (zh) * | 2020-12-16 | 2021-04-06 | 平安普惠企业管理有限公司 | 配置数据缓存方法、装置、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
陈学轩等: "闪存数据库顺序和随机操作性能深度测试和分析", 《计算机应用与软件》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118550927A (zh) * | 2024-05-28 | 2024-08-27 | 北京优特捷信息技术有限公司 | 一种资产数据批量插入大数据分析平台的数据插入方法 |
CN118550927B (zh) * | 2024-05-28 | 2024-11-29 | 北京优特捷信息技术有限公司 | 一种资产数据批量插入大数据分析平台的数据插入方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113342885B (zh) | 2022-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3835987B1 (en) | Method and system for automatically identifying and correcting security vulnerabilities in containers | |
US11934811B2 (en) | Container image building using dependency container images | |
US10061573B2 (en) | User interfaces of application porting software platform | |
US6826604B2 (en) | Input/output device information management system for multi-computer system | |
US4853873A (en) | Knowledge information processing system and method thereof | |
US9465608B2 (en) | Code separation with semantic guarantees | |
CN111930489B (zh) | 一种任务调度方法、装置、设备及存储介质 | |
JPH07262072A (ja) | ファイル管理装置 | |
CN110737460A (zh) | 一种平台项目管理方法及装置 | |
US7457832B2 (en) | Verifying dynamically generated operations on a data store | |
CN116226092B (zh) | 数据库更新方法及装置 | |
US9256850B2 (en) | Orphan token management during in-flight process system migration | |
US9904574B2 (en) | Parallel computing without requiring antecedent code deployment | |
US20050267914A1 (en) | Method and apparatus for updating a database using table staging and queued relocation and deletion | |
CN113342885A (zh) | 数据导入方法、装置、设备及计算机程序产品 | |
CN113568604B (zh) | 风控策略的更新方法、装置及计算机可读存储介质 | |
US20230195792A1 (en) | Database management methods and associated apparatus | |
US10606939B2 (en) | Applying matching data transformation information based on a user's editing of data within a document | |
CN114356848A (zh) | 元数据管理方法、计算机存储介质及电子设备 | |
US20240232781A1 (en) | Compositional Construction of Digital Twins | |
US12298893B2 (en) | Test conflict guard for parallel software testing | |
US12271293B1 (en) | Parallel software testing based on annotations | |
US12174887B2 (en) | Mapping expression generator | |
CN117909052A (zh) | 流程的调度系统、方法及装置 | |
CN115480804A (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 |