CN106610992B - 一种数据读取方法及装置 - Google Patents
一种数据读取方法及装置 Download PDFInfo
- Publication number
- CN106610992B CN106610992B CN201510696610.4A CN201510696610A CN106610992B CN 106610992 B CN106610992 B CN 106610992B CN 201510696610 A CN201510696610 A CN 201510696610A CN 106610992 B CN106610992 B CN 106610992B
- Authority
- CN
- China
- Prior art keywords
- data
- information
- data set
- piece
- interruption
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3414—Workload generation, e.g. scripts, playback
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了一种数据读取方法及装置,涉及电子信息技术领域,能够减少服务器通过数据端口的数据传输量,缓减了写效率受限于端口的问题。本发明的方法包括:通过数据端口,从第一数据集合中提取参考数据,所提取的参考数据的数据总量小于所述第一数据集合;根据所述配置信息对所述参考数据进行倍化处理,并得到与所述第一数据集合的数据量相同的第二数据集合;发送所述第二数据集合。本发明适用于快速读取数据。
Description
技术领域
本发明涉及电子信息技术领域,尤其涉及一种数据读取方法及装置。
背景技术
随着大数据技术的发展,为了满足数据处理的需要,越来越多的计算中心和数据库都已建设并投入使用,大数据产业出现了爆炸式增长。
但是,随着需要处理的数据量不断增多,需要消耗更多的网络资源进行数据读取和数据读取。几乎每一种基于大数据技术的业务场景都需要提取大量数据才能进行后续的运算处理。例如:若计算中心需要利用100PB的数据进行测试,则要在数据库中预先查找并准备100PB的数据,再通过端口从数据源读取到临时存储区域中并通过网络向计算中心传输。但是,设备的端口读写效率限制了数据的读写速度,使得业务处理过程中需要进行很长的时间的数据准备工作。造成了业务处理耗时长,占用存储资源多等问题,从而导致大数据中的业务处理成本一直居高不下。
发明内容
本发明的实施例提供一种数据读取方法及装置,能够减少服务器通过数据端口的数据传输量,缓减了写效率受限于端口的问题。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,本发明的实施例提供一种数据读取方法,包括:
通过数据端口,从第一数据集合中提取参考数据,所提取的参考数据的数据总量小于所述第一数据集合;
根据所述配置信息对所述参考数据进行倍化处理,并得到与所述第一数据集合的数据量相同的第二数据集合;
发送所述第二数据集合。
结合第一方面,在第一方面的第一种可能的实现方式中,所述第一数据集合的格式包括:所述第一数据集合中的每一条数据,由按照指定顺序排列的内容区域组成;
所述配置信息包括:至少一个由相同类型的内容信息组成的信息集合,其中,一个信息集合用于写入至少一个内容区域。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述对所述参考数据进行倍化处理包括:
复制所述参考数据,并得到与所述第一数据集合有相同的数据条数的第三数据集合;
获取所述配置信息中的信息集合,并查询得到每一个信息集合与内容区域的对应关系;
将所述配置信息中的所有信息集合并写入所述第三数据集合中,得到所述第二数据集合。
结合第一方面的第二种可能的实现方式,在第三种可能的实现方式中,所述将所述配置信息中的所有信息集合并写入所述第三数据集合中,得到所述第二数据集合,包括:
获取所述配置信息中的第1至N信息集合,N为大于1的正整数;
提取第1信息集合中的第1至k条内容信息,并将所述第1至k条内容信息依次写入第三数据集合中的各条数据,其中,对于每一个信息集合:将信息集合中的内容信息,依次写入所述第三数据集合中的各条数据中与信息集合对应的内容区域,k为大于1的正整数;
将第1至N信息集合写入所述第三数据集合,完成写入后的所述第三数据集合作为所述第二数据集合。
结合第一方面以及第一至三种可能的实现方式,在第四种可能的实现方式中,还包括:向经过倍化处理得到的各条数据写入编号信息;
所述发送所述第二数据集合,包括:当所述第二数据集合传输中断时,记录中断前最近一条所传输数据的编号信息;
若由所述中断恢复传输,则根据中断前最近一条所传输数据的编号信息开始继续传输所述第二数据集合。
结合第一方面的第四种可能的实现方式,在第五种可能的实现方式中,包括:任务分配模块选择待执行任务,并将所述待执行任务通知用户配置模块;
所述用户配置模块读取所述待执行任务对应的所述配置信息;数据读取模块通过所述数据端口,从所述第一数据集合中提取所述参考数据;
数据扩充模块载入所述配置信息和所述参考数据,并根据所述配置信息对所述参考数据进行倍化处理,并得到所述第二数据集合;
数据处理模块读取设备信息,并根据所述设备信息确定并发模式,所述并发模式至少包括:用于所述第二数据集合的缓存比例,和/或用于所述第二数据集合的线程;
数据发送模块根据所述并发模式发送所述第二数据集合。
第二方面,本发明的实施例提供一种数据读取装置,包括:
读取单元,用于通过数据端口,从第一数据集合中提取参考数据,所提取的参考数据的数据总量小于所述第一数据集合;
倍化处理单元,用于根据所述配置信息对所述参考数据进行倍化处理,并得到与所述第一数据集合的数据量相同的第二数据集合;
传输单元,用于发送所述第二数据集合。
结合第二方面,在第二方面的第一种可能的实现方式中,所述倍化处理单元,用于复制所述参考数据,并得到与所述第一数据集合有相同的数据条数的第三数据集合;并获取所述配置信息中的信息集合,并查询得到每一个信息集合与内容区域的对应关系;并将所述配置信息中的所有信息集合并写入所述第三数据集合中,得到所述第二数据集合;
其中,所述第一数据集合的格式包括:所述第一数据集合中的每一条数据,由按照指定顺序排列的内容区域组成;所述配置信息包括:至少一个由相同类型的内容信息组成的信息集合,其中,一个信息集合用于写入至少一个内容区域。
结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述倍化处理单元,具体用于获取所述配置信息中的第1至N信息集合,N为大于1的正整数;并提取第1信息集合中的第1至k条内容信息,并将所述第1至k条内容信息依次写入第三数据集合中的各条数据,其中,对于每一个信息集合:将信息集合中的内容信息,依次写入所述第三数据集合中的各条数据中与信息集合对应的内容区域,k为大于1的正整数;将第1至N信息集合写入所述第三数据集合,完成写入后的所述第三数据集合作为所述第二数据集合。
结合第二方面以及第一或二种可能的实现方式,在第三种可能的实现方式中,所述倍化处理单元,还用于向经过倍化处理得到的各条数据写入编号信息;
所述传输单元,具体用于当所述第二数据集合传输中断时,记录中断前最近一条所传输数据的编号信息;若由所述中断恢复传输,则根据中断前最近一条所传输数据的编号信息开始继续传输所述第二数据集合。
本发明实施例提供的数据读取方法及装置,服务器能够通过数据端口,读取数据总量小于所需数据的所提取的参考数据,并通过倍化处理获取不少于所需数据的总量的数据。相对于现有技术中通过接口读取数据的传统方式,本发明能够减少服务器通过数据端口的数据传输量,缓减了写效率受限于端口的问题,从而减少了业务处理的耗时,并降低大数据中的业务处理成本。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1、2、3、4为本发明实施例的运行环境的示意图;
图5为本发明实施例提供的数据读取方法的流程示意图;
图6、7为本发明实施例提供的具体实例的流程示意图;
图8为本发明实施例提供的具体应用场景中的传输过程的示意图;
图9为本发明实施例提供的数据读取装置的结构示意图。
具体实施方式
为使本领域技术人员更好地理解本发明的技术方案,下面结合附图和具体实施方式对本发明作进一步详细描述。下文中将详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。
本发明实施例可以应用于一种数据服务器,数据服务器上设置用于读写数据的端口,数据服务器通过端口从存储设备、数据库等读取数据。需要说明的是,数据服务器用于读取数据的端口可以是本地数据传输端口,比如图1所示的,数据服务器与存储数据的存储设备设置在同一机房,并通过线缆连接,则端口即为存储设备与数据服务器之间的传输端口;数据服务器用于读取数据的端口也可以是网络端口,比如图2所示的,数据服务器与存储数据的数据库位于不同地域,相互之间通过互联网进行数据交互,则端口即为用于数据库与数据服务器之间进行数据交互的网络端口。在本实施例中,“端口”被用于数据服务器与数据源设备(存储设备、数据库等)进行数据交互,在某些场景中,“端口”也可称为“接口”,“网络端口”也可称为“网络接口”,在无线网络的场景中也可称为“空中接口”,在本实施例中并不限定。
在本实施例可能的应用场景中,例如:涉及海量数据的采集,分析,转移等业务,尤其是处在需要限时完成多数据处理和营造大量数据测试。数据服务器可以与其他设备连接,如数据计算中心,其他存储设备、数据库等,例如:如图3所示的,用于进行大数据测试的计算设备(比如刀片机、立柜式服务器等)与数据服务器通过线缆或是通络端口实现连接,并在数据服务器根据所提取的数据进行倍化处理后,接收数据服务器发送的倍化处理后的数据;再例如:如图4所示的,用户终端设备向数据服务器亲发送数据测试请求,数据服务器根据所提取的数据进行倍化处理后,即按照用户终端设备的请求对倍化处理后的数据进行处理或是进行测试,并将处理结果或测试结果向用户终端设备发送,其中,数据服务器与用户终端设备可以通过线缆或是通络端口实现连接,用户在用户终端设备设置配置信息,并通过用户终端设备将配置信息向数据服务器发送。
本发明实施例提供一种数据读取方法,如图5所示,包括:
101,通过数据端口,从第一数据集合中提取参考数据。
其中,所提取的参考数据的数据总量小于所述第一数据集合。在本实施例中,存储在数据库、存储设备中的,在一次处理过程中需要被数据服务器提取的原始的数据的集合,可以成为第一数据集合,例如:在一次测试过程中,需要读取原始数据1000W条,这1000W条数据存储在与数据服务器相连的数据库中,则这1000W条数据可以成为第一数据集合。
在第一数据集合中的一部分数据可以成为参考数据,可以理解的,参考数据为第一数据集合的子集。例如:在一次测试过程中,需要读取原始数据1000W条,1000W条数据存储在与数据服务器相连的数据库中,数据服务器通过数据端口从这1000W条数据中读取500W条数据作为参考数据。
102,根据所述配置信息对所述参考数据进行倍化处理,并得到第二数据集合。
其中,第二数据集合与所述第一数据集合的数据量相同的,在本实施例中,所述对所述参考数据进行倍化处理包括:
复制所述参考数据,并得到与所述第一数据集合有相同的数据条数的第三数据集合。例如:数据服务器通过数据端口从这1000W条数据中读取500W条数据作为参考数据,并对500W条数据进行复制得到总共1000W条数据(第三数据集合),复制后的数据量与第一数据集合的数据量相同。
获取所述配置信息中的信息集合,并查询得到每一个信息集合与内容区域的对应关系。
每一条数据中的一个内容区域用于写入一种类型的信息,例如:配置信息包括“地域”、“时间”、“ID号”这三个信息集合,“地域”信息集合包括:“北京、上海、深圳”等城市名称,“时间”信息集合包括:“2011、2012、2013”等年份信息,“地域”信息集合包括:北京、上海、深圳等城市名称,“ID号”信息集合包括:数据库中所记录的不同用户的ID,三个信息集合分别对应每一条数据的不同的内容区域。
将所述配置信息中的所有信息集合并写入所述第三数据集合中,得到所述第二数据集合。
例如:数据服务器通过数据端口从这1000W条数据中读取500W条数据作为参考数据,并对500W条数据进行复制得到总共1000W条数据,数据服务器将配置信息写入复制得到总共1000W条数据中,从而得到第二数据集合,其中,需要写入配置信息的数据可以为通过复制新得到的数据,比如:在复制得到总共1000W条数据中,500W条为新得到的数据,另500W条为数据服务器通过端口从数据库的第一数据集合中提取的参考数据,数据服务器将配置信息写入500W条新得到的数据。其中,数据服务器可以根据用户终端设备的设置(比如在用户终端设备向数据服务器发送的请求信息中包括了设置倍数的信息)的需要,选择倍化的倍数,比如:1000W条数据若设置5倍率,数据服务器提取参考数据200W,并在倍化的过程中进行4次复制,最终得到200W+800W=1000W的复制后的数据。
本实施例中提供一种触发倍化过程的具体实例:数据服务器可以定时自动采集数据,即通过对不同源数据设置不同的定时任务,并通过调度中心来指派任务执行。通过执行的任务时,可以通过第三方插件提供数据来源,然后对比上一次任务的执行是否需要从中断开始,再根据机器性能设定采集速率,进行数据分片分段,对每一片或者每一段进行多线程的读取或者倍增。比如:数据服务器读取一条数据后,在数据载入内存的情况下,根据用户的需要选择数据处理方式,若用户选择了倍化处理,则按照所设置的倍率对数据进行复制,复制过程中可以改变数据的结构,也可以单纯复制。
103,发送所述第二数据集合。
在本实施例中,可以是数据服务器将第二数据集合发送到数据服务器的处理模块中,并执行相关处理、测试得到结果,数据服务器用于读取、倍化处理和后续的处理、测试;也可以是数据服务器将第二数据集合发送到请求获取数据的设备,比如向数据服务器请求获取数据的终端或计算中心,数据服务器用于读取及倍化处理。数据服务器主要用于对参考数据进行倍化处理并得到第二数据集合,由于参考数据的数据量少于第一数据集合,因此减少了数据服务器通过端口从数据库或存储设备中读取数据的时间,再通过倍化处理,根据参考数据得到第二数据集合,并将第二数据集合用于后续的数据处理或数据传输。
在实际应用中,若采用传统的读取手段例如:从数据源头读取1000W条数据,数据服务器通过端口读取1000W条数据,并进行处理后再发送,通过对已处理数据/全量数据的实时计算,得出全部处理完毕需要10小时左右;采用本实施例数据倍化读取,以2倍倍化为例,数据服务器从数据源头读取500W条数据,并将500W条数据倍化处理得到1000W条数据,并进行处理后再发送,通过对已处理数据/全量数据的实时计算,得出全部处理完毕需要4-5小时左右。由于在实际应用中,由于通过端口读取数据的速度受限,数据服务器可以通过添加处理器,云计算等技术提高处理效率,并采用更多倍率的倍化处理,从而进一步减少数据服务器占用端口读取数据的时间。
在本实施例中,还可以通过多线程对参考数据进行倍化处理,例如:参考数据通过4线程同时复制,最终得到5倍于参考数据的第三数据集合;并可以通过多线程将配置信息写入所复制的数据中;以及可以在完成倍化处理后,通过多线程发送或对倍化的到的数据进行后续处理。在优选方案中,每一个线程可以承担一个倍率的数据的处理,例如:参考数据通过4线程同时复制,一个线程复制一份数据,并承担该份数据的配置信息的写入工作,还承担该份数据的发送或后续处理。从而充分利用大型服务器的多线程优势。
本发明实施例提供的数据读取方法,服务器能够通过数据端口,读取数据总量小于所需数据的所提取的参考数据,并通过倍化处理获取不少于所需数据的总量的数据。相对于现有技术中通过接口读取数据的传统方式,本发明能够减少服务器通过数据端口的数据传输量,缓减了写效率受限于端口的问题,从而减少了业务处理的耗时,并降低大数据中的业务处理成本。
在本实施例中,所述第一数据集合的格式包括:所述第一数据集合中的每一条数据,由按照指定顺序排列的内容区域组成。所述配置信息包括:至少一个由相同类型的内容信息组成的信息集合,其中,一个信息集合用于写入至少一个内容区域。例如:第一数据集合的格式为一种字符串,字符串中划分为各内容区域,不同的内容区域被用于承载不同类型的信息,比如:字符串包括:1;;用户2;下关区;全区;;;;喜欢看电视,其中,两个“;”之间为内容区域,两个“;”之间若未写入有效字符则为空,由于分割不同的内容区域的字符可以为“;”也可以为其他符号;再例如:第一数据集合的格式为EXCEL表格数据,表格行表示数据条,表格列表示不同的内容区域,不同的内容区域被用于承载不同类型的信息。
举例描述本实施例可能的应用场景:数据库存在1000W条数据:
用户1;鼓楼区;全区;;;;喜欢运动,看报
用户2;下关区;全区;;;;喜欢看电视
用户3;栖霞区;全区;;;;喜欢玩电脑
…
用户999999;鼓楼区;全区;;;;喜欢逛街
根据数据服务器的设置或是用户终端设备的请求,设置需要提取的数据范围,比如用户1到999999。
数据服务器判断在上一执行周期中有无任务执行出错,若无则对数据进行预备分区间,并对每个区间里的数据采用多线程轮询,其中,多线程数量根据机器性能动态变化。并可以在每个线程里设置独立的执行方式,比如对数据进行增删改查,复制,变形等。
在本实施例中,数据服务器还可以根据网络性能动态设置缓存量,在数据服务器通过端口读取数据并进行倍化处理的过程中,当数据达到缓存阀值时候进行数据提交,从而减少提交次数,并实现提交动作独立于数据采集过程,不会导致堵塞。数据服务器可以通过分析网络性能或是负载状态,设置缓存的大小,从而对发送速率进行优化,减少传输次数。
具体的,所述将所述配置信息中的所有信息集合并写入所述第三数据集合中,得到所述第二数据集合,包括:
获取所述配置信息中的第1至N信息集合,N为大于1的正整数。
提取第1信息集合中的第1至k条内容信息,并将所述第1至k条内容信息依次写入第三数据集合中的各条数据,其中,对于每一个信息集合:将信息集合中的内容信息,依次写入所述第三数据集合中的各条数据中与信息集合对应的内容区域,k为大于1的正整数。
例如:第1信息集合为“地域”信息集合,包括“北京、上海、深圳…城市k”等k个城市名称,数据服务器将“北京”第三数据集合中的第1条数据,将“上海”第三数据集合中的第2条数据…直至将“城市k”写入第三数据集合中的第k条数据。
需要说明的是,数据服务器将内容信息写入各条数据的方式、顺序并不限定,例如:可以将信息集合的n条内容信息按照在信息集合中的排列顺序依次写第三数据集合的入n条数据,若第三数据集合的数据条数大于n,则可以重复写入n条内容信息,或是读取其他信息集合中的内容信息并写入。
将第1至N信息集合写入所述第三数据集合,完成写入后的所述第三数据集合作为所述第二数据集合。
在本实施例中,还包括:向经过倍化处理得到的各条数据写入编号信息。
所述发送所述第二数据集合,包括:
当所述第二数据集合传输中断时,记录中断前最近一条所传输数据的编号信息。例如:数据服务器通过倍化处理得到1000W条数据,在各条数据前端添加数字编号,以便于当传输中断时,记录中断前最近一条所传输数据的编号信息:
0;;用户1;鼓楼区;全区;;;;喜欢运动,看报
1;;用户2;下关区;全区;;;;喜欢看电视
2;;用户3;栖霞区;全区;;;;喜欢玩电脑
…
999999;;用户999999;鼓楼区;全区;;;;喜欢逛街
若由所述中断恢复传输,则根据中断前最近一条所传输数据的编号信息开始继续传输所述第二数据集合。通过记录中断前最近一条所传输数据的编号信息,数据服务器在恢复传输时将中断前最近一条所传输数据的下一条数据作为起始重新开始传输数据。例如:如图6所示,数据服务器根据当前CPU状态/网络状态设置最优传输查询比率;并从源数据(存储第一数据集合的设备)提取参考数据并读取第三方插件信息(提取配置信息);寻找该任务上一次执行结果并检测是否中断,若否,则对数据预处理(分片/分段);若是,则获取上一次的运行截止位置(中断前最近一条所传输数据的编号信息),根据数据服务器对每段数据做多线程处理(倍频方式处理/倍增);根据网络速率进行数据发送(异步)。
在本实施例中,记录中断前最近一条所传输数据的编号信息的方式可以通过对当前任务进行快照,快照指的是保留当前任务里数据的位置和状态,其中,保留当前任务里数据的位置即通过记录中断前最近一条所传输数据的编号信息实现,例如:如图7所示的,当数据服务器在执行任务(比如传输数据、处理数据等)出现异常时进行重试,一定次数后会跳过当前数据,系统异常则会对当前任务进行快照,在下一次任务开始时候进行断点重做。
结合上述方法流程,本实施例的一种可能的应用场景实例,如图8所示,包括:
任务分配模块选择待执行任务,并将所述待执行任务通知用户配置模块。
所述用户配置模块读取所述待执行任务对应的所述配置信息。数据读取模块通过所述数据端口,从所述第一数据集合中提取所述参考数据。
数据扩充模块载入所述配置信息和所述参考数据,并根据所述配置信息对所述参考数据进行倍化处理,并得到所述第二数据集合。
数据处理模块读取设备信息,并根据所述设备信息确定并发模式,所述并发模式至少包括:用于所述第二数据集合的缓存比例,和/或用于所述第二数据集合的线程。
数据发送模块根据所述并发模式发送所述第二数据集合。
本发明实施例还提供一种如图9所示的数据读取装置,包括:
读取单元,用于通过数据端口,从第一数据集合中提取参考数据,所提取的参考数据的数据总量小于所述第一数据集合。
倍化处理单元,用于根据所述配置信息对所述参考数据进行倍化处理,并得到与所述第一数据集合的数据量相同的第二数据集合。
传输单元,用于发送所述第二数据集合。
其中,所述倍化处理单元,用于复制所述参考数据,并得到与所述第一数据集合有相同的数据条数的第三数据集合。并获取所述配置信息中的信息集合,并查询得到每一个信息集合与内容区域的对应关系。并将所述配置信息中的所有信息集合并写入所述第三数据集合中,得到所述第二数据集合。
其中,所述第一数据集合的格式包括:所述第一数据集合中的每一条数据,由按照指定顺序排列的内容区域组成。所述配置信息包括:至少一个由相同类型的内容信息组成的信息集合,其中,一个信息集合用于写入至少一个内容区域。
进一步的,所述倍化处理单元,具体用于获取所述配置信息中的第1至N信息集合,N为大于1的正整数。并提取第1信息集合中的第1至k条内容信息,并将所述第1至k条内容信息依次写入第三数据集合中的各条数据,其中,对于每一个信息集合:将信息集合中的内容信息,依次写入所述第三数据集合中的各条数据中与信息集合对应的内容区域,k为大于1的正整数。将第1至N信息集合写入所述第三数据集合,完成写入后的所述第三数据集合作为所述第二数据集合。
在本实施例中,所述倍化处理单元,还用于向经过倍化处理得到的各条数据写入编号信息。
所述传输单元,具体用于当所述第二数据集合传输中断时,记录中断前最近一条所传输数据的编号信息。若由所述中断恢复传输,则根据中断前最近一条所传输数据的编号信息开始继续传输所述第二数据集合。
本发明实施例提供的数据读取装置,服务器能够通过数据端口,读取数据总量小于所需数据的所提取的参考数据,并通过倍化处理获取不少于所需数据的总量的数据。相对于现有技术中通过接口读取数据的传统方式,本发明能够减少服务器通过数据端口的数据传输量,缓减了写效率受限于端口的问题,从而减少了业务处理的耗时,并降低大数据中的业务处理成本。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (8)
1.一种数据读取方法,其特征在于,包括:
通过数据端口,从第一数据集合中提取参考数据,所提取的参考数据的数据总量小于所述第一数据集合;
根据配置信息对所述参考数据进行倍化处理,并得到与所述第一数据集合的数据量相同的第二数据集合;
发送所述第二数据集合;
还包括:向经过倍化处理得到的各条数据写入编号信息;
所述发送所述第二数据集合,包括:
当所述第二数据集合传输中断时,记录中断前最近一条所传输数据的编号信息;
若由所述中断恢复传输,则根据中断前最近一条所传输数据的编号信息开始继续传输所述第二数据集合;
还包括:
数据服务器根据当前CPU状态和网络状态,设置最优传输查询比率;并从存储所述第一数据集合的设备提取参考数据并提取配置信息;
若由所述中断恢复传输,则根据中断前最近一条所传输数据的编号信息开始继续传输所述第二数据集合;通过记录中断前最近一条所传输数据的编号信息,数据服务器在恢复传输时将中断前最近一条所传输数据的下一条数据作为起始重新开始传输数据;
根据网络速率异步发送所述第二数据集合。
2.根据权利要求1所述的方法,其特征在于,所述第一数据集合的格式包括:所述第一数据集合中的每一条数据,由按照指定顺序排列的内容区域组成;
所述配置信息包括:至少一个由相同类型的内容信息组成的信息集合,其中,一个信息集合用于写入至少一个内容区域。
3.根据权利要求2所述的方法,其特征在于,所述对所述参考数据进行倍化处理包括:
复制所述参考数据,并得到与所述第一数据集合有相同的数据条数的第三数据集合;
获取所述配置信息中的信息集合,并查询得到每一个信息集合与内容区域的对应关系;
将所述配置信息中的所有信息集合并写入所述第三数据集合中,得到所述第二数据集合。
4.根据权利要求3所述的方法,其特征在于,所述将所述配置信息中的所有信息集合并写入所述第三数据集合中,得到所述第二数据集合,包括:
获取所述配置信息中的第1至N信息集合,N为大于1的正整数;
提取第1信息集合中的第1至k条内容信息,并将所述第1至k条内容信息依次写入第三数据集合中的各条数据,其中,对于每一个信息集合:将信息集合中的内容信息,依次写入所述第三数据集合中的各条数据中与信息集合对应的内容区域,k为大于1的正整数;
将第1至N信息集合写入所述第三数据集合,完成写入后的所述第三数据集合作为所述第二数据集合。
5.根据权利要求1所述的方法,其特征在于,包括:
任务分配模块选择待执行任务,并将所述待执行任务通知用户配置模块;
所述用户配置模块读取所述待执行任务对应的所述配置信息;数据读取模块通过所述数据端口,从所述第一数据集合中提取所述参考数据;
数据扩充模块载入所述配置信息和所述参考数据,并根据所述配置信息对所述参考数据进行倍化处理,并得到所述第二数据集合;
数据处理模块读取设备信息,并根据所述设备信息确定并发模式,所述并发模式至少包括:用于所述第二数据集合的缓存比例,和/或用于所述第二数据集合的线程;
数据发送模块根据所述并发模式发送所述第二数据集合。
6.一种数据读取装置,其特征在于,包括:
读取单元,用于通过数据端口,从第一数据集合中提取参考数据,所提取的参考数据的数据总量小于所述第一数据集合;
倍化处理单元,用于根据配置信息对所述参考数据进行倍化处理,并得到与所述第一数据集合的数据量相同的第二数据集合;
传输单元,用于发送所述第二数据集合;
所述倍化处理单元,还用于向经过倍化处理得到的各条数据写入编号信息;
所述传输单元,具体用于当所述第二数据集合传输中断时,记录中断前最近一条所传输数据的编号信息;若由所述中断恢复传输,则根据中断前最近一条所传输数据的编号信息开始继续传输所述第二数据集合;
还包括:数据服务器根据当前CPU状态和网络状态,设置最优传输查询比率;并从存储所述第一数据集合的设备提取参考数据并提取配置信息;
若由所述中断恢复传输,则根据中断前最近一条所传输数据的编号信息开始继续传输所述第二数据集合;通过记录中断前最近一条所传输数据的编号信息,数据服务器在恢复传输时将中断前最近一条所传输数据的下一条数据作为起始重新开始传输数据;
根据网络速率异步发送所述第二数据集合。
7.根据权利要求6所述的装置,其特征在于,所述倍化处理单元,用于复制所述参考数据,并得到与所述第一数据集合有相同的数据条数的第三数据集合;并获取所述配置信息中的信息集合,并查询得到每一个信息集合与内容区域的对应关系;并将所述配置信息中的所有信息集合并写入所述第三数据集合中,得到所述第二数据集合;
其中,所述第一数据集合的格式包括:所述第一数据集合中的每一条数据,由按照指定顺序排列的内容区域组成;所述配置信息包括:至少一个由相同类型的内容信息组成的信息集合,其中,一个信息集合用于写入至少一个内容区域。
8.根据权利要求7所述的装置,其特征在于,所述倍化处理单元,具体用于获取所述配置信息中的第1至N信息集合,N为大于1的正整数;并提取第1信息集合中的第1至k条内容信息,并将所述第1至k条内容信息依次写入第三数据集合中的各条数据,其中,对于每一个信息集合:将信息集合中的内容信息,依次写入所述第三数据集合中的各条数据中与信息集合对应的内容区域,k为大于1的正整数;将第1至N信息集合写入所述第三数据集合,完成写入后的所述第三数据集合作为所述第二数据集合。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510696610.4A CN106610992B (zh) | 2015-10-23 | 2015-10-23 | 一种数据读取方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510696610.4A CN106610992B (zh) | 2015-10-23 | 2015-10-23 | 一种数据读取方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106610992A CN106610992A (zh) | 2017-05-03 |
CN106610992B true CN106610992B (zh) | 2021-03-02 |
Family
ID=58612770
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510696610.4A Active CN106610992B (zh) | 2015-10-23 | 2015-10-23 | 一种数据读取方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106610992B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101023693A (zh) * | 2004-06-16 | 2007-08-22 | 阿尔戈交互有限公司 | 生成测试例程的方法 |
CN101430661A (zh) * | 2008-11-18 | 2009-05-13 | 阿里巴巴集团控股有限公司 | 一种批量生成测试数据的方法、系统和装置 |
JP2010146037A (ja) * | 2008-12-16 | 2010-07-01 | Hitachi Ltd | 論理検証システム |
CN102968370A (zh) * | 2012-11-26 | 2013-03-13 | 中国电信股份有限公司云计算分公司 | 一种测试数据生成方法及装置 |
CN103500224A (zh) * | 2013-10-18 | 2014-01-08 | 税友软件集团股份有限公司 | 一种数据写入方法及装置、数据读取方法及装置 |
CN104133772A (zh) * | 2014-08-13 | 2014-11-05 | 广东电网公司信息中心 | 一种自动生成测试数据的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5625297B2 (ja) * | 2009-09-25 | 2014-11-19 | 富士通株式会社 | ディレイテスト装置、ディレイテスト方法及びディレイテストプログラム |
-
2015
- 2015-10-23 CN CN201510696610.4A patent/CN106610992B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101023693A (zh) * | 2004-06-16 | 2007-08-22 | 阿尔戈交互有限公司 | 生成测试例程的方法 |
CN101430661A (zh) * | 2008-11-18 | 2009-05-13 | 阿里巴巴集团控股有限公司 | 一种批量生成测试数据的方法、系统和装置 |
JP2010146037A (ja) * | 2008-12-16 | 2010-07-01 | Hitachi Ltd | 論理検証システム |
CN102968370A (zh) * | 2012-11-26 | 2013-03-13 | 中国电信股份有限公司云计算分公司 | 一种测试数据生成方法及装置 |
CN103500224A (zh) * | 2013-10-18 | 2014-01-08 | 税友软件集团股份有限公司 | 一种数据写入方法及装置、数据读取方法及装置 |
CN104133772A (zh) * | 2014-08-13 | 2014-11-05 | 广东电网公司信息中心 | 一种自动生成测试数据的方法 |
Non-Patent Citations (1)
Title |
---|
基于数据流的测试用例自动生成研究;戴翔等;《计算机技术与发展》;20140930;第24卷(第9期);第1-5页 * |
Also Published As
Publication number | Publication date |
---|---|
CN106610992A (zh) | 2017-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108319654B (zh) | 计算系统、冷热数据分离方法及装置、计算机可读存储介质 | |
CN110569214B (zh) | 用于日志文件的索引构建方法、装置及电子设备 | |
CN111813756B (zh) | 一种日志检索系统、方法、装置、电子设备及存储介质 | |
CN111061752B (zh) | 数据处理方法、装置及电子设备 | |
CN112988916B (zh) | 针对Clickhouse的全量和增量同步方法、设备和存储介质 | |
CN110019873B (zh) | 人脸数据处理方法、装置及设备 | |
CN111881096B (zh) | 一种文件读取方法、装置、设备及存储介质 | |
CN103177080B (zh) | 文件预读的方法和装置 | |
CN104965835B (zh) | 一种分布式文件系统的文件读写方法及装置 | |
CN108228432A (zh) | 一种分布式链路跟踪、分析方法及服务器、全局调度器 | |
CN109947730A (zh) | 元数据恢复方法、装置、分布式文件系统及可读存储介质 | |
CN112764988B (zh) | 一种数据分段采集方法及装置 | |
CN104915376B (zh) | 一种云存储中文件的归档压缩方法 | |
CN114398520A (zh) | 数据检索方法、系统、装置、电子设备及存储介质 | |
CN113704359A (zh) | 一种时序数据库多数据副本的同步方法、系统以及服务器 | |
US9092338B1 (en) | Multi-level caching event lookup | |
CN111625600B (zh) | 数据存储的处理方法、系统、计算机设备及存储介质 | |
CN112948410A (zh) | 数据处理方法、装置、设备及介质 | |
CN110399451B (zh) | 一种基于非易失性内存的全文检索引擎缓存方法,系统,设备及可读存储介质 | |
CN106610992B (zh) | 一种数据读取方法及装置 | |
WO2015068259A1 (ja) | 情報提供方法および装置並びプログラム | |
CN112799872B (zh) | 一种基于键值对存储系统的纠删码编码方法及装置 | |
CN104750846A (zh) | 一种子串查找方法及装置 | |
CN114896276A (zh) | 数据存储方法、装置、电子设备及分布式存储系统 | |
CN113905252A (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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20210202 Address after: 210002 no.1-9, Suning Avenue, Xuanwu District, Nanjing City, Jiangsu Province Applicant after: NANJING SUNING SOFTWARE TECHNOLOGY Co.,Ltd. Address before: 210042 Suning Headquarters, No. 1 Suning Avenue, Xuanwu District, Nanjing City, Jiangsu Province Applicant before: SUNING COMMERCE GROUP Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |