一种数据获取以及同步方法、装置制造方法及图纸

技术编号:15219200 阅读:121 留言:0更新日期:2017-04-26 15:14
本申请公开了一种数据获取方法及装置,该方法包括:第二服务器将其对应的数据库中的数据同步到数据存储引擎中,第一服务器接收数据获取请求时,根据预先保存的该数据存储引擎接口,将数据获取请求发送给数据存储引擎,并接收数据存储引擎根据数据获取请求查找并返回的数据。通过上述方法,用户在获取数据时,第一服务器不再通过第二服务器在对应的数据库中进行查找数据,而是直接访问数据存储引擎,并从数据存储引擎中获取自己所需的数据,这样在整个数据获取的过程中,降低了与第二服务器的交互次数,并且极大的降低了第二服务器的负荷,从而也降低了对第二服务器所提供的其他服务的影响。

Data acquisition method and device

The invention discloses a data acquisition method and device, the method includes: second servers will be the corresponding data in the database is synchronized to the data storage engine, data acquisition server receives the first request, according to the pre stored data storage engine interface, data acquisition request to the data storage engine, and receive data the storage engine according to the data acquisition request to find and return data. By the above method, the user can get the data, the first server is no longer by second servers in the corresponding database to find the data, but direct access to the data storage engine, and get the required data from the data storage engine, this process in the whole data obtained in the times of interaction with the second server reduced second and greatly reduce the server load, so as to reduce the influence of other services provided by the server second.

【技术实现步骤摘要】

本申请涉及计算机
,尤其涉及一种数据获取方法及装置。
技术介绍
随着网络技术的不断发展,基于网络的服务商为用户提供的数据也越来越丰富(如,电子书籍、音乐等)。目前,服务商预先会建立自己的数据库,并将数据存储到数据库中,以便后续为用户提供需要的数据,但是,一个数据库中的数据通常是不全面的,也就是说,用户在使用服务商提供的数据时,有可能存在数据库中并没有用户所需数据的情况,因此,服务商为了更好的为用户提供数据和服务,服务商之间通常可将数据库中的数据进行共享,即,一个服务商的服务器(以下称为第一服务器)可通过远程过程调用协议(RemoteProcedureCallProtocol,RPC)与另一服务商的服务器(以下称为第二服务器)进行通信,第一服务器先向第二服务器发送调用请求,第二服务器接收到调用请求后,则在第二服务器对应的数据库中查找相应的数据,并将查找到的数据返回给第一服务器。例如,用户张三在提供电子书的服务商A的电子平台上,查找自己所需的电子书《基督山伯爵》,该电子平台对应的服务器1接收到张三的查找请求,则在自己的数据库a中进行查找,但并未在该数据库a中查找到《基督山伯爵》,因此,服务器1通过RPC与另一服务商B的服务器2建立通信连接,向服务器2发送调用请求,服务器2接收到调用请求后,则在对应的数据库b中查找《基督山伯爵》,再将查找到的《基督山伯爵》返回给服务器1,整个查找过程如图1所示。务器1将查找到的《基督山伯爵》提供给用户张三显然,在上述获取数据的过程中,需要经过远程调用服务器2来查找到所需的数据,即,服务器1需要先与服务器2进行交互,服务器2再与数据库2进行交互,整个数据获取过程中的交互次数较多,导致数据获取效率较低,在大量用户需要获取数据库a中并未保存的数据时,也会导致服务器2的负荷较大,从而使服务器1和服务器2所提供的其他服务受到影响。
技术实现思路
本申请实施例提供一种数据获取方法及装置,用以解决现有技术中用户使用电子平台从数据库中获取数据时,整个数据获取过程中的交互次数较多,导致数据获取效率较低的问题。本申请实施例提供的一种数据获取方法,所述方法包括:第一服务器接收数据获取请求;根据预先保存的第二服务器对应的数据存储引擎接口,将所述数据获取请求发送给所述第二服务器对应的数据存储引擎,其中,所述数据存储引擎中存储的数据是从所述第二服务器对应的数据库中同步的;接收所述数据存储引擎根据所述数据获取请求查找并返回的数据。本申请实施例提供的一种数据同步方法,所述方法包括:在数据库中确定出更新的数据;根据更新的数据,确定出所述数据对应的数据属性;在预先保存的各数据主键中,确定出包含所述数据属性的数据主键;根据确定出的数据主键,在数据库中查找确定出的数据主键对应的所有数据;将查找到的所有数据同步到数据存储引擎中。本申请实施例提供的一种数据获取装置,所述装置包括:第一接收模块,用于接收数据获取请求;发送模块,用于根据预先保存的第二服务器对应的数据存储引擎接口,将所述数据获取请求发送给所述第二服务器对应的数据存储引擎,其中,所述数据存储引擎中存储的数据是从所述第二服务器对应的数据库中同步的;第二接收模块,用于接收所述数据存储引擎根据所述数据获取请求查找并返回的数据。本申请实施例提供的一种数据同步装置,所述装置包括:确定数据模块,用于在数据库中确定出更新的数据;确定属性模块,用于根据更新的数据,确定出所述数据对应的数据属性;确定主键模块,用于在预先保存的各数据主键中,确定出包含所述数据属性的数据主键;查找模块,用于根据确定出的数据主键,在数据库中查找确定出的数据主键对应的所有数据;同步模块,用于将查找到的所有数据同步到数据存储引擎中。本申请实施例提供一种数据获取方法及装置,该方法第二服务器将其对应的数据库中的数据同步到数据存储引擎中,第一服务器接收数据获取请求时,根据预先保存的该数据存储引擎接口,将数据获取请求发送给数据存储引擎,并接收数据存储引擎根据数据获取请求查找并返回的数据。通过上述方法,用户在获取数据时,不需要远程调用第二服务器,即,第一服务器不再通过第二服务器在对应的数据库中进行查找数据,而是直接访问数据存储引擎,并从数据存储引擎中获取自己所需的数据,这样在整个数据获取的过程中,降低了与第二服务器的交互次数,并且极大的降低了第二服务器的负荷,从而也降低了对第二服务器所提供的其他服务的影响。附图说明此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:图1为
技术介绍
中提供的数据查找过程示意图;图2为本申请实施例提供的数据同步过程;图3为本申请实施例提供的数据库b中存储的更新前的数据示意图;图4为本申请实施例提供的数据库b中存储的更新后的数据示意图;图5为本申请实施例提供的数据存储引擎中存储的数据示意图;图6为本申请实施例提供的数据主键“价格=4RMB”对应的数据示意图;图7为本申请实施例提供的数据主键“作者=雨果”对应的数据示意图;图8为本申请实施例提供的数据主键“作者=雨果以及价格=4RMB”对应的数据示意图;图9为本申请实施例提供的数据同步框架示意图;图10为本申请实施例提供的数据库b中存储的第二次更新后的数据示意图;图11本申请实施例提供的数据主键“作者=雨果以及价格=4RMB”对应的数据示意图;图12为本申请实施例提供的数据获取过程;图13为本申请实施例提供的获取数据的系统结构示意图;图14为本申请实施例提供的数据同步装置结构示意图;图15为本申请实施例提供的数据获取装置结构示意图。具体实施方式为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。为了减少第一服务器在获取数据时与第二服务器交互的次数,本申请实施例中部署第二服务器对应的数据存储引擎,该数据存储引擎直接对外开放接口,由第二服务器将其对应的数据库中的数据同步到数据存储引擎,第一服务器可直接从数据存储引擎中获取数据,而无需调用第二服务器,再通过第二服务器获取数据库中的数据。下面通过图2详细说明第二服务器将数据库中的数据同步到数据存储引擎中的过程。图2为本申请实施例提供的数据同步过程,具体包括以下步骤:S201:在数据库中确定出更新的数据。在本申请实施例中,数据库中的数据通常存在更新的情况(如,将新的数据增加到数据库中、或者在数据库中删除某一数据、或者在数据库中修改某一数据),为了保证数据存储引擎中数据也是最新的,与数据库中的保持一致,因此,如果数据库中的数据出现了更新的情况,则需要将数据库中更新的数据同步到数据存储引擎中,而执行整个数据同步过程是由第二服务器完成的(由于本申请涉及两个不同的服务器,这两个服务器在完成本申请所述方法的过程中所实现的功能也是不同的,因此,在此用第一服务器与第二服务器进行区分,所述第二服务器主要用于数据同步,所本文档来自技高网
...

【技术保护点】
一种数据获取方法,其特征在于,所述方法包括:第一服务器接收数据获取请求;根据预先保存的第二服务器对应的数据存储引擎接口,将所述数据获取请求发送给所述第二服务器对应的数据存储引擎,其中,所述数据存储引擎中存储的数据是从所述第二服务器对应的数据库中同步的;接收所述数据存储引擎根据所述数据获取请求查找并返回的数据。

【技术特征摘要】
1.一种数据获取方法,其特征在于,所述方法包括:第一服务器接收数据获取请求;根据预先保存的第二服务器对应的数据存储引擎接口,将所述数据获取请求发送给所述第二服务器对应的数据存储引擎,其中,所述数据存储引擎中存储的数据是从所述第二服务器对应的数据库中同步的;接收所述数据存储引擎根据所述数据获取请求查找并返回的数据。2.如权利要求1所述的方法,其特征在于,将所述数据获取请求发送给所述第二服务器对应的数据存储引擎,具体包括:根据所述数据获取请求,在预设的缓存中查找相应的数据;在未查找到所述相应的数据时,将所述数据获取请求发送给所述第二服务器对应的数据存储引擎。3.如权利要求2所述的方法,其特征在于,所述方法还包括:将所述数据存储引擎返回的数据写入所述缓存中。4.如权利要求1所述的方法,其特征在于,所述数据存储引擎包括:ldb数据存储引擎。5.一种数据同步的方法,其特征在于,所述方法包括:在数据库中确定出更新的数据;根据更新的数据,确定出所述数据对应的数据属性;在预先保存的各数据主键中,确定出包含所述数据属性的数据主键;根据确定出的数据主键,在数据库中查找确定出的数据主键对应的所有数据;将查找到的所有数据同步到数据存储引擎中。6.如权利要求5所述的方法,其特征在于,在数据库中确定出更新的数据之前,所述方法还包括:当在所述数据库中更新数据时,在更新的数据中添加更新标识符;在数据库中确定出更新的数据,具体包括:在所述数据库中确定添加有所述更新标识符的数据。7.如权利要求6所述的方法,其特征在于,在数据库中确定出更新的数据之后,所述方法还包括:删除所述更新的数据中添加的更新标识符。8.如权利要求5所述的方法,其特征在于,在数据库中确定出更新的数据,具体包括:在数据库中确定出更新后的数据以及所述更新后的数据对应的更新前的数据,作为确定出的更新的数据。9.如权利要求5所述的方法,其特征在于,若未成功将查找到的所有数据同步到数据存储引擎中,所述方法还包括:确定同步失败的数据对应的数据主键;生成携带有同步失败的数据对应的数据主键的同步失败消息;将所述同步失败消息发送给其他数据同步设备,使所述数据同步设备根据所述同步失败消息中携带的数据主键重新进行数据同步。10.一种数据获取装置,其特征在于,所述装置包括:第一接收模...

【专利技术属性】
技术研发人员:季荣姿
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

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

1