一种数据库的访问方法及终端、服务器技术

技术编号:14903296 阅读:63 留言:0更新日期:2017-03-29 18:38
本发明专利技术公开了一种数据库的访问方法及终端、服务器,其中,终端本地存储有元表,所述方法包括:终端开启定时器开始定时;终端判断在定时器开始计时的过程中是否得到访问数据库的任务,得到第一判断结果;当所述第一判断结果表明所述定时器定时结束时未得到访问数据库的任务时,终端向服务器发送访问请求,所述访问请求用于请求元表中的第一标识信息,所述第一标识信息用于表明终端是否需要更新本地的元表;终端接收所述服务器发送的访问响应,所述访问响应中携带有第一标识信息;当所述第一标识信息表明终端需要更新本地的元表时,所述终端更新本地的元表。

Database access method, terminal and server

The invention discloses a method of database access and terminal, the terminal server, local storage per table, the method includes: opening the terminal timer start timing; whether to get access to the database task judging terminal start timing in the timer, the first judgment result; when the first judgment results show that the timer at the end did not get access to the database tasks, access terminal sends a request to the server, the access request used to request the first identification information element in the table, the first identification information used to indicate whether the terminal needs to update the local table element; the terminal receives the response sent by the server access, the access response with the first identification information; when the first identification information indicates that the terminal needs to update the local element table at the end Update local meta table.

【技术实现步骤摘要】

本专利技术涉及分布式存储技术,尤其涉及一种数据库的访问方法及终端、服务器。
技术介绍
大数据(bigdata)是当前学术研究领域和商业应用领域中一个受到广泛关注的方向,它是指在新的处理模式下,能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。大数据技术的战略意义不在于掌握庞大的数据信息,而在于对这些含有意义的数据进行专业化处理。也就是说大数据的价值不在于数据本身,而是数据通过处理之后能够产生的具有指导和决策作用的信息,大数据伴随着云计算而产生,在云时代,海量的用户数据将从本地转向云端,提供云服务的机构将掌握海量的数据,而大数据技术就是挖掘这些数据背后隐藏的价值的有效工具。从技术上看,大数据与云计算的关系就像一枚硬币的正反面一样密不可分。大数据必然无法用单台的计算机进行处理,必须采用分布式架构。它的特色在于对海量数据进行分布式数据挖掘,但它必须依托云计算的分布式处理、分布式数据库和云存储、虚拟化技术等。同时,大数据技术挖掘到的目标信息可以为云计算提供更加智能化的决策支持。二者共同构成了智能化的云服务系统。分布式存储系统,是将数据分散存储在多台相互连接的独立的设备上。传统的网络存储系统采用集中的存储服务器存放所有数据,存储服务器成为系统性能的瓶颈,同时也存在安全性和可靠性的隐患,不能满足大规模存储应用的需要。分布式网络存储系统是大数据环境下必要的存储手段,它采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,它不但提高了系统的可靠性、可用性和存取效率,还易于扩展。分布式存储系统采用非关系型数据库系统,其机构相对松散,主要用来存储非结构化和半结构化的数据。目前已经被广泛使用的分布式大数据存储数据库包括HadoopDatabase(Hbase)、GoogleBigtable、NoSQL等等。目前Hbase已经是目前大数据平台中应用率最高的技术,特别是针对诸如文本、社交媒体订阅以及视频等非结构化数据,Hbase都表现出优越的性能。分布式存储数据库(Hbase)是分布式、面向列的存储系统,提供实时读写和随机访问大数据集。图1-1为相关技术中分布式存储数据库Hbase的组成结构示意图,如图1-1所示,数据库的表由不同的区域(Region)组成,每个区域包含表的所有行的一个子集。区域服务器(Regionserver)负责管理一个或者多个区域。数据库由一个主节点(Master)协调一个或多个区域服务器组成。主节点负责引导初始安装、分配区域给区域服务器、恢复区域服务器的故障,其负载较轻。区域服务器负责0到多个区域的管理,响应客户端的读写请求。数据库的实现依赖于管理器(Zookeeper)来协调管理,管理器负责选取一个节点为主节点,剩下的节点为区域服务器。区域(Region)是分布式存储的最小存储单位,当表初写数据时,此时表只有一个区域,当随着数据的增多,区域的容量开始变大,等到它达到限定的阀值大小时,主节点把该区域分裂为两个大小基本相同的区域。主节点服务器维护两个数据表,以确保能够定位带目标数据所在的区域,这两个数据表分别是是根表和元表。根表记录了只有一个,存放于一个单独的区域中,它记录了元表的位置;元表可以有很多个,它记录了用户信息所在的区域。图1-2为相关技术中物理存储时的流程示意图,如图1-2所示,客户端在访问目标数据时,需要经过以下4步骤:步骤121,客户端连接到管理器,并查找根表(-Root)的位置。步骤122,客户端通过根表获取访问目标在的元表(-Meta)的位置。步骤123,客户端查找元表来获取用户表中的目标信息所在的节点和位置。步骤124,客户端直接与区域服务器交互,进行增删改查操作。从图1-2中可以看出,客户端获得目标所在的位置信息至少需要三次访问(管理器、根表、元表)。从而导致访问速度比较慢。客户端为了实现对分布式数据库的快速访问,会将远程的根表和元表信息缓存到本地,在每次访问数据库时只需要一次连接就可以定位到目标数据,如图1-3所示的访问方式①,该访问方式直接由客户端定位到区域,这无疑大大缩短了客户端的访问时间,可以实现分布式数据库的快速读写。但是这种本地缓存方式也带来了缓存不同步问题。具体地,区域会随着数据量的增大或减少而进行分裂或合并,其数量、容量和位置信息都会随之变化,如此一来客户端中已经存在的缓存信息将会失效,客户端在访问时将无法准确定位到目标信息所在的区域。现有的解决方案采用试错方式来更新本地缓存。如图1-3所示,访问方式②,当客户端访问目标区域时,首先读取本地缓存,经过多次尝试后发现找不到目标区域,这时客户端重新经过三次访问经过管理器、根表、元表找到目标数据,然后再在本地缓存中更新该项数据的信息,这样就大大增加了客户端的访问时间。特别是当数据量迅速增加的时候,区域的分裂将会更加频繁,客户端试错更新的频率更高,耗费时间更长,降低了快速读写的性能。
技术实现思路
有鉴于此,本专利技术实施例为解决现有技术中存在的至少一个问题而提供一种数据库的访问方法及终端、服务器,能够终端访问数据库的速度。本专利技术实施例的技术方案是这样实现的:第一方面,本专利技术实施例提供一种数据库的访问方法,终端本地存储有元表,所述方法包括:开启定时器开始定时;判断在定时器开始计时的过程中是否得到访问数据库的任务,得到第一判断结果;当所述第一判断结果表明所述定时器定时结束时未得到访问数据库的任务时,向服务器发送访问请求,所述访问请求用于请求元表中的第一标识信息;接收所述服务器发送的访问响应,所述访问响应中携带有第一标识信息;当所述第一标识信息表明终端需要更新本地的元表时,更新本地的元表。第二方面,本专利技术实施例提供一种数据库的访问方法,所述方法包括:当元表中的信息发生变化时,服务器对元表属性中的参数值进行更新;判断所述参数值是否满足预设的条件,得到第二判断结果;当所述第二判断结果表明所述参数值满足预设的条件时,将所述元表的第一标识信息更新为第一信息,所述第一信息表明终端需要更新本地存储的元表。第三方面,本专利技术实施例提供一种终端,终端本地存储有元表,所述终端包括开启单元、第一判断单元、第一发送单元、第一接收单元和第一更新单元,其中:所述开启单元,用于开启定时器开始定时;所述第一判断单元,用于判断在定时器开始计时的过程中是否得到访问数据库的任务,得到第一判断结果;所述第一发送单元,用于当所述第一判断结果表明所述定时器定时结束时未得到访问数据库的任务时,向服务器发送访问请求,所述访问请求用于请求元表中的第一标识信息;所述第一接收单元,用于接收所述服务器发送的访问响应,所述访问响应中携带有第一标识信息;所述第一更新单元,用于当所述第一标识信息表明终端需要更新本地的元表时,更新本地的元表。第四方面,本专利技术实施例提供一种服务器,所述服务器包括第二更新单元、第二判断单元和第三更新单元,其中:所述第二更新单元,用于当元表中的信息发生变化时,对元表属性中的参数值进行更新;所述第二判断单元,用于判断所述参数值是否满足预设的条件,得到第二判断结果;所述第三更新单元,用于当所述第二判断结果表明所述参数值满足预设的条件时,将所述元表的第一标识信息更新为第一信息,本文档来自技高网
...

【技术保护点】
一种数据库的访问方法,其特征在于,终端本地存储有元表,所述方法包括:开启定时器开始定时;判断在定时器开始计时的过程中是否得到访问数据库的任务,得到第一判断结果;当所述第一判断结果表明所述定时器定时结束时未得到访问数据库的任务时,向服务器发送访问请求,所述访问请求用于请求元表中的第一标识信息;接收所述服务器发送的访问响应,所述访问响应中携带有第一标识信息;当所述第一标识信息表明需要更新本地的元表时,更新本地的元表。

【技术特征摘要】
1.一种数据库的访问方法,其特征在于,终端本地存储有元表,所述方法包括:开启定时器开始定时;判断在定时器开始计时的过程中是否得到访问数据库的任务,得到第一判断结果;当所述第一判断结果表明所述定时器定时结束时未得到访问数据库的任务时,向服务器发送访问请求,所述访问请求用于请求元表中的第一标识信息;接收所述服务器发送的访问响应,所述访问响应中携带有第一标识信息;当所述第一标识信息表明需要更新本地的元表时,更新本地的元表。2.根据权利要求1所述的方法,其特征在于,更新本地的元表,包括:向服务器发送更新请求,所述更新请求用于请求元表,所请求的元表的第一标识信息表明需要更新本地的元表;接收所述服务器发送的更新响应,所述更新响应携带有与所述第一标识信息相对应的更新后的元表;将所述服务器发送的更新后的元表更新到本地。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:当所述第一判断结果表明所述定时器定时结束时得到访问数据库的任务时,读取本地存储的根表和元表;根据所述任务查询根表和元表,得到访问目标;根据所述访问目标对所述服务器中的用户数据进行处理。4.根据权利要求2所述的方法,其特征在于,所述访问请求和所述更新请求中携带有元表的标识信息;对应地,所述访问响应中携带有与所述元表的标识信息相对应的第一标识信息,所述更新响应中携带有与所述元表的标识信息相对应的元表。5.根据权利要求1至4任一项所述的方法,其特征在于,所述更新响应中
\t还携带有更新时间,所述方法还包括:根据所述更新时间设置所述定时器的定时时间。6.一种数据库的访问方法,其特征在于,所述方法包括:当元表中的信息发生变化时,对元表属性中的参数值进行更新;判断所述参数值是否满足预设的条件,得到第二判断结果;当所述第二判断结果表明所述参数值满足预设的条件时,将所述元表的第一标识信息更新为第一信息,所述第一信息表明终端需要更新本地存储的元表。7.根据权利要求6所述的方法,其特征在于,所述元表属性中的参数包括更新次数,对应地,判断所述参数值是否满足预设的条件,包括:判断所述更新次数是否大于预设的第一阈值,当所述更新次数大于所述第一阈值时确定为所述参数值满足预设的条件。8.根据权利要求6所述的方法,其特征在于,所述元表属性中的参数包括更新百分比,对应地,判断所述参数值是否满足预设的条件,包括:判断所述更新百分比是否大于预设的第二阈值,当所述更新百分比大于所述第二阈值时确定为所述参数值满足预设的条件。9.根据权利要求6至8任一项所述的方法,其特征在于,所述方法还包括:接收终端发送的访问请求,所述访问请求用于请求元表中的第一标识信息,所述第一标识信息用于表明终端是否需要更新本地的元表;根据所述访问请求查找元表,得到所述元表的第一标识信息,将所述元表中的第一标识信息携带于访问响应中;将所述访问响应发送给终端。10.根据权利要求6至8任一项所述的方法,其特征在于,所述方法还包括:更新所述元表属性中的更新时间和/或当前时间。11.一种终端,其特征在于,终端本地存储有元表,所述终端包括开启单元、第一判断单元、第一发送单元、第一接收单元和第一更新单元,其中:所述开启单元,用于开启定时器开始定时;所述第一判断单元,用于判断在定时...

【专利技术属性】
技术研发人员:杨帅张峰王峰生冉鹏
申请(专利权)人:中国移动通信集团公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1