CN104506647A - 一种数据存储系统及存储和访问方法 - Google Patents

一种数据存储系统及存储和访问方法 Download PDF

Info

Publication number
CN104506647A
CN104506647A CN201410853974.4A CN201410853974A CN104506647A CN 104506647 A CN104506647 A CN 104506647A CN 201410853974 A CN201410853974 A CN 201410853974A CN 104506647 A CN104506647 A CN 104506647A
Authority
CN
China
Prior art keywords
server
data
target data
anticipation
application 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.)
Granted
Application number
CN201410853974.4A
Other languages
English (en)
Other versions
CN104506647B (zh
Inventor
刘熊
陈赫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN201410853974.4A priority Critical patent/CN104506647B/zh
Publication of CN104506647A publication Critical patent/CN104506647A/zh
Application granted granted Critical
Publication of CN104506647B publication Critical patent/CN104506647B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Abstract

本发明实施例公开了一种数据存储系统及存储和访问方法,一种数据存储系统,包括:应用服务器、源存储服务器、数据缓存服务器、CDN缓存服务器、数据服务器;其中,应用服务器,用于根据存储请求,将目标数据存储到源存储服务器或数据缓存服务器;CDN缓存服务器,用于在存储有目标数据的情况下,返回给用户目标数据;在没有存储目标数据的情况下,将访问请求回源至数据服务器,接收并保存数据服务器返回的目标数据,并返回给用户;数据服务器,用于接收CDN缓存服务器回源的访问请求,从数据缓存服务器或源存储服务器读取目标数据,并返回给CDN缓存服务器。应用本发明实施例所提供的技术方案,可以减小源存储服务器的访问压力。

Description

一种数据存储系统及存储和访问方法
技术领域
本发明涉及互联网技术领域,特别涉及一种数据存储系统及存储和访问方法。
背景技术
随着互联网技术的发展,很多大型网站越来越倾向于使用CDN技术进行网站内容的分发,以提高网站访问速度,提升用户体验。CDN,全称Content DeliveryNetwork,即内容分发网络,通过在互联网各处放置CDN缓存服务器所构成的在现有互联网基础之上的一层智能虚拟网络。
现有的CDN网络的数据存储过程为:网站编辑或者外部用户上传的源数据会经过一定的生产处理过程由应用服务器存储到源存储服务器,并在CDN缓存服务器中存储热数据,当一些数据很久不被访问时,CDN缓存服务器会删除该部分数据以释放存储空间。当CDN缓存服务器接收到用户的访问请求时,如果存储有用户所要访问的数据,则CDN缓存服务器直接将该数据返回给用户;如果没有存储用户所要访问的数据,则CDN缓存服务器会将访问请求回源至数据服务器,以由数据服务器从源存储服务器中读取该数据并返回给CDN缓存服务器,CDN缓存服务器缓存该数据并返回给用户。
根据现有的这种数据存储和访问方法,源存储服务器存储网站全部数据,如果CDN缓存服务器中没有存储用户所要访问的数据,需要从源存储服务器中读取,增加了源存储服务器的访问压力。
发明内容
本发明实施例的目的在于提供一种数据存储系统及存储和访问方法,以降低源存储服务器的访问压力。技术方案如下:
一种数据存储系统,所述数据存储系统包括:应用服务器、源存储服务器、数据缓存服务器、CDN缓存服务器、数据服务器;其中,
所述应用服务器,用于接收针对目标数据的存储请求,根据所述存储请求,将所述目标数据存储到所述源存储服务器,并预判所述目标数据的访问频率,在预判的访问频率满足预设条件时,将所述目标数据存储到所述数据缓存服务器;
所述源存储服务器,用于从所述应用服务器接收并存储所述目标数据;
所述数据缓存服务器,用于从所述应用服务器接收并存储所述目标数据;
所述CDN缓存服务器,用于接收用户针对目标数据的访问请求,在所述CDN缓存服务器中存储有所述目标数据的情况下,返回给所述用户所述目标数据;在所述CDN缓存服务器中没有存储所述目标数据的情况下,将所述访问请求回源至所述数据服务器,接收并保存所述数据服务器返回的所述目标数据,并返回给所述用户所述目标数据;
所述数据服务器,用于接收所述CDN缓存服务器回源的针对所述目标数据的访问请求,预判所述目标数据的访问频率,如果预判的访问频率满足所述预设条件,则从所述数据缓存服务器读取所述目标数据,并返回给所述CDN缓存服务器;否则,从所述源存储服务器读取所述目标数据,并返回给所述CDN缓存服务器。
一种数据存储方法,应用于数据存储系统,包括:
所述应用服务器接收针对目标数据的存储请求;
根据所述存储请求,所述应用服务器将所述目标数据存储到所述源存储服务器;
所述应用服务器预判所述目标数据的访问频率;
在预判的访问频率满足预设条件时,所述应用服务器将所述目标数据存储到所述数据缓存服务器。
在本发明的一种具体实施方式中,所述根据所述存储请求,所述应用服务器将所述目标数据存储到所述源存储服务器,包括:
根据所述存储请求,所述应用服务器对所述目标数据进行编辑处理;
所述应用服务器将进行编辑处理后的目标数据存储到所述源存储服务器;
所述在预判的访问频率满足预设条件时,所述应用服务器将所述目标数据存储到所述数据缓存服务器,包括:
在预判的访问频率满足预设条件时,所述应用服务器将进行编辑处理后的目标数据存储到所述数据缓存服务器。
在本发明的一种具体实施方式中,所述应用服务器预判所述目标数据的访问频率,包括:
所述应用服务器根据所述目标数据的使用场景,预判所述目标数据的访问频率。
在本发明的一种具体实施方式中,在所述目标数据为图片数据的情况下,
所述根据所述存储请求,所述应用服务器将所述目标数据存储到所述源存储服务器,包括:
所述应用服务器计算所述图片数据对应的多尺寸图片需要占用的存储空间与所述图片数据对应的原尺寸图片需要占用的存储空间的差值,其中,所述多尺寸图片为所述图片数据在实际应用中可使用的多个尺寸图片的集合;
如果所述差值大于预设第二阈值,则所述应用服务器将所述图片数据对应的原尺寸图片存储到源存储服务器;
否则,所述应用服务器将所述图片数据对应的多尺寸图片存储到源存储服务器。
在本发明的一种具体实施方式中,在所述目标数据为图片数据的情况下,
所述在预判的访问频率满足预设条件时,所述应用服务器将所述目标数据存储到所述数据缓存服务器,包括:
在预判的访问频率满足预设条件时,所述应用服务器计算所述图片数据对应的多尺寸图片需要占用的存储空间与所述图片数据对应的原尺寸图片需要占用的存储空间的差值,其中,所述多尺寸图片为所述图片数据在实际应用中可使用的多个尺寸图片的集合;
如果所述差值大于预设第二阈值,则所述应用服务器将所述图片数据对应的原尺寸图片存储到数据缓存服务器;
否则,所述应用服务器将所述图片数据对应的多尺寸图片存储到数据缓存服务器。
在本发明的一种具体实施方式中,所述预设条件为不低于预设第一阈值。
一种数据访问方法,应用于数据存储系统,包括:
所述CDN缓存服务器接收用户针对目标数据的访问请求;
在所述CDN缓存服务器中存储有所述目标数据的情况下,返回给所述用户所述目标数据;
在所述CDN缓存服务器中没有存储所述目标数据的情况下,将所述访问请求回源至所述数据服务器;
所述数据服务器接收所述CDN缓存服务器回源的针对所述目标数据的访问请求,并预判所述目标数据的访问频率;
如果预判的访问频率满足预设条件,则所述数据服务器从所述数据缓存服务器读取所述目标数据,并返回给所述CDN缓存服务器;
否则,所述数据服务器从所述源存储服务器读取所述目标数据,并返回给所述CDN缓存服务器;
所述CDN缓存服务器接收并保存所述数据服务器返回的所述目标数据,并返回给所述用户所述目标数据。
在本发明的一种具体实施方式中,所述数据服务器预判所述目标数据的访问频率,包括:
所述数据服务器根据所述目标数据的使用场景,预判所述目标数据的访问频率。
在本发明的一种具体实施方式中,在所述目标数据为图片数据的情况下,在所述数据服务器从所述源存储服务器或所述数据缓存服务器读取所述目标数据的过程中,包括:
如果所述源存储服务器或所述数据缓存服务器中没有存储有与所述访问请求相对应尺寸的图片,则由所述数据服务器触发所述应用服务器根据预设的原图与多尺寸的关系生产与所述访问请求对应尺寸的图片,并存储到所述源存储服务器或所述数据缓存服务器,并由所述数据服务器读取后返回给所述CDN缓存服务器。
在本发明的一种具体实施方式中,所述预设条件为不低于预设第一阈值。
应用本发明实施例所提供的技术方案,通过预判目标数据的访问频率,将预判的访问频率满足预设条件的目标数据存储到数据缓存服务器中,当CDN缓存服务器接收到用户的访问请求,且其自身没有存储用户所要访问的数据时,可以通过数据服务器到数据缓存服务器中读取数据,缓存并返回给用户,经过CDN缓存服务器和数据缓存服务器两级缓存,会提高目标数据的命中率,在很多情况下不需要再到源存储服务器中读取数据,可以减小源存储服务器的访问压力。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中一种数据存储系统的结构示意图;
图2为本发明实施例中一种数据存储方法的实施流程图;
图3为本发明实施例中一种数据访问方法的实施流程图。
具体实施方式
为了使本领域技术人员更好地理解本发明实施例中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1所示,为本发明实施例提供的一种数据存储系统的结构示意图,该数据存储系统包括:应用服务器110、源存储服务器120、数据缓存服务器130、CDN缓存服务器140、数据服务器150;其中,
应用服务器110,用于接收针对目标数据的存储请求,根据存储请求,将目标数据存储到源存储服务器120,并预判目标数据的访问频率,在预判的访问频率满足预设条件时,将目标数据存储到数据缓存服务器130;
源存储服务器120,用于从应用服务器110接收并存储目标数据;
数据缓存服务器130,用于从应用服务器110接收并存储目标数据;
CDN缓存服务器140,用于接收用户针对目标数据的访问请求,在CDN缓存服务器140中存储有目标数据的情况下,返回给用户目标数据;在CDN缓存服务器140中没有存储目标数据的情况下,将访问请求回源至数据服务器150,接收并保存数据服务器150返回的目标数据,并返回给用户目标数据;
数据服务器150,用于接收CDN缓存服务器140回源的针对目标数据的访问请求,预判目标数据的访问频率,如果预判的访问频率满足预设条件,则从数据缓存服务器130读取目标数据,并返回给CDN缓存服务器140;否则,从源存储服务器120读取目标数据,并返回给CDN缓存服务器140。
在该数据存储系统中,具有存储逻辑和访问逻辑,对于存储逻辑来说,应用服务器110将目标数据存储到源存储服务器120中,并预判目标数据的访问频率,将预判的访问频率满足预设条件的目标数据存储到数据缓存服务器130中;对于访问逻辑来说,CDN缓存服务器140接收到用户针对目标数据的访问请求时,如果其自身存储有目标数据,则直接将目标数据返回给用户,如果其自身没有存储目标数据,则将访问请求回源至数据服务器150,数据服务器150预判目标数据的访问频率,如果预判的访问频率满足所述预设条件,则从数据缓存服务器130读取目标数据,并返回给CDN缓存服务器140,否则,从源存储服务器120读取目标数据,并返回给CDN缓存服务器140,CDN缓存服务器140接收到数据服务器150返回的目标数据后,保存该目标数据并返回给用户。
需要说明的是,应用服务器110接收针对目标数据的存储请求,目标数据可以是网站编辑上传的数据,还可以是网站用户上传的数据。在实际应用中,网站编辑或网站用户上传的数据可以称之为数据素材,如图片素材、视频素材等,这些数据素材有些经过一系列编辑处理过程才能生成供用户浏览访问的数据,应用服务器110可以针对作为数据素材的目标数据进行相应的编辑处理,并将编辑处理后的目标数据存储到源存储服务器120或数据缓存服务器130。
应用本发明实施例所提供的数据存储系统,通过预判目标数据的访问频率,将预判的访问频率满足预设条件的目标数据存储到数据缓存服务器130中,当CDN缓存服务器140接收到用户的访问请求,且其自身没有存储用户所要访问的数据时,可以通过数据服务器150到数据缓存服务器130中读取数据,缓存并返回给用户,经过CDN缓存服务器140和数据缓存服务器130两级缓存,会提高目标数据的命中率,在很多情况下不需要再到源存储服务器120中读取数据,可以减小源存储服务器120的访问压力。
参见图2所示,为本发明实施例提供一种数据存储方法的实施流程图,应用于图1所示的数据存储系统,该方法可以包括以下步骤:
S210:应用服务器110接收针对目标数据的存储请求;
目标数据,可以是网站编辑上传的数据,还可以是网站用户上传的数据。在实际应用中,网站编辑或网站用户上传的数据可以称之为数据素材,如图片素材、视频素材等,这些数据素材有的可以直接供用户浏览访问,有的需要经过一系列编辑处理过程才能生成供用户浏览访问的数据。
存储请求的请求参数可以包括目标数据内容、目标数据的处理方式、不同处理方式对应的相关参数等信息。比如,当目标数据是图片数据时,目标数据内容可以是图片文件内容,还可以是可通过HTTP下载得到的图片;目标数据的处理方式可以包括对图片的缩放、中心裁剪、坐标裁剪等处理方式;对于图片的缩放处理,需要缩放后的图片尺寸参数,对于图片的中心裁剪处理,需要裁剪后的图片尺寸参数,对于图片的坐标裁剪处理,需要相对于该图片的左上角和右下角的坐标参数。
应用服务器110接收到针对目标数据的存储请求后,可以继续执行步骤S220及步骤S230的操作。
S220:根据所述存储请求,应用服务器110将所述目标数据存储到源存储服务器120;
在步骤S210应用服务器110接收到针对目标数据的存储请求,根据该存储请求,应用服务器110可以根据预先设置的命名规则为目标数据生成在该数据存储系统中的唯一文件名,并将目标数据存储到源存储服务器120中。
在实际应用中,应用服务器110接收到针对目标数据的存储请求之后,根据存储请求,可以先对请求参数做合法性验证,如果验证通过,则根据请求参数对目标数据进行编辑处理,并将进行编辑处理后的目标数据存储到源存储服务器120,如果验证不通过,则返回给存储请求发送者错误提示信息。
在本发明的一种实施例中,在所述目标数据为图片数据的情况下,该步骤可以包括以下步骤:
步骤一:应用服务器110计算所述图片数据对应的多尺寸图片需要占用的存储空间与所述图片数据对应的原尺寸图片需要占用的存储空间的差值,其中,所述多尺寸图片为所述图片数据在实际应用中可使用的多个尺寸图片的集合;
步骤二:如果所述差值大于预设第二阈值,则应用服务器110将所述图片数据对应的原尺寸图片存储到源存储服务器120;
步骤三:如果所述差值不大于预设第二阈值,则应用服务器110将所述图片数据对应的多尺寸图片存储到源存储服务器120。
为方便理解,将上述三个步骤结合起来进行说明。在实际应用中,相同内容的图片在不同的应用场景下可能需要不同的尺寸,如,某一图片应用于某一场景下,需要的尺寸长宽比例为16:9,应用于另一场景下,需要的该图片的尺寸长宽比例为9:16。对于一个图片数据来说,计算该图片数据对应的多尺寸图片需要占用的存储空间与该图片数据对应的原尺寸图片需要占用的存储空间的差值,如果该差值大于预设第二阈值,表明该图片数据对应的多尺寸图片需要占用的存储空间要远大于该图片数据对应的原尺寸图片需要占用的存储空间,为节省存储开销,应用服务器110直接将该图片数据对应的原尺寸图片存储到源存储服务器120,否则,将该图片数据对应的多尺寸图片存储到源存储服务器120。即使用“原图与多尺寸取小”的原则对图片数据进行相应存储。
S230:应用服务器110预判所述目标数据的访问频率;
在本发明的一种具体实施方式中,应用服务器110可以根据目标数据的使用场景,预判该目标数据的访问频率。
在实际应用中,有些数据会经常被访问,如,用户头像类的图片数据,只要用户以用户名方式登录到网站,其头像图片就会被访问。根据目标数据的实际使用场景,预判目标数据的访问频率,如对于用户头像类的图片数据,预判其访问频率为0.8,访问频率越高,说明其可能被访问的几率越大。当然,可以根据实际情况,预判目标数据的访问频率,访问频率的取值可以是不大于1的小数,还可以是大于0的整数。
S240:在预判的访问频率满足预设条件时,应用服务器110将所述目标数据存储到数据缓存服务器130。
步骤S230应用服务器110预判目标数据的访问频率后,如果预判的访问频率满足预设条件,则应用服务器110可以将目标数据存储到数据缓存服务器130。当然,对于需要进行编辑处理的目标数据来说,应用服务器110可以将进行编辑处理后的目标数据存储到数据缓存服务器130。
在本发明的一种具体实施方式中,预设条件可以是不低于预设的第一阈值,即在预判的访问频率不低于预设的第一阈值的情况下,应用服务器110将目标数据存储到数据缓存服务器130中,这里,第一阈值可以根据实际情况进行设置,如预判的访问频率为不大于1的小数,第一阈值可以设置为0.6,或者,预判的访问频率为大于0的整数,第一阈值可以按照量级进行设定。
在实际应用中,当目标数据为图片数据时,数据缓存服务器130可以使用GridFS系统。GridFS建立在MongoDB基础之上,而MongoDB集群运维管理简便,其副本集特性能保证高可用,其自动水平分区特性又能满足容量增长的需要。
在本发明的一个实施例中,在所述目标数据为图片数据的情况下,该步骤可以包括以下步骤:
第一个步骤:在预判的访问频率满足预设条件时,应用服务器110计算所述图片数据对应的多尺寸图片需要占用的存储空间与所述图片数据对应的原尺寸图片需要占用的存储空间的差值,其中,所述多尺寸图片为所述图片数据在实际应用中可使用的多个尺寸图片的集合;
第二个步骤:如果所述差值大于预设第二阈值,则应用服务器110将所述图片数据对应的原尺寸图片存储到数据缓存服务器130;
第三个步骤:如果所述差值不大于预设第二阈值,则应用服务器110将所述图片数据对应的多尺寸图片存储到数据缓存服务器130。
为方便理解,将上述三个步骤结合起来进行说明。在实际应用中,相同内容的图片在不同的应用场景下可能需要不同的尺寸,如,某一图片应用于某一场景下,需要的尺寸长宽比例为16:9,应用于另一场景下,需要的该图片的尺寸长宽比例为9:16。对于一个图片数据来说,计算该图片数据对应的多尺寸图片需要占用的存储空间与该图片数据对应的原尺寸图片需要占用的存储空间的差值,如果该差值大于预设第二阈值,表明该图片数据对应的多尺寸图片需要占用的存储空间要远大于该图片数据对应的原尺寸图片需要占用的存储空间,为节省存储开销,应用服务器110直接将该图片数据对应的原尺寸图片存储到数据缓存服务器130,否则,将该图片数据对应的多尺寸图片存储到数据缓存服务器130。即使用“原图与多尺寸取小”的原则对图片数据进行相应存储。这里的存储原则与应用服务器110将目标数据存储到源存储服务器120中的存储原则相同。
需要说明的是,本发明实施例对步骤S220和步骤S230的执行顺序不做限制,执行步骤S210之后,可以先执行步骤S220,还可以先执行步骤S230,或者步骤S220和步骤S230同时执行。
参见图3所示,为本发明实施例提供了一种数据访问方法的实施流程图,该方法应用于图1所示的数据存储系统,可以包括以下步骤:
S310:CDN缓存服务器140接收用户针对目标数据的访问请求;
在实际应用中,当CDN缓存服务器140中的数据长时间不被用户访问时,会被删除,也就是说CDN缓存服务器140中只存储热数据。当接收到用户通过用户终端发送的针对目标数据的访问请求时,CDN缓存服务器140先查看自身是否存储有目标数据,如果有,则执行步骤S320的操作,否则,执行步骤S330的操作。
S320:CDN缓存服务器140中存储有目标数据,将目标数据返回给用户;
在步骤S310CDN缓存服务器140接收到用户针对目标数据的访问请求后,如果其自身存储有目标数据,则将目标数据直接返回给用户。
S330:CDN缓存服务器140中没有存储目标数据,将所述访问请求回源至数据服务器150;
在步骤S310CDN缓存服务器140接收到用户针对目标数据的访问请求后,如果其自身没有存储目标数据,则将访问请求回源至数据服务器150,以由数据服务器150进行下一步的操作。
S340:数据服务器150接收CDN缓存服务器140回源的针对目标数据的访问请求,并预判目标数据的访问频率;
数据服务器150预判目标数据的访问频率的方法可以参考应用服务器110预判目标数据的访问频率的方法。在本发明的一种具体实施方式中,数据服务器150可以根据目标数据的使用场景,预判该目标数据的访问频率。
S350:如果预判的访问频率满足预设条件,则数据服务器150从数据缓存服务器130读取目标数据;
S360:如果预判的访问频率不满足预设条件,则数据服务器150从源存储服务器120读取目标数据;
根据步骤S340预判的目标数据的访问频率,确定目标数据的实际存储位置,如果预判的访问频率满足预设条件,则可以确认目标数据存储于数据缓存服务器130中,否则,可以确认目标数据存储于源存储服务器120中。在本发明实施例提供的数据存储方法中,对于目标数据的存储,根据同样的方法进行预判,并将目标数据对应存储于数据缓存服务器130或源存储服务器120中,相应于数据存储方法,在对目标数据进行访问时,通过同样方法可以确定的目标数据的实际存储位置,从而进行目标数据的读取。同样,预设条件可以是不低于预设第一阈值。
S370:将读取到的目标数据返回给CDN缓存服务器140;
数据服务器150从源存储服务器120或数据缓存服务器130读取到目标数据后,将读取到的目标数据返回给CDN缓存服务器140。
S380:CDN缓存服务器140接收并保存数据服务器150返回的目标数据,并返回给用户。
CDN缓存服务器140接收到数据服务器150返回的目标数据后,在本地保存并返回给用户。当再有用户针对该目标数据的访问请求时,CDN缓存服务器140可以直接将其自身存储的目标数据返回给用户,提高访问速度。
在本发明的一个实施例中,在所述目标数据为图片数据的情况下,在数据服务器150从源存储服务器120或数据缓存服务器130读取目标数据的过程中,可以包括以下步骤:
如果源存储服务器120或数据缓存服务器130中没有存储有与所述访问请求相对应尺寸的图片,则由数据服务器150触发应用服务器110根据预设的原图与多尺寸的关系生产与所述访问请求对应尺寸的图片,并存储到源存储服务器120或数据缓存服务器130,并由数据服务器150读取后返回给CDN缓存服务器140。
在数据存储系统中,当使用“原图与多尺寸取小”的原则进行图片数据的存储时,会相应的设置原图与多尺寸的对应关系,在访问过程中,如果没有与访问请求对应尺寸的图片,则应用服务器110会根据预先设置的原图与多尺寸的关系生产出与访问请求对应尺寸的图片。即通过服务器的计算能力分担了源存储服务器和数据缓存服务器的存储压力。
应用本发明实施例所提供的技术方案,通过预判目标数据的访问频率,将预判的访问频率满足预设条件的目标数据存储到数据缓存服务器130中,当CDN缓存服务器140接收到用户的访问请求,且其自身没有存储用户所要访问的数据时,可以通过数据服务器150到数据缓存服务器130中读取数据,缓存并返回给用户,经过CDN缓存服务器140和数据缓存服务器130两级缓存,会提高目标数据的命中率,在很多情况下不需要再到源存储服务器120中读取数据,可以减小源存储服务器120的访问压力。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:ROM/RAM、磁碟、光盘等。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (11)

1.一种数据存储系统,其特征在于,所述数据存储系统包括:应用服务器、源存储服务器、数据缓存服务器、CDN缓存服务器、数据服务器;其中,
所述应用服务器,用于接收针对目标数据的存储请求,根据所述存储请求,将所述目标数据存储到所述源存储服务器,并预判所述目标数据的访问频率,在预判的访问频率满足预设条件时,将所述目标数据存储到所述数据缓存服务器;
所述源存储服务器,用于从所述应用服务器接收并存储所述目标数据;
所述数据缓存服务器,用于从所述应用服务器接收并存储所述目标数据;
所述CDN缓存服务器,用于接收用户针对目标数据的访问请求,在所述CDN缓存服务器中存储有所述目标数据的情况下,返回给所述用户所述目标数据;在所述CDN缓存服务器中没有存储所述目标数据的情况下,将所述访问请求回源至所述数据服务器,接收并保存所述数据服务器返回的所述目标数据,并返回给所述用户所述目标数据;
所述数据服务器,用于接收所述CDN缓存服务器回源的针对所述目标数据的访问请求,预判所述目标数据的访问频率,如果预判的访问频率满足所述预设条件,则从所述数据缓存服务器读取所述目标数据,并返回给所述CDN缓存服务器;否则,从所述源存储服务器读取所述目标数据,并返回给所述CDN缓存服务器。
2.一种数据存储方法,其特征在于,应用于权利要求1中的数据存储系统,包括:
所述应用服务器接收针对目标数据的存储请求;
根据所述存储请求,所述应用服务器将所述目标数据存储到所述源存储服务器;
所述应用服务器预判所述目标数据的访问频率;
在预判的访问频率满足预设条件时,所述应用服务器将所述目标数据存储到所述数据缓存服务器。
3.根据权利要求2所述的方法,其特征在于,所述根据所述存储请求,所述应用服务器将所述目标数据存储到所述源存储服务器,包括:
根据所述存储请求,所述应用服务器对所述目标数据进行编辑处理;
所述应用服务器将进行编辑处理后的目标数据存储到所述源存储服务器;
所述在预判的访问频率满足预设条件时,所述应用服务器将所述目标数据存储到所述数据缓存服务器,包括:
在预判的访问频率满足预设条件时,所述应用服务器将进行编辑处理后的目标数据存储到所述数据缓存服务器。
4.根据权利要求2所述的方法,其特征在于,所述应用服务器预判所述目标数据的访问频率,包括:
所述应用服务器根据所述目标数据的使用场景,预判所述目标数据的访问频率。
5.根据权利要求2所述的方法,其特征在于,在所述目标数据为图片数据的情况下,
所述根据所述存储请求,所述应用服务器将所述目标数据存储到所述源存储服务器,包括:
所述应用服务器计算所述图片数据对应的多尺寸图片需要占用的存储空间与所述图片数据对应的原尺寸图片需要占用的存储空间的差值,其中,所述多尺寸图片为所述图片数据在实际应用中可使用的多个尺寸图片的集合;
如果所述差值大于预设第二阈值,则所述应用服务器将所述图片数据对应的原尺寸图片存储到源存储服务器;
否则,所述应用服务器将所述图片数据对应的多尺寸图片存储到源存储服务器。
6.根据权利要求2所述的方法,其特征在于,在所述目标数据为图片数据的情况下,
所述在预判的访问频率满足预设条件时,所述应用服务器将所述目标数据存储到所述数据缓存服务器,包括:
在预判的访问频率满足预设条件时,所述应用服务器计算所述图片数据对应的多尺寸图片需要占用的存储空间与所述图片数据对应的原尺寸图片需要占用的存储空间的差值,其中,所述多尺寸图片为所述图片数据在实际应用中可使用的多个尺寸图片的集合;
如果所述差值大于预设第二阈值,则所述应用服务器将所述图片数据对应的原尺寸图片存储到数据缓存服务器;
否则,所述应用服务器将所述图片数据对应的多尺寸图片存储到数据缓存服务器。
7.根据权利要求2至6任一项所述的方法,其特征在于,所述预设条件为不低于预设第一阈值。
8.一种数据访问方法,其特征在于,应用于权利要求1中的数据存储系统,包括:
所述CDN缓存服务器接收用户针对目标数据的访问请求;
在所述CDN缓存服务器中存储有所述目标数据的情况下,返回给所述用户所述目标数据;
在所述CDN缓存服务器中没有存储所述目标数据的情况下,将所述访问请求回源至所述数据服务器;
所述数据服务器接收所述CDN缓存服务器回源的针对所述目标数据的访问请求,并预判所述目标数据的访问频率;
如果预判的访问频率满足预设条件,则所述数据服务器从所述数据缓存服务器读取所述目标数据,并返回给所述CDN缓存服务器;
否则,所述数据服务器从所述源存储服务器读取所述目标数据,并返回给所述CDN缓存服务器;
所述CDN缓存服务器接收并保存所述数据服务器返回的所述目标数据,并返回给所述用户所述目标数据。
9.根据权利要求8所述的方法,其特征在于,所述数据服务器预判所述目标数据的访问频率,包括:
所述数据服务器根据所述目标数据的使用场景,预判所述目标数据的访问频率。
10.根据权利要求8所述的方法,其特征在于,在所述目标数据为图片数据的情况下,在所述数据服务器从所述源存储服务器或所述数据缓存服务器读取所述目标数据的过程中,包括:
如果所述源存储服务器或所述数据缓存服务器中没有存储有与所述访问请求相对应尺寸的图片,则由所述数据服务器触发所述应用服务器根据预设的原图与多尺寸的关系生产与所述访问请求对应尺寸的图片,并存储到所述源存储服务器或所述数据缓存服务器,并由所述数据服务器读取后返回给所述CDN缓存服务器。
11.根据权利要求8至10任一项所述的方法,其特征在于,所述预设条件为不低于预设第一阈值。
CN201410853974.4A 2014-12-31 2014-12-31 一种数据存储系统及存储和访问方法 Active CN104506647B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410853974.4A CN104506647B (zh) 2014-12-31 2014-12-31 一种数据存储系统及存储和访问方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410853974.4A CN104506647B (zh) 2014-12-31 2014-12-31 一种数据存储系统及存储和访问方法

Publications (2)

Publication Number Publication Date
CN104506647A true CN104506647A (zh) 2015-04-08
CN104506647B CN104506647B (zh) 2017-12-08

Family

ID=52948362

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410853974.4A Active CN104506647B (zh) 2014-12-31 2014-12-31 一种数据存储系统及存储和访问方法

Country Status (1)

Country Link
CN (1) CN104506647B (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105450780A (zh) * 2015-12-31 2016-03-30 深圳市网心科技有限公司 一种cdn系统及其回源方法
CN105867846A (zh) * 2016-03-28 2016-08-17 联想(北京)有限公司 一种数据处理方法、服务器及系统
CN106487936A (zh) * 2016-12-29 2017-03-08 深圳市优必选科技有限公司 数据传输方法及设备、分布式存储系统
CN106656674A (zh) * 2016-12-29 2017-05-10 北京爱奇艺科技有限公司 一种数据回源的调度方法及装置
CN107154013A (zh) * 2016-03-02 2017-09-12 阿里巴巴集团控股有限公司 用于图像处理的附加卡、内容递送网络服务器及执行方法
CN107172447A (zh) * 2017-05-31 2017-09-15 成都博视美达文化传播有限公司 数据加载方法及装置
CN107426302A (zh) * 2017-06-26 2017-12-01 腾讯科技(深圳)有限公司 访问调度方法、装置、系统、终端、服务器及存储介质
CN107633014A (zh) * 2017-08-17 2018-01-26 深圳市诚壹科技有限公司 一种数据存储方法及服务器
CN108427703A (zh) * 2017-02-15 2018-08-21 谷歌有限责任公司 提供对存储在数据存储系统的数据文件访问的系统和方法
CN109873855A (zh) * 2018-04-13 2019-06-11 贵州白山云科技股份有限公司 一种基于区块链网络的资源获取方法和系统
CN110545453A (zh) * 2018-05-29 2019-12-06 阿里巴巴集团控股有限公司 内容分发网络的内容发布方法、装置和系统
CN111107118A (zh) * 2018-10-26 2020-05-05 北京金山云网络技术有限公司 一种图片访问加速方法、装置、设备、系统及存储介质
CN111277848A (zh) * 2020-01-22 2020-06-12 北京字节跳动网络技术有限公司 直播间互动消息的处理方法、装置、电子设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101355476A (zh) * 2008-05-23 2009-01-28 林云帆 一种基于服务器群集的数据文件存储、分发和应用的系统和方法
US7653706B2 (en) * 2000-07-19 2010-01-26 Akamai Technologies, Inc. Dynamic image delivery system
CN101645922A (zh) * 2009-04-17 2010-02-10 中国科学院声学研究所 基于地理位置信息编码的cdn网络系统及分发处理方法
CN102137006A (zh) * 2010-12-31 2011-07-27 华为技术有限公司 Cdn网络中的数据传输方法及设备
CN102377748A (zh) * 2010-08-16 2012-03-14 中兴通讯股份有限公司 内容交付网络及内容交付方法
US20120198020A1 (en) * 2011-02-02 2012-08-02 Verizon Patent And Licensing, Inc. Content distribution within a service provider network
CN103348691A (zh) * 2011-11-29 2013-10-09 华为技术有限公司 分发直播内容的方法、设备和系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7653706B2 (en) * 2000-07-19 2010-01-26 Akamai Technologies, Inc. Dynamic image delivery system
CN101355476A (zh) * 2008-05-23 2009-01-28 林云帆 一种基于服务器群集的数据文件存储、分发和应用的系统和方法
CN101645922A (zh) * 2009-04-17 2010-02-10 中国科学院声学研究所 基于地理位置信息编码的cdn网络系统及分发处理方法
CN102377748A (zh) * 2010-08-16 2012-03-14 中兴通讯股份有限公司 内容交付网络及内容交付方法
CN102137006A (zh) * 2010-12-31 2011-07-27 华为技术有限公司 Cdn网络中的数据传输方法及设备
US20120198020A1 (en) * 2011-02-02 2012-08-02 Verizon Patent And Licensing, Inc. Content distribution within a service provider network
CN103348691A (zh) * 2011-11-29 2013-10-09 华为技术有限公司 分发直播内容的方法、设备和系统

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105450780A (zh) * 2015-12-31 2016-03-30 深圳市网心科技有限公司 一种cdn系统及其回源方法
CN105450780B (zh) * 2015-12-31 2019-01-18 深圳市网心科技有限公司 一种cdn系统及其回源方法
CN107154013A (zh) * 2016-03-02 2017-09-12 阿里巴巴集团控股有限公司 用于图像处理的附加卡、内容递送网络服务器及执行方法
CN105867846A (zh) * 2016-03-28 2016-08-17 联想(北京)有限公司 一种数据处理方法、服务器及系统
CN106656674A (zh) * 2016-12-29 2017-05-10 北京爱奇艺科技有限公司 一种数据回源的调度方法及装置
CN106487936A (zh) * 2016-12-29 2017-03-08 深圳市优必选科技有限公司 数据传输方法及设备、分布式存储系统
CN108427703A (zh) * 2017-02-15 2018-08-21 谷歌有限责任公司 提供对存储在数据存储系统的数据文件访问的系统和方法
US11232080B2 (en) 2017-02-15 2022-01-25 Google Llc Systems and methods for providing access to a data file stored at a data storage system
CN107172447A (zh) * 2017-05-31 2017-09-15 成都博视美达文化传播有限公司 数据加载方法及装置
CN107172447B (zh) * 2017-05-31 2019-12-27 成都博视美达文化传播有限公司 数据加载方法及装置
CN107426302A (zh) * 2017-06-26 2017-12-01 腾讯科技(深圳)有限公司 访问调度方法、装置、系统、终端、服务器及存储介质
CN107426302B (zh) * 2017-06-26 2020-06-05 腾讯科技(深圳)有限公司 访问调度方法、装置、系统、终端、服务器及存储介质
CN107633014A (zh) * 2017-08-17 2018-01-26 深圳市诚壹科技有限公司 一种数据存储方法及服务器
CN109873855A (zh) * 2018-04-13 2019-06-11 贵州白山云科技股份有限公司 一种基于区块链网络的资源获取方法和系统
CN109873855B (zh) * 2018-04-13 2022-01-25 贵州白山云科技股份有限公司 一种基于区块链网络的资源获取方法和系统
CN110545453A (zh) * 2018-05-29 2019-12-06 阿里巴巴集团控股有限公司 内容分发网络的内容发布方法、装置和系统
CN111107118A (zh) * 2018-10-26 2020-05-05 北京金山云网络技术有限公司 一种图片访问加速方法、装置、设备、系统及存储介质
CN111107118B (zh) * 2018-10-26 2023-04-18 北京金山云网络技术有限公司 一种图片访问加速方法、装置、设备、系统及存储介质
CN111277848A (zh) * 2020-01-22 2020-06-12 北京字节跳动网络技术有限公司 直播间互动消息的处理方法、装置、电子设备及存储介质
CN111277848B (zh) * 2020-01-22 2021-04-09 北京字节跳动网络技术有限公司 直播间互动消息的处理方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN104506647B (zh) 2017-12-08

Similar Documents

Publication Publication Date Title
CN104506647A (zh) 一种数据存储系统及存储和访问方法
CN112233217B (zh) 一种虚拟场景的渲染方法和装置
US10034031B2 (en) Generating a single content entity to manage multiple bitrate encodings for multiple content consumption platforms
CN107562915A (zh) 读取小文件的方法、装置和设备及计算机可读存储介质
CN107436725A (zh) 一种数据写、读方法、装置及分布式对象存储集群
CN105159604A (zh) 一种磁盘数据读写方法和系统
CN108197324B (zh) 用于存储数据的方法和装置
CN108184170B (zh) 一种数据处理方法及装置
CN104238962A (zh) 向缓存中写入数据的方法及装置
CN105117351A (zh) 向缓存写入数据的方法及装置
CN103279521A (zh) 一种基于Hadoop的视频大数据分布式解码方法
CN105550246A (zh) Android平台下加载网络图片的系统及方法
CN105677904A (zh) 基于分布式文件系统的小文件存储方法及装置
CN105653209A (zh) 一种对象存储数据传输方法及装置
CN105630779A (zh) 一种基于分布式文件系统的小文件存储方法和装置
CN105094924A (zh) 镜像文件的导入方法及装置
US10579229B2 (en) Customizable media player framework
CN103198073A (zh) 图片处理方法及系统
CN113901395B (zh) 数据处理方法、装置、计算机设备和存储介质
CN111275495A (zh) 基于区块链的广告投放监测方法、装置及系统
CN104408178A (zh) Web控件加载装置和方法
CN105320669A (zh) 数据存储、读取方法及数据存储、读取装置
CN103678535A (zh) 浏览器进行下载的方法和浏览器
CN104883478A (zh) 视频处理方法及装置
CN104616354A (zh) 一种三维gis快速加载空间数据的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant