System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及到大数据领域,具体而言,涉及一种基于流式计算的大数据处理方法和系统。
技术介绍
1、随着互联网技术的发展以及互联网规模的不断扩大,互联网上的数据量也越来越大,这些数据通常需要保存在数据库中。
2、在数据库保存的一条数据中会有多个字段(field),所谓字段基本上与列的意思相同,经常互换使用,不过数据库列一般称为列,而术语字段通常用在计算字段的连接上。在相关技术中大部分数据库均支持字段的计算。例如,可以求多个列的数据值的算术和;又例如,拼接(concatenate)可以将多个值联结到一起构成单个值,在有些数据库中可可以用concat()函数来实现两个列的拼接。
3、当数据库保存的数据量比较大的时候,如果数据库客户端在获取数据的同时也需要进行字段的计算,则会给数据库服务端带来比较大负担,这会影响数据库服务端的服务质量。图1是根据相关技术的数据库中大数据计算的处理方法的示意图,如图1所示,数据库一般包括数据库服务端和数据库客户端,用户通过数据库客户端从数据库服务端获取数据。对于数据库服务端而言其为多个数据库客户端提供服务,数据库服务端中保存有数据,并且也有处理模块来对数据库客户端的数据请求进行解析。如果一个数据库客户端需要获取大量的数据,并且这些数据是需要对多个字段进行计算才能得到的,这会给处理模块带来比较大的计算负担,此时,其他数据库客户端对数据库服务端的访问就会受到影响,从而影响数据库服务端的服务质量。
技术实现思路
1、本申请实施例提供了一种基于流
2、根据本申请的一个方面,提供了一种基于流式计算的大数据处理方法,包括:接收来自数据库客户端的第一数据获取请求,其中,所述第一数据获取请求用于从数据库服务端获取数据;对所述第一数据获取请求进行解析,并判断所述第一数据获取请求所获取的所述数据是否包括第一数据;其中,所述第一数据为需要计算才能得到的数据,所述计算为所述数据库服务端对其保存的数据中的至少两个列所进行的逻辑和/或数学计算;在包括所述第一数据的情况下,向所述数据库服务端发送第二数据获取请求,其中,所述第二数据获取请求用于分别获取用于计算所述第一数据的每个列;接收所述数据库服务端返回的用于计算所述第一数据的每个列,并对所述每个列进行计算得到所述第一数据;将计算得到的所述第一数据作为所述第一数据获取请求的响应发送给所述数据库客户端。
3、进一步地,所述方法中的步骤由计算软件执行,其中,所述计算软件独立于所述数据库客户端和所述数据库服务端,所述数据库服务端通过所述计算软件连接至所述数据库客户端。
4、进一步地,在包括所述第一数据的情况下向所述数据库服务端发送第二数据获取请求包括:在包括所述第一数据的情况下,判断所述第一数据获取请求所包括的数据的条数;在所述数据的条数大于阈值的情况下,向所述数据库服务端发送所述第二数据获取请求;在所述数据的条数小于等于所述阈值的情况下,向所述数据库服务端发送第一数据获取请求。
5、进一步地,在向所述数据库服务端发送第一数据获取请求之后,所述方法还包括:接收所述数据库服务端响应于所述第一数据获取请求返回的数据,其中,返回的数据中包括所述第一数据,所述第一数据是由所述数据库服务端对多个列计算得到的;将所述数据库服务端返回的数据发送给所述数据库客户端。
6、根据本申请的另一个方面,还提供了一种基于流式计算的大数据处理系统,包括:第一接收模块,用于接收来自数据库客户端的第一数据获取请求,其中,所述第一数据获取请求用于从数据库服务端获取数据;判断模块,用于对所述第一数据获取请求进行解析,并判断所述第一数据获取请求所获取的所述数据是否包括第一数据;其中,所述第一数据为需要计算才能得到的数据,所述计算为所述数据库服务端对其保存的数据中的至少两个列所进行的逻辑和/或数学计算;第一发送模块,用于在包括所述第一数据的情况下,向所述数据库服务端发送第二数据获取请求,其中,所述第二数据获取请求用于分别获取用于计算所述第一数据的每个列;计算模块,用于接收所述数据库服务端返回的用于计算所述第一数据的每个列,并对所述每个列进行计算得到所述第一数据;第二发送模块,用于将计算得到的所述第一数据作为所述第一数据获取请求的响应发送给所述数据库客户端。
7、进一步地,所述方法中的步骤由计算软件执行,其中,所述计算软件独立于所述数据库客户端和所述数据库服务端,所述数据库服务端通过所述计算软件连接至所述数据库客户端。
8、进一步地,所述第一发送模块用于:在包括所述第一数据的情况下,判断所述第一数据获取请求所包括的数据的条数;在所述数据的条数大于阈值的情况下,向所述数据库服务端发送所述第二数据获取请求;在所述数据的条数小于等于所述阈值的情况下,向所述数据库服务端发送第一数据获取请求。
9、进一步地,还包括:第二接收模块,用于接收所述数据库服务端响应于所述第一数据获取请求返回的数据,其中,返回的数据中包括所述第一数据,所述第一数据是由所述数据库服务端对多个列计算得到的;第三发送模块,用于将所述数据库服务端返回的数据发送给所述数据库客户端。
10、根据本申请的另一个方面,还提供了一种服务器,包括存储器和处理器;其中,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行以实现上述的方法步骤。
11、根据本申请的另一个方面,还提供了一种可读存储介质,其上存储有计算机指令,其中,该计算机指令被处理器执行时实现上述的方法步骤。
12、在本申请实施例中,采用了接收来自数据库客户端的第一数据获取请求,其中,所述第一数据获取请求用于从数据库服务端获取数据;对所述第一数据获取请求进行解析,并判断所述第一数据获取请求所获取的所述数据是否包括第一数据;其中,所述第一数据为需要计算才能得到的数据,所述计算为所述数据库服务端对其保存的数据中的至少两个列所进行的逻辑和/或数学计算;在包括所述第一数据的情况下,向所述数据库服务端发送第二数据获取请求,其中,所述第二数据获取请求用于分别获取用于计算所述第一数据的每个列;接收所述数据库服务端返回的用于计算所述第一数据的每个列,并对所述每个列进行计算得到所述第一数据;将计算得到的所述第一数据作为所述第一数据获取请求的响应发送给所述数据库客户端。通过本申请解决了数据库客户端获取大量需要对字段进行计算才能得到的数据时影响数据库服务端的服务质量的问题,从而减轻了数据库服务端的计算负担,在一定程度上提高了数据库服务端的服务质量。
本文档来自技高网...【技术保护点】
1.一种基于流式计算的大数据处理方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述方法中的步骤由计算软件执行,其中,所述计算软件独立于所述数据库客户端和所述数据库服务端,所述数据库服务端通过所述计算软件连接至所述数据库客户端。
3.根据权利要求1所述的方法,其特征在于,在包括所述第一数据的情况下向所述数据库服务端发送第二数据获取请求包括:
4.根据权利要求3所述的方法,其特征在于,在向所述数据库服务端发送第一数据获取请求之后,所述方法还包括:
5.一种基于流式计算的大数据处理系统,其特征在于,包括:
6.根据权利要求5所述的系统,其特征在于,所述方法中的步骤由计算软件执行,其中,所述计算软件独立于所述数据库客户端和所述数据库服务端,所述数据库服务端通过所述计算软件连接至所述数据库客户端。
7.根据权利要求5所述的系统,其特征在于,所述第一发送模块用于:
8.根据权利要求7所述的系统,其特征在于,还包括:
9.一种服务器,包括存储器和处理器;其中,所述存储器用于存储
10.一种可读存储介质,其上存储有计算机指令,其中,该计算机指令被处理器执行时实现权利要求1至4任一项所述的方法步骤。
...【技术特征摘要】
1.一种基于流式计算的大数据处理方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述方法中的步骤由计算软件执行,其中,所述计算软件独立于所述数据库客户端和所述数据库服务端,所述数据库服务端通过所述计算软件连接至所述数据库客户端。
3.根据权利要求1所述的方法,其特征在于,在包括所述第一数据的情况下向所述数据库服务端发送第二数据获取请求包括:
4.根据权利要求3所述的方法,其特征在于,在向所述数据库服务端发送第一数据获取请求之后,所述方法还包括:
5.一种基于流式计算的大数据处理系统,其特征在于,包括:
6.根据权利要求5所述的系统,...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。