CN104090896B - 一种导入数据的方法、装置和系统 - Google Patents
一种导入数据的方法、装置和系统 Download PDFInfo
- Publication number
- CN104090896B CN104090896B CN201310705824.4A CN201310705824A CN104090896B CN 104090896 B CN104090896 B CN 104090896B CN 201310705824 A CN201310705824 A CN 201310705824A CN 104090896 B CN104090896 B CN 104090896B
- Authority
- CN
- China
- Prior art keywords
- data
- source
- entry
- data entry
- server
- 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
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
- G06F16/258—Data format conversion from or to a database
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种导入数据的方法、装置和系统,属于计算机技术领域。所述方法包括:获取源数据文件中包括的数据源格式的数据条目,并加入数据条目队列;逐行读取所述数据条目队列中的数据源格式的各数据条目,并分别将读取的数据源格式的各数据条目转换为数据库格式的数据条目;将转换得到的数据库格式的各数据条目分别导入存储服务器。采用本发明,可以在向存储服务器导入数据的过程中减小对存储服务器中数据查询处理的影响。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种导入数据的方法、装置和系统。
背景技术
随着计算机技术和网络技术的飞速发展,计算机能够实现的功能越来越丰富,已经成为了人们日常工作、学习、生活中非常重要的工具之一,而且,计算机所管理的数据量越来越大,尤其是在网络侧,网络服务器需要处理和存储海量的网络数据,一般在网络侧会设置有存储服务器(或称存储引擎),在其中建立数据库,用于对海量的数据进行存储,还可以支持数据查询等功能。在存储服务器中,主体数据一般不是以文件为载体存储的,数据是以键值对(key-value)的形式直接存储在存储介质中的,例如,某数据条目为张三的数学成绩为90,那么可以将张三作为主键(key),将90作为值(value)。
存储服务器中所存储的数据可以来自于各种各样的数据源服务器,数据源服务器是在执行本地处理过程中会产生需要通过存储服务器存储的数据的服务器,例如,执行网络业务的业务服务器、进行数据分析的分析服务器等,数据源服务器会按照一定的规则(如按周期、数据量等)将生成的数据导入到存储服务器中,这里,在存储服务器中存储的数据可以是各种各样的数据,如用户的操作信息、用户的资料信息、计算机的处理信息、计算机的状态信息等。现有技术中,数据源服务器在运行过程中会生成源数据,并将源数据以预订格式(如文本格式)文件(可称作源数据文件)的形式进行存储,源数据文件中包含有多个数据条目,例如,张三的数学成绩为90语文成绩为91即为一个数据条目,李四的数学成绩为80语文成绩为78也为一个数据条目。当执行导入时,先将源数据文件转换为镜像文件,该镜像文件中,每个数据条目是以键值对的形式存储的,可以认为是存储服务器中数据的镜像,然后将镜像文件导入到存储服务器中。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
现有技术中,数据源服务器向存储服务器导入数据的过程中,将转换得到的镜像文件整体导入存储服务器,是以文件为单位执行导入处理的,由于镜像文件中的数据条目较多,其导入过程需要长时间占用CPU(CentralProcessingUnit,中央处理器)资源、IO(Input/Output,输入输出)资源等系统资源,这将导致存储服务器中的数据查询等处理需要等待镜像文件导入完毕后才能够进行,从而,影响了存储服务器中的数据查询处理的正常进行。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种导入数据的方法、装置和系统,以在向存储服务器导入数据的过程中减小对存储服务器中数据查询处理的影响。所述技术方案如下:
第一方面,提供了一种导入数据的方法,所述方法包括:
获取源数据文件中包括的数据源格式的数据条目,并加入数据条目队列;
逐行读取所述数据条目队列中的数据源格式的各数据条目,并分别将读取的数据源格式的各数据条目转换为数据库格式的数据条目;
将转换得到的数据库格式的各数据条目分别导入存储服务器。
第二方面,提供了一种导入数据的方法,所述方法包括:
接收并存储数据源服务器分别导入的数据库格式的各数据条目;
其中,所述数据库格式的各数据条目,由所述数据源服务器获取源数据文件中包括的数据源格式的数据条目,加入数据条目队列,并逐行读取所述数据条目队列中的数据源格式的各数据条目,分别将读取的数据源格式的各数据条目进行转换得到。
第三方面,提供了一种数据源服务器,所述数据源服务器包括:
获取模块,用于获取源数据文件中包括的数据源格式的数据条目,并加入数据条目队列;
转换模块,用于逐行读取所述数据条目队列中的数据源格式的各数据条目,并分别将读取的数据源格式的各数据条目转换为数据库格式的数据条目;
导入模块,用于将转换得到的数据库格式的各数据条目分别导入存储服务器。
第四方面,提供了一种存储服务器,所述存储服务器包括:
存储模块,用于接收并存储数据源服务器分别导入的数据库格式的各数据条目;
其中,所述数据库格式的各数据条目,由所述数据源服务器获取源数据文件中包括的数据源格式的数据条目,加入数据条目队列,并逐行读取所述数据条目队列中的数据源格式的各数据条目,分别将读取的数据源格式的各数据条目进行转换得到。
第五方面,提供了一种导入数据的系统,所述系统包括数据源服务器和存储服务器,其中:
所述数据源服务器,用于获取源数据文件中包括的数据源格式的数据条目,并加入数据条目队列;逐行读取所述数据条目队列中的数据源格式的各数据条目,并分别将读取的数据源格式的各数据条目转换为数据库格式的数据条目;将转换得到的数据库格式的各数据条目分别导入所述存储服务器。
所述存储服务器,用于接收并存储所述数据源服务器分别导入的数据库格式的各数据条目。
本发明实施例提供的技术方案带来的有益效果是:
本发明实施例中,获取源数据文件中包括的数据源格式的数据条目,并加入数据条目队列,逐行读取数据条目队列中的数据源格式的各数据条目,并分别将读取的数据源格式的各数据条目转换为数据库格式的数据条目,将转换得到的数据库格式的各数据条目分别导入存储服务器。这样,源数据文件中的各数据条目是分别进行导入的,在任意两个数据条目的导入处理之间都可以插入数据查询处理,从而,可以在向存储服务器导入数据的过程中减小对存储服务器中数据查询处理的影响。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的导入数据的方法流程图;
图2是本发明实施例提供的导入数据的方法流程图;
图3是本发明实施例提供的数据导入过程中的数据传输示意图;
图4是本发明实施例提供的数据源服务器的结构示意图;
图5是本发明实施例提供的存储服务器的结构示意图;
图6是本发明实施例提供的导入数据的系统的结构示意图;
图7是本发明实施例提供的数据源服务的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一
本发明实施例提供了一种导入数据的方法,该方法可以由数据源服务器和存储服务器共同实现。
如图1所示,为该方法中数据源服务器的处理流程,可以包括如下的步骤:
步骤101,获取源数据文件中包括的数据源格式的数据条目,并加入数据条目队列。
步骤102,逐行读取数据条目队列中的数据源格式的各数据条目,并分别将读取的数据源格式的各数据条目转换为数据库格式的数据条目。
步骤103,将转换得到的数据库格式的各数据条目分别导入存储服务器。
该方法中存储服务器的处理,可以如下:
接收并存储数据源服务器分别导入的数据库格式的各数据条目。其中,数据库格式的各数据条目,由数据源服务器获取源数据文件中包括的数据源格式的数据条目,加入数据条目队列,并逐行读取所述数据条目队列中的数据源格式的各数据条目,分别将读取的数据源格式的各数据条目进行转换得到。
本发明实施例中,获取源数据文件中包括的数据源格式的数据条目,并加入数据条目队列,逐行读取数据条目队列中的数据源格式的各数据条目,并分别将读取的数据源格式的各数据条目转换为数据库格式的数据条目,将转换得到的数据库格式的各数据条目分别导入存储服务器。这样,源数据文件中的各数据条目是分别进行导入的,在任意两个数据条目的导入处理之间都可以插入数据查询处理,从而,可以在向存储服务器导入数据的过程中减小对存储服务器中数据查询处理的影响。
实施例二
本发明实施例提供了一种导入数据的方法,该方法可以由数据源服务器和存储服务器共同实现。存储服务器是用于进行数据集中存储的服务器,在存储服务器中建立有数据库进行数据存储,存储服务器中一般采用内存芯片对数据进行存储,存储服务器中数据一般不是通过文件来存储的,存储服务器中数据的格式可称作数据库格式,常用的数据库格式可以是键值对格式。数据源服务器,可以是能够产生数据,且产生的数据需要在存储服务器中存储的服务器,例如,执行网络业务的业务服务器、进行数据分析的分析服务器等,都可以成为数据源服务器。数据源服务器中数据的格式可称作数据源格式,常用的数据源格式可以为文本格式等,在数据源服务器中数据一般是通过文件来存储的,可称作源数据文件。
如图2所示,为本发明实施例提供的导入数据的方法的处理流程,可以包括如下的步骤:
步骤201,数据源服务器获取源数据文件中包括的数据源格式的数据条目,并加入数据条目队列。
其中,源数据文件是数据源服务器中用于存储待导入存储服务器的数据的文件。数据条目是源数据文件中数据存储的单位,源数据一般为表格形式或可以等同于表格的形式,数据条目可以是表格中的一行数据,例如,某源数据文件中记录了学生的姓名和对应的数学成绩,姓名“张三”和数学成绩“90”即组成一个数据条目,姓名“李四”和数学成绩“80”又组成另一个数据条目。数据条目队列是用于对获取的数据条目进行缓存的缓存队列。在通过文本格式的源数据来反映表格时,可以采用分隔符和换行符,例如,第一个数据条目为“张三”、“90”,第二个数据条目为“李四”、“80”,那么,文本格式的源数据中可以在“张三”和“90”之间设置分隔符,在“李四”和“80”之间设置分隔符,并在“90”和“李四”之间设置换行符,分隔符和换行符可根据需求任意设置。
在实施中,数据源服务器在处理正常业务的过程中会不断生成源数据(一般一次生成一个数据条目),例如,某账户注册服务器,在处理终端发送的注册请求的过程中,会记录注册成功的账户的基本信息(如账户名、密码、电子邮箱等),此记录的账户的基本信息即为源数据,一个账户的基本信息即为一个数据条目。数据源服务器可以建立源数据文件,用于存储生成的源数据,可以预先设置源数据文件的数据条目上限,数据源服务器可以不断的将新生成的源数据添加到源数据文件中,当源数据文件中数据条目的数量达到数据条目上限时,可以再建立一个新的源数据文件,依此类推。数据源服务器可以在源数据文件达到预定数量时,或在达到预定时间周期时,对上一次导入流程完成之后新生成的源数据文件(可以是一个或多个)进行读取,读取其中的所有数据条目,并分配缓存空间,建立数据条目队列,将读取的数据条目缓存在数据条目队列中,不同源数据文件中读取的数据条目可以缓存在同一数据条目队列中。在读取过程中,数据源服务器可以通过多个线程对不同的源数据文件进行读取,每读取完成一个源数据文件,可以在完成文件(如ok文件)中记录该源数据文件已读取完成,这样其它线程不会重复读取该源数据文件。
步骤202,数据源服务器逐行读取数据条目队列中的数据源格式的各数据条目,并分别将读取的数据源格式的各数据条目转换为数据库格式的数据条目。
其中,数据库格式是存储服务器中存储数据的格式,可以为键值对格式,在键值对格式的数据中,主键又可以有多种格式(如字符串格式、二进制格式等),值也可以有多种格式(如字符串格式、二进制格式等),也即,可以有多种不同的键值对格式。在数据条目队列中,每一行即一个数据条目。
在实施中,可以设置独立的程序模块,用于进行数据格式的转换,可以对于不同的数据源格式和数据库格式分别设置不同的程序模块(例如,对于数据源格式1转换为数据库格式1,设置程序模块1,对于数据源格式1转换为数据库格式2,设置程序模块2,对于数据源格式2转换为数据库格式1,设置程序模块3,等等),这些不同的程序模块可以采用通用的接口以供调用,这样数据源服务器可以根据当前的源数据文件的数据源格式和数据库格式,选取并调用对应的程序模块,以进行数据格式的转换。在格式转换过程中,数据源服务器可以通过多个线程分别读取数据条目队列中的不同数据条目,进行格式转换。
步骤203,数据源服务器将转换得到的数据库格式的各数据条目分别导入存储服务器。
具体的,可以在各数据条目进行格式转换完毕后再开始进行该步骤的导入处理,或者优选的,可以分别在每个数据源格式的数据条目转换为数据库格式的数据条目时,将转换得到的数据库格式的数据条目导入存储服务器。也即,每当一个数据条目完成格式转换时,则对此完成格式转换的数据条目进行导入处理。
在实施中,对于多个数据条目的导入过程,可以采用异步传输的方式,相应的,步骤203的处理过程可以是:通过异步传输方式,将转换得到的数据库格式的各数据条目分别导入存储服务器。如图3所示,处理过程中,对于每个完成格式转换启动导入处理的数据条目,可以定义一个用于异步传输的会话(可以通过一个链表来记录在导入过程中的数据条目对应的会话,例如,可以采用环形双向链表进行会话的记录),然后,向存储服务器传输该数据条目,存储服务器对接收到的数据条目进行存储,并根据处理情况反馈导入结果,如果接收并存储成功,则反馈导入成功,否则,反馈导入失败。数据源服务器如果接收到存储服务器反馈的导入结果,则对该导入结果对应的数据条目对应的会话进行删除,或者,如果在发送数据条目后预设时长内没有接收到存储服务器的反馈,则对该数据条目对应的会话进行删除。
本发明实施例中,还可以对导入失败的数据条目进行重导入,相应的处理可以如下:记录导入失败的数据条目;分别将导入失败的数据条目重新导入存储服务器。
在实施中,数据源服务器可以创建失败文件,当接收到存储服务器反馈的对应某数据条目的导入失败的结果消息时,或在发送某数据条目后预设时长内没有接收到存储服务器的反馈时,可以判定该数据条目导入失败,这时,可以在上述失败文件中添加该数据条目对应的源数据(可以从源数据文件中获取),即添加数据源格式的该数据条目。当所有数据条目都已经导入成功或导入失败后,可以将得到的失败文件作为源数据文件,按本发明实施例的流程重新执行导入数据的过程。
步骤204,存储服务器接收并存储数据源服务器分别导入的数据库格式的各数据条目。
具体的处理过程与数据源服务器的处理过程相对应,可以参照步骤203中的说明。对于异步传输的情况,存储服务器的处理可以是:接收并存储数据源服务器通过异步传输方式分别导入的数据库格式的各数据条目。
在上述导入数据的流程执行完毕之后,还可以对导入存储服务器的数据进行校验,相应的处理过程可以是:根据源数据文件,对已导入存储服务器中的数据库格式的数据条目进行校验,并对校验出的导入错误的数据条目进行记录。
在实施中,数据源服务器可以在源数据文件中获取部分或全部数据条目,将获取的数据源格式的数据条目转换为数据库格式的数据条目,在数据格式转换时可以调用上述用于数据格式转换的程序模块,可以通过多线程对获取的各数据条目进行格式转换。然后,提取转换得到的每个键值对格式的数据条目中的主键和对应的值,在存储服务器中查询该主键对应的值,将查询得到的值与提取的值进行比较,如果相同则该数据条目校验结果正确,如果不同则判定该数据条目导入错误,可以建立校验文件,在其中对上述提取的主键、值以及查询到的值进行对应的记录。在校验过程结束后,技术人员可以通过得到的校验文件进行错误分析,确定错误原因。
本发明实施例中,获取源数据文件中包括的数据源格式的数据条目,并加入数据条目队列,逐行读取数据条目队列中的数据源格式的各数据条目,并分别将读取的数据源格式的各数据条目转换为数据库格式的数据条目,将转换得到的数据库格式的各数据条目分别导入存储服务器。这样,源数据文件中的各数据条目是分别进行导入的,在任意两个数据条目的导入处理之间都可以插入数据查询处理,从而,可以在向存储服务器导入数据的过程中减小对存储服务器中数据查询处理的影响。
实施例三
基于相同的技术构思,本发明实施例还提供了一种数据源服务器,如图4所示,所述数据源服务器包括:
获取模块410,用于获取源数据文件中包括的数据源格式的数据条目,并加入数据条目队列;
转换模块420,用于逐行读取所述数据条目队列中的数据源格式的各数据条目,并分别将读取的数据源格式的各数据条目转换为数据库格式的数据条目;
导入模块430,用于将转换得到的数据库格式的各数据条目分别导入存储服务器。
优选的,所述导入模块430,用于:
分别在每个数据源格式的数据条目转换为数据库格式的数据条目时,将转换得到的数据库格式的数据条目导入存储服务器。
优选的,所述导入模块430,用于:
通过异步传输方式,将转换得到的数据库格式的各数据条目分别导入存储服务器。
优选的,还包括纠错模块,用于:
记录导入失败的数据条目;
分别将所述导入失败的数据条目重新导入所述存储服务器。
优选的,还包括校验模块,用于:
在所述将转换得到的数据库格式的各数据条目分别导入存储服务器之后,根据所述源数据文件,对已导入所述存储服务器中的数据库格式的数据条目进行校验,并对校验出的导入错误的数据条目进行记录。
基于相同的技术构思,本发明实施例还提供了一种存储服务器,如图5所示,所述存储服务器包括:
存储模块510,用于接收并存储数据源服务器分别导入的数据库格式的各数据条目;
其中,所述数据库格式的各数据条目,由所述数据源服务器获取源数据文件中包括的数据源格式的数据条目,加入数据条目队列,并逐行读取所述数据条目队列中的数据源格式的各数据条目,分别将读取的数据源格式的各数据条目进行转换得到。
优选的,所述存储模块510,用于:
接收并存储数据源服务器通过异步传输方式分别导入的数据库格式的各数据条目。
本发明实施例中,获取源数据文件中包括的数据源格式的数据条目,并加入数据条目队列,逐行读取数据条目队列中的数据源格式的各数据条目,并分别将读取的数据源格式的各数据条目转换为数据库格式的数据条目,将转换得到的数据库格式的各数据条目分别导入存储服务器。这样,源数据文件中的各数据条目是分别进行导入的,在任意两个数据条目的导入处理之间都可以插入数据查询处理,从而,可以在向存储服务器导入数据的过程中减小对存储服务器中数据查询处理的影响。
实施例四
基于相同的技术构思,本发明实施例还提供了一种导入数据的系统,如图6所示,所述系统包括数据源服务器610和存储服务器620,其中:
所述数据源服务器610,用于获取源数据文件中包括的数据源格式的数据条目,并加入数据条目队列;逐行读取所述数据条目队列中的数据源格式的各数据条目,并分别将读取的数据源格式的各数据条目转换为数据库格式的数据条目;将转换得到的数据库格式的各数据条目分别导入所述存储服务器620;
所述存储服务器620,用于接收并存储所述数据源服务器610分别导入的数据库格式的各数据条目。
本发明实施例中,获取源数据文件中包括的数据源格式的数据条目,并加入数据条目队列,逐行读取数据条目队列中的数据源格式的各数据条目,并分别将读取的数据源格式的各数据条目转换为数据库格式的数据条目,将转换得到的数据库格式的各数据条目分别导入存储服务器。这样,源数据文件中的各数据条目是分别进行导入的,在任意两个数据条目的导入处理之间都可以插入数据查询处理,从而,可以在向存储服务器导入数据的过程中减小对存储服务器中数据查询处理的影响。
实施例五
图7是本发明实施例提供的数据源服务器的结构示意图。该数据源服务器1900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessingunits,CPU)1922(例如,一个或一个以上处理器)和存储器1932,一个或一个以上存储应用程序1942或数据1944的存储介质1930(例如一个或一个以上海量存储设备)。其中,存储器1932和存储介质1930可以是短暂存储或持久存储。存储在存储介质1930的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1922可以设置为与存储介质1930通信,在数据源服务器1900上执行存储介质1930中的一系列指令操作。
数据源服务器1900还可以包括一个或一个以上电源1926,一个或一个以上有线或无线网络接口1950,一个或一个以上输入输出接口1958,一个或一个以上键盘1956,和/或,一个或一个以上操作系统1941,例如WindowsServerTM,MacOSXTM,UnixTM,LinuxTM,FreeBSDTM等等。
数据源服务器1900可以包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
获取源数据文件中包括的数据源格式的数据条目,并加入数据条目队列;
逐行读取所述数据条目队列中的数据源格式的各数据条目,并分别将读取的数据源格式的各数据条目转换为数据库格式的数据条目;
将转换得到的数据库格式的各数据条目分别导入存储服务器。
优选的,所述将转换得到的数据库格式的各数据条目分别导入存储服务器,包括:
分别在每个数据源格式的数据条目转换为数据库格式的数据条目时,将转换得到的数据库格式的数据条目导入存储服务器。
优选的,所述将转换得到的数据库格式的各数据条目分别导入存储服务器,包括:
通过异步传输方式,将转换得到的数据库格式的各数据条目分别导入存储服务器。
优选的,所述方法还包括:
记录导入失败的数据条目;
分别将所述导入失败的数据条目重新导入所述存储服务器。
优选的,所述将转换得到的数据库格式的各数据条目分别导入存储服务器之后,还包括:
根据所述源数据文件,对已导入所述存储服务器中的数据库格式的数据条目进行校验,并对校验出的导入错误的数据条目进行记录。
本发明实施例中,获取源数据文件中包括的数据源格式的数据条目,并加入数据条目队列,逐行读取数据条目队列中的数据源格式的各数据条目,并分别将读取的数据源格式的各数据条目转换为数据库格式的数据条目,将转换得到的数据库格式的各数据条目分别导入存储服务器。这样,源数据文件中的各数据条目是分别进行导入的,在任意两个数据条目的导入处理之间都可以插入数据查询处理,从而,可以在向存储服务器导入数据的过程中减小对存储服务器中数据查询处理的影响。
实施例六
本发明实施例提供的存储服务器可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessingunits,CPU)(例如,一个或一个以上处理器)和存储器,一个或一个以上存储应用程序或数据的存储介质(例如一个或一个以上海量存储设备)。其中,存储器和存储介质可以是短暂存储或持久存储。存储在存储介质的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对存储服务器中的一系列指令操作。更进一步地,中央处理器可以设置为与存储介质通信,在存储服务器上执行存储介质中的一系列指令操作。
存储服务器还可以包括一个或一个以上电源,一个或一个以上有线或无线网络接口,一个或一个以上输入输出接口,一个或一个以上键盘,和/或,一个或一个以上操作系统,例如WindowsServerTM,MacOSXTM,UnixTM,LinuxTM,FreeBSDTM等等。
存储服务器可以包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
接收并存储数据源服务器分别导入的数据库格式的各数据条目;
其中,所述数据库格式的各数据条目,由所述数据源服务器获取源数据文件中包括的数据源格式的数据条目,加入数据条目队列,并逐行读取所述数据条目队列中的数据源格式的各数据条目,分别将读取的数据源格式的各数据条目进行转换得到。
优选的,所述接收并存储数据源服务器分别导入的数据库格式的各数据条目,包括:
接收并存储数据源服务器通过异步传输方式分别导入的数据库格式的各数据条目。
本发明实施例中,获取源数据文件中包括的数据源格式的数据条目,并加入数据条目队列,逐行读取数据条目队列中的数据源格式的各数据条目,并分别将读取的数据源格式的各数据条目转换为数据库格式的数据条目,将转换得到的数据库格式的各数据条目分别导入存储服务器。这样,源数据文件中的各数据条目是分别进行导入的,在任意两个数据条目的导入处理之间都可以插入数据查询处理,从而,可以在向存储服务器导入数据的过程中减小对存储服务器中数据查询处理的影响。
需要说明的是:上述实施例提供的导入数据的装置在导入数据时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的导入数据的装置与导入数据的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (15)
1.一种导入数据的方法,其特征在于,所述方法包括:
通过多个线程对不同的源数据文件进行读取,获取多个源数据文件中包括的数据源格式的数据条目,并加入同一数据条目队列;
逐行读取所述数据条目队列中的数据源格式的各数据条目,并分别将读取的数据源格式的各数据条目转换为数据库格式的数据条目,其中,设置独立的程序模块,用于进行数据格式的转换,对于不同的数据源格式和不同的数据库格式分别设置不同的程序模块;
将转换得到的数据库格式的各数据条目分别导入存储服务器。
2.根据权利要求1所述的方法,其特征在于,所述将转换得到的数据库格式的各数据条目分别导入存储服务器,包括:
分别在每个数据源格式的数据条目转换为数据库格式的数据条目时,将转换得到的数据库格式的数据条目导入存储服务器。
3.根据权利要求1所述的方法,其特征在于,所述将转换得到的数据库格式的各数据条目分别导入存储服务器,包括:
通过异步传输方式,将转换得到的数据库格式的各数据条目分别导入存储服务器。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
记录导入失败的数据条目;
分别将所述导入失败的数据条目重新导入所述存储服务器。
5.根据权利要求1所述的方法,其特征在于,所述将转换得到的数据库格式的各数据条目分别导入存储服务器之后,还包括:
根据所述源数据文件,对已导入所述存储服务器中的数据库格式的数据条目进行校验,并对校验出的导入错误的数据条目进行记录。
6.一种导入数据的方法,其特征在于,所述方法包括:
接收并存储数据源服务器分别导入的数据库格式的各数据条目;
其中,所述数据库格式的各数据条目,由所述数据源服务器通过多个线程对不同的源数据文件进行读取,获取多个源数据文件中包括的数据源格式的数据条目,并加入同一数据条目队列,并逐行读取所述数据条目队列中的数据源格式的各数据条目,分别将读取的数据源格式的各数据条目进行转换得到;所述数据源服务器设置有独立的程序模块,用于进行数据格式的转换,对于不同的数据源格式和不同的数据库格式分别设置不同的程序模块。
7.根据权利要求6所述的方法,其特征在于,所述接收并存储数据源服务器分别导入的数据库格式的各数据条目,包括:
接收并存储数据源服务器通过异步传输方式分别导入的数据库格式的各数据条目。
8.一种数据源服务器,其特征在于,所述数据源服务器包括:
获取模块,通过多个线程对不同的源数据文件进行读取,获取多个源数据文件中包括的数据源格式的数据条目,并加入同一数据条目队列;
转换模块,用于逐行读取所述数据条目队列中的数据源格式的各数据条目,并分别将读取的数据源格式的各数据条目转换为数据库格式的数据条目,其中,设置独立的程序模块,用于进行数据格式的转换,对于不同的数据源格式和不同的数据库格式分别设置不同的程序模块;
导入模块,用于将转换得到的数据库格式的各数据条目分别导入存储服务器。
9.根据权利要求8所述的数据源服务器,其特征在于,所述导入模块,用于:
分别在每个数据源格式的数据条目转换为数据库格式的数据条目时,将转换得到的数据库格式的数据条目导入存储服务器。
10.根据权利要求8所述的数据源服务器,其特征在于,所述导入模块,用于:
通过异步传输方式,将转换得到的数据库格式的各数据条目分别导入存储服务器。
11.根据权利要求8所述的数据源服务器,其特征在于,还包括纠错模块,用于:
记录导入失败的数据条目;
分别将所述导入失败的数据条目重新导入所述存储服务器。
12.根据权利要求8所述的数据源服务器,其特征在于,还包括校验模块,用于:
在所述将转换得到的数据库格式的各数据条目分别导入存储服务器之后,根据所述源数据文件,对已导入所述存储服务器中的数据库格式的数据条目进行校验,并对校验出的导入错误的数据条目进行记录。
13.一种存储服务器,其特征在于,所述存储服务器包括:
存储模块,用于接收并存储数据源服务器分别导入的数据库格式的各数据条目;
其中,所述数据库格式的各数据条目,由所述数据源服务器通过多个线程对不同的源数据文件进行读取,获取多个源数据文件中包括的数据源格式的数据条目,并加入同一数据条目队列,并逐行读取所述数据条目队列中的数据源格式的各数据条目,分别将读取的数据源格式的各数据条目进行转换得到;所述数据源服务器设置有独立的程序模块,用于进行数据格式的转换,对于不同的数据源格式和不同的数据库格式分别设置不同的程序模块。
14.根据权利要求13所述的存储服务器,其特征在于,所述存储模块,用于:
接收并存储数据源服务器通过异步传输方式分别导入的数据库格式的各数据条目。
15.一种导入数据的系统,其特征在于,所述系统包括数据源服务器和存储服务器,其中:
所述数据源服务器,用于通过多个线程对不同的源数据文件进行读取,获取多个源数据文件中包括的数据源格式的数据条目,并加入同一数据条目队列;逐行读取所述数据条目队列中的数据源格式的各数据条目,并分别将读取的数据源格式的各数据条目转换为数据库格式的数据条目,其中,设置独立的程序模块,用于进行数据格式的转换,对于不同的数据源格式和不同的数据库格式分别设置不同的程序模块;将转换得到的数据库格式的各数据条目分别导入所述存储服务器;所述存储服务器,用于接收并存储所述数据源服务器分别导入的数据库格式的各数据条目。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310705824.4A CN104090896B (zh) | 2013-12-19 | 2013-12-19 | 一种导入数据的方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310705824.4A CN104090896B (zh) | 2013-12-19 | 2013-12-19 | 一种导入数据的方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104090896A CN104090896A (zh) | 2014-10-08 |
CN104090896B true CN104090896B (zh) | 2016-05-11 |
Family
ID=51638612
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310705824.4A Active CN104090896B (zh) | 2013-12-19 | 2013-12-19 | 一种导入数据的方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104090896B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105989021A (zh) * | 2015-01-29 | 2016-10-05 | 阿里巴巴集团控股有限公司 | 一种文件处理方法和装置 |
CN108182233A (zh) * | 2017-12-27 | 2018-06-19 | 苏州麦迪斯顿医疗科技股份有限公司 | 一种分布式数据抽取方法、装置、计算机设备及存储介质 |
CN111367975B (zh) * | 2018-12-25 | 2023-11-03 | 中国移动通信集团浙江有限公司 | 一种多协议数据转换处理方法及装置 |
CN109828964B (zh) * | 2019-02-19 | 2021-11-26 | 北京奇艺世纪科技有限公司 | 一种数据导入方法、装置及电子设备 |
CN112487997B (zh) * | 2020-12-01 | 2024-04-09 | 航天信息股份有限公司 | 一种人像特征提取方法及装置 |
CN116932252B (zh) * | 2023-09-18 | 2024-01-26 | 北京冠群信息技术股份有限公司 | 一种基于批量数据导入流水线的异步任务补偿方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1407465A (zh) * | 2001-08-13 | 2003-04-02 | 深圳市丛文软件技术有限公司 | 异构、异种数据库间适用的数据交换方法及装置 |
CN1687922A (zh) * | 2005-05-30 | 2005-10-26 | 北京慧讯信息技术有限公司 | 分布式数据源数据集成系统及方法 |
CN101789021A (zh) * | 2010-02-24 | 2010-07-28 | 浪潮通信信息系统有限公司 | 一种通用可配置的数据库数据迁移方法 |
CN101957865A (zh) * | 2010-10-27 | 2011-01-26 | 杭州新中大软件股份有限公司 | 一种异构系统间数据交换与共享技术 |
CN102004744A (zh) * | 2009-09-02 | 2011-04-06 | 中国银联股份有限公司 | 从一个源表到至少一个目标库的表的数据抽取系统及方法 |
-
2013
- 2013-12-19 CN CN201310705824.4A patent/CN104090896B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1407465A (zh) * | 2001-08-13 | 2003-04-02 | 深圳市丛文软件技术有限公司 | 异构、异种数据库间适用的数据交换方法及装置 |
CN1687922A (zh) * | 2005-05-30 | 2005-10-26 | 北京慧讯信息技术有限公司 | 分布式数据源数据集成系统及方法 |
CN102004744A (zh) * | 2009-09-02 | 2011-04-06 | 中国银联股份有限公司 | 从一个源表到至少一个目标库的表的数据抽取系统及方法 |
CN101789021A (zh) * | 2010-02-24 | 2010-07-28 | 浪潮通信信息系统有限公司 | 一种通用可配置的数据库数据迁移方法 |
CN101957865A (zh) * | 2010-10-27 | 2011-01-26 | 杭州新中大软件股份有限公司 | 一种异构系统间数据交换与共享技术 |
Also Published As
Publication number | Publication date |
---|---|
CN104090896A (zh) | 2014-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104090896B (zh) | 一种导入数据的方法、装置和系统 | |
CN110784419B (zh) | 铁路电务专业数据可视化方法及系统 | |
CN105447046A (zh) | 一种分布式系统数据一致性处理方法、装置和系统 | |
CN110413595B (zh) | 一种应用于分布式数据库的数据迁移方法和相关装置 | |
CN113839977B (zh) | 消息推送方法、装置、计算机设备及存储介质 | |
WO2020006827A1 (zh) | 一种智能应答的方法和装置 | |
US10175954B2 (en) | Method of processing big data, including arranging icons in a workflow GUI by a user, checking process availability and syntax, converting the workflow into execution code, monitoring the workflow, and displaying associated information | |
CN111324610A (zh) | 一种数据同步的方法及装置 | |
CN103441861B (zh) | 一种数据记录生成方法及装置 | |
US10742688B2 (en) | Platform for automated regulatory compliance monitoring of messaging services | |
US9971563B2 (en) | Systems and methods for low interference logging and diagnostics | |
CN104102701B (zh) | 一种基于hive的历史数据存档与查询方法 | |
WO2015196983A1 (zh) | 一种提交数据的方法及装置 | |
CN107133231B (zh) | 一种数据获取方法和装置 | |
CN113282611B (zh) | 一种流数据同步的方法、装置、计算机设备及存储介质 | |
CN104298675B (zh) | 用于缓存管理的方法和装置 | |
US20220052976A1 (en) | Answer text processing methods and apparatuses, and key text determination methods | |
CN112347192A (zh) | 数据同步方法、装置、平台以及可读介质 | |
CN107480009A (zh) | 一种事务恢复方法及装置 | |
CN105335466A (zh) | 一种音频数据的检索方法与装置 | |
CN116701233B (zh) | 基于高并发报单模拟的交易系统测试方法、设备及介质 | |
US20200042940A1 (en) | Interactive apparatus, control apparatus, interactive system, interactive method, and control method | |
CN105426183B (zh) | 一种表单验证方法 | |
CN111427917A (zh) | 搜索数据处理方法及相关产品 | |
CN111078764A (zh) | 数据处理方法、装置、计算机可读存储介质及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |