1 .一种基于多并发技术从数据库快速导出批量数据方法,其特征在于,包括以下步骤:
数据导出工具负责读取配置文件,与数据导出插件的写文件进程相连接,并调用所述
数据导出插件进行数据导出工作;
每个所述写文件进程接收所述数据导出工具的连接后创建多个数据处理进程,其中,
将数据处理流程的元组读取、元组解析和数据转换三个阶段合并在一个所述数据处理进
程,所述数据处理进程的具体个数根据用户的输入参数来决定;
将解析后的所述元组转化为目标格式数据后存储于共享内存队列;
所述写文件进程遍历所有所述共享内存队列,从其取出目标格式数据后批量写入到目
标数据文件。
2.根据权利要求1所述的基于多并发技术从数据库快速导出批量数据方法,其特征在
于,该方法还包括:在所述写文件进程的初始化函数中获取当前快照并存储,并将存储的快
照名传给所述数据处理进程,所述数据处理进程根据所述快照名读取相应的快照。
3 .根据权利要求1所述的基于多并发技术从数据库快速导出批量数据方法,其特征在
于,该方法还包括:在所述数据处理进程中采用异常捕获机制捕获出错信息进行异常处理,
将错误进行分类处理并记入日志。
4 .根据权利要求1‑3任一项所述的基于多并发技术从数据库快速导出批量数据方法,
其特征在于,所述数据导出工具包括:
在所述数据导出工具读取命令行参数和解析配置文件;
将解析后的配置信息存储于链表,并将所述链表中的配置选项转化成字符串;
将配置选项作为函数的参数,调用数据导出插件中快速导出函数;
数据库服务器根据配置选项导出数据。
5 .根据权利要求4所述的基于多并发技术从数据库快速导出批量数据方法,其特征在
于,调用数据导出插件中快速导出函数包括:
将快速导出函数进行参数解析;
创建第一Reader模块和第一Writer模块,并调用对应模块的初始化函进行数初始化;
循环判断已导出的条数是否小于限制数,若导出的条数小于所述限制数,则通过所述
第一Reader模块获取下一个元组,如果下一个元组不为空,则通过所述第一Writer模块导
出元组;否则,若导出的条数超过受限范围或者获取元组为空则结束导出流程;
数据导出完成后,将导出的结果信息通过函数的返回值的形式返回。
6 .一种基于多并发技术从数据库快速导出批量数据系统,其特征在于,
包括数据导出工具和注册到数据库服务器的数据导出插件,其中,所述数据导出插件
包括一个写文件进程和多个数据处理进程,所述数据导出工具与所述写文件进程相连接;
所述数据导出插件接收连接后创建多个数据处理进程,其中,将数据处理流程的元组
读取、元组解析和数据转换三个阶段合并在一个所述数据处理进程,所述数据处理进程的
具体个数根据用户的输入参数来决定。
7 .根据权利要求6所述的基于多并发技术从数据库快速导出批量数据系统,其特征在
于,所述数据导出工具包括:
配置和参数解析模块,用于在所述数据导出工具读取命令行参数和解析配置文件,将
解析后的配置信息存储于链表,并将所述链表中的配置选项转化成字符串;
权 利 要 求 书
1/2 页
2
评论