CN104298475B - 一种数据存储的优化方法 - Google Patents

一种数据存储的优化方法 Download PDF

Info

Publication number
CN104298475B
CN104298475B CN201410538144.2A CN201410538144A CN104298475B CN 104298475 B CN104298475 B CN 104298475B CN 201410538144 A CN201410538144 A CN 201410538144A CN 104298475 B CN104298475 B CN 104298475B
Authority
CN
China
Prior art keywords
data
response time
access times
grade
total
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
Application number
CN201410538144.2A
Other languages
English (en)
Other versions
CN104298475A (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.)
Alibaba China Co Ltd
Youku Network Technology Beijing Co Ltd
Original Assignee
1Verge Internet Technology Beijing 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 1Verge Internet Technology Beijing Co Ltd filed Critical 1Verge Internet Technology Beijing Co Ltd
Priority to CN201410538144.2A priority Critical patent/CN104298475B/zh
Publication of CN104298475A publication Critical patent/CN104298475A/zh
Application granted granted Critical
Publication of CN104298475B publication Critical patent/CN104298475B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools

Abstract

一种数据存储的优化方法,按照响应时间从短到长,单位存储成本从高到低,将存储分为了若干级,对于第i级存储,ri表示在该级存储中的响应时间,ci表示该级存储的单位存储的成本,ni表示该级存储的存储容量,Ni表示所述第i级中ni个数据的总访问次数,多级存储和每一级存储中按照访问次数对数据进行按序存储,可以得到平均响应时间和总存储成本的计算公式,利用上述公式作为约束条件,求得最优解,可以优化平均响应时间或总存储成本。本发明使得数据存储在合适的存储上,以平衡数据访问的平均响应时长与总的存储成本,满足业务需求。

Description

一种数据存储的优化方法
技术领域
本申请涉及大数据存储领域,特别的,涉及一种数据存储的优化方法,以及一种对数据进行存储的方法。
背景技术
随着互联网技术的发展,网络所使用的数据越来越多。如何对数据进行保存,特别是,如何对海量数据进行保存成为现有技术亟需解决的问题。
目前按照存储的访问方式或者访问存储的响应时长可以将存储分成若干级,比如内存级,响应时长最短,但是单位存储成本最高;memcache集群,响应时长较短,单位存储成本较高;hbase集群,将数据持久化在硬盘上,响应时长较长,单位存储成本较低,等等。
如上所述,互联网服务,例如设计在线接口服务时,通常面临存储数据量大的问题,需要为数据选择合适的存储方式,以求平均响应时长能满足业务需求同时总的存储成本最低,或者在存储成本有限的时,平均响应时长最低。大数据存储通常需要规划多级存储来满足业务需求,将访问频率高的数据存储在成本高响应时长短的存储上,访问频率相对较低的存储在成本较高响应时长较短的存储上,访问频率最低的数据存储在成本最低但是响应时长最大的存储上。
例如:某视频网站有超过数亿的视频资源,在设计根据视频ID获取视频相关信息这个服务时面临着如何优化多级存储的问题,如果选择三级存储,可以将过去一天或者一周内访问次数最高的一部分视频相关信息放在内存;访问次数较高的一部分视频相关信息存储在memcache集群;访问次数相对较低的存储在hbase集群。但是,如何合理选择每部分的比例以达到平均响应时长与总的存储成本的最优化,或者说,如何对数据存储进行优化,以用于降低数据的平均响应时间,进一步的,达到降低数据存储成本,成为现有技术亟需解决的技术问题。
发明内容
本发明的目的在于提出一种数据存储的优化方法,以及利用该优化结果对数据进行存储的方法,通过该方法,可以降低数据的平均响应时间,进一步的,达到降低数据存储成本。
为达此目的,本发明采用以下技术方案:
一种数据存储的优化方法,按照响应时间从短到长,单位存储成本从高到低,将存储分为了若干级,对于第一级存储,r1是响应时间,n1是存储的数据量,N1为第一级的n1个数据的总访问次数,对于第i级存储,ri表示在该级存储中的响应时间,ci表示该级存储的单位存储的成本,ni表示该级存储的存储容量,Ni表示所述第i级中ni个数据的总访问次数,多级存储中按照访问次数对数据进行按序存储,将访问次数较高的数据按顺序放在访问响应时长较短的存储,在每一级存储中也按照访问次数高低进行排序,将访问次数高的数据放在前面,可以得到如下公式:
平均响应时间 r ‾ = ( N 1 * r 1 + N 2 * ( r 2 + r 1 ) + N 3 * ( r 1 + r 2 + r 3 ) + ... + N i * ( r 1 + r 2 + ... + r i ) ) / N = f ( n ) 公式(1)
总存储成本C=n1*c1+n2*c2+…+ni*ci=g(n)公式(2)
N表示所有数据的总访问次数,
利用公式(1)和公式(2)作为约束条件,求得最优解,可以优化平均响应时间或总存储成本。
优选地,当平均响应时长上限限定时,可求得一组ni最优解,使得g(n)最小,即总存储成本最小。
优选地,当总存储成本上限限定时,可求得一组ni最优解,使得f(n)最小,即平均响应时长最小。
优选地,在对公式最优化求解时,可以采用线搜索全局或动态规划的计算方法来求出最优解。
本发明还公开了一种对数据进行存储的方法,其特征在于,利用上述的优化结果,对数据进行存储。
因此,本发明在选择多级存储时,基于数据的历史访问规律,建立访问响应时间和存储成本的表达公式,并进行优化,使得数据存储在合适的存储上,以平衡数据访问的平均响应时长与总的存储成本,满足业务需求。
附图说明
图1是根据本发明的多级数据存储的示意图;
图2是根据本发明的数据访问次数与多级数据存储的关系图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
在现有技术中,通常单位容量的存储成本与响应时间成反比,也就是说单位存储成本越大,响应时间越小;单位存储成本越小,响应时长越大。比如内存与硬盘,内存单位存储成本高,但响应时长短,硬盘单位存储成本低,但响应时长长。
大数据存储中通常采用多级存储的方式,参见图1,示出了根据本发明的多级数据存储的示意图。其中第一级存储通常存储访问最频繁的数据,此时,响应时间最短,单位存储成本最高,二级存储,响应时长较短,单位存储成本较高,以此类推。
本发明的数据存储的优化方法,将存储单元按照响应时间从短到长,单位存储成本从高到低,将存储分为了若干级,对于第一级存储,r1是响应时间,n1是存储的数据量,n1个数据的总访问次数N1,对于第i级存储,ri表示在该级存储中的响应时间,ci表示该级存储的单位存储的成本,ni表示该级存储的存储容量,Ni表示所述第i级中ni个数据的总访问次数。显然,Ni所表示总访问次数,应当是这ni个数据的访问次数之和。
分析过去一段时间内数据的访问规律,内容按照访问次数由高到低排序,访问次数最多的数据编号为1,第二多的编号为2,…编号为k的数据总访问次数为fk,依次类推.如图2所示,横坐标为数据编号,纵坐标为访问次数。将访问次数高的数据按顺序放在访问响应时长短的存储,将访问次数较高的数据按顺序放在访问响应时长较短的存储,在每一级存储中也按照访问次数高低进行排序,将访问次数高的数据放在前面,依次类推。具体而言,将编号在1-n1的数据存储在第一级存储,编号为的数据存储在第i级存储。横坐标为每个数据的编号,编号已经按照数据的访问次数排序,编号为1的数据访问次数最多,编号为i个数据访问次数第i-1多;纵坐标Y为访问次数。每个数据的总访问次数可以通过经验得到。或者,对于某些已有待存储数据,存在着在过去一段时间内的访问规律文件,这些文件里记载数据的每一次访问以及访问时间等信息,从这些文件里统计每个数据的访问次数,从而得到每个数据的总访问次数,以及每级存储的总访问次数。
访问数据时,根据数据的ID首先从第一级存储查询,若查询到则返回数据相关信息,查询不到再查询第二级,直到访问到位置。其中,第i级数据的访问时长为r1+r2+…+ri,
因此,可以得到如下公式:
平均响应时间 r ‾ = ( N 1 * r 1 + N 2 * ( r 2 + r 1 ) + N 3 * ( r 1 + r 2 + r 3 ) + ... + N i * ( r 1 + r 2 + ... + r i ) ) / N = f ( n ) 公式(1);
总存储成本C=n1*c1+n2*c2+…+ni*ci=g(n)公式(2)。
N表示所有数据的总访问次数。
利用公式(1)和公式(2)作为约束条件,求得最优解,可以优化平均响应时间或总存储成本。
例如,当平均响应时长上限限定时,可求得一组ni最优解,使得g(n)最小即总存储成本最小。
当总存储成本上限限定时,可求得一组ni最优解,使得f(n)最小,即平均响应时长最小。
在对公式最优化求解时,是典型的等式约束最优化问题,可以采用线搜索全局,动态规划等其它的计算方法求出最优解。
因此,通过上述的方法,可以对数据存储进行优化。
实施例1:
有0,1,2三个数据,分析他们在过去段时间的访问次数分别为300,100,50次,
现有3级存储,单位存储成本分别为100,10,5;访问响应时长分别为1,10,100
假设业务需求要求平均响应时长不得超过36,则
公式1:访问响应时间r=((N1*1+N2*(1+10)+N3*(1+10+100))/450
公式2:总存储成本C=n1*100+n2*10+n3*5
可以得出r<=36时,n1=1,n2=1,n2=1,总成本C可取最小值为115。从而分别在第一级至第三级存储中分别存储0,1,2。
进一步的,本发明还公开了数据存储的方法,利用上述数据存储优化的结果进行数据存储。
因此,本发明提供了一种数据存储的优化方法,以及一种对数据进行存储的方法,在选择多级存储时,基于数据的历史访问规律,建立访问响应时间和存储成本的表达公式,并进行优化,使得数据存储在合适的存储上,以平衡数据访问的平均响应时长与总的存储成本,满足业务需求。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施方式仅限于此,对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单的推演或替换,都应当视为属于本发明由所提交的权利要求书确定保护范围。

Claims (5)

1.一种数据存储的优化方法,按照响应时间从短到长,单位存储成本从高到低,将存储分为了若干级,对于第一级存储,r1是响应时间,n1是存储的数据量,N1为第一级的n1个数据的总访问次数,对于第i级存储,ri表示在该级存储中的响应时间,ci表示该级存储的单位存储的成本,ni表示该级存储的存储容量,Ni表示所述第i级中ni个数据的总访问次数,多级存储中按照访问次数对数据进行按序存储,将访问次数较高的数据按顺序放在访问响应时长较短的存储,在每一级存储中也按照访问次数高低进行排序,将访问次数高的数据放在前面,得到如下公式:
平均响应时间 r &OverBar; = ( N 1 * r 1 + N 2 * ( r 2 + r 1 ) + N 3 * ( r 1 + r 2 + r 3 ) + ... + N i * ( r 1 + r 2 + ... + r i ) ) / N = f ( n ) 公式(1)
总存储成本C=n1*c1+n2*c2+…+ni*ci=g(n)公式(2)
其中,N表示所有数据的总访问次数,
利用公式(1)和公式(2)作为约束条件,求得最优解,优化平均响应时间或总存储成本。
2.根据权利要求1所述的数据存储的优化方法,其特征在于:
当平均响应时长上限限定时,求得一组ni最优解,使得g(n)最小,即总存储成本最小。
3.根据权利要求1所述的数据存储的优化方法,其特征在于:
当总存储成本上限限定时,求得一组ni最优解,使得f(n)最小,即平均响应时长最小。
4.根据权利要求2或3所述的数据存储的优化方法,其特征在于:
在对公式最优化求解时,采用线搜索全局或动态规划的计算方法来求出最优解。
5.一种对数据进行存储的方法,其特征在于,利用权利要求1-4中任一项所述的优化结果,对数据进行存储。
CN201410538144.2A 2014-10-13 2014-10-13 一种数据存储的优化方法 Active CN104298475B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410538144.2A CN104298475B (zh) 2014-10-13 2014-10-13 一种数据存储的优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410538144.2A CN104298475B (zh) 2014-10-13 2014-10-13 一种数据存储的优化方法

Publications (2)

Publication Number Publication Date
CN104298475A CN104298475A (zh) 2015-01-21
CN104298475B true CN104298475B (zh) 2015-11-11

Family

ID=52318222

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410538144.2A Active CN104298475B (zh) 2014-10-13 2014-10-13 一种数据存储的优化方法

Country Status (1)

Country Link
CN (1) CN104298475B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106371762A (zh) * 2016-08-19 2017-02-01 浪潮(北京)电子信息产业有限公司 一种存储数据优化方法及系统
CN109992210B (zh) * 2019-03-29 2020-10-23 重庆紫光华山智安科技有限公司 数据存储方法、装置及电子设备

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7644225B2 (en) * 2006-10-17 2010-01-05 Intel Corporation Performance or power-optimized code/data storage for nonvolatile memories
US8977803B2 (en) * 2011-11-21 2015-03-10 Western Digital Technologies, Inc. Disk drive data caching using a multi-tiered memory
CN102520882A (zh) * 2011-12-08 2012-06-27 浪潮电子信息产业股份有限公司 一种静态随机存储器及其实现方法
CN103399826B (zh) * 2013-08-15 2016-01-06 南京新联电子股份有限公司 一种基于nor flash的数据存储方法
CN103927129B (zh) * 2014-03-14 2017-08-08 汉柏科技有限公司 数据存储方法

Also Published As

Publication number Publication date
CN104298475A (zh) 2015-01-21

Similar Documents

Publication Publication Date Title
CN106484875B (zh) 基于molap的数据处理方法及装置
CN103412916B (zh) 一种监控系统的多维度数据存储、检索方法及装置
US20180239800A1 (en) Data query method and apparatus
US10552378B2 (en) Dividing a dataset into sub-datasets having a subset of values of an attribute of the dataset
US20130166576A1 (en) Dynamic, hierarchical bloom filters for network routing
CN103593436A (zh) 文件合并方法和装置
US10445421B2 (en) Optimizing rendering of data tables
EP2833277B1 (en) Global dictionary for database management systems
EP2885731A1 (en) Search infrastructure
CN105989015B (zh) 一种数据库扩容方法和装置以及访问数据库的方法和装置
CN105354193A (zh) 数据库数据缓存方法、查询方法及缓存装置、查询装置
US9892143B2 (en) Association index linking child and parent tables
US9600559B2 (en) Data processing for database aggregation operation
CN109213761A (zh) 一种自由扩展免迁移的分库分表方法
WO2019100645A1 (zh) 实现多级联动下拉框的方法、电子装置及存储介质
US10877973B2 (en) Method for efficient one-to-one join
CN106599091A (zh) 基于键值存储的rdf图结构存储和索引方法
US10248618B1 (en) Scheduling snapshots
CN104298475B (zh) 一种数据存储的优化方法
CN104158902A (zh) 一种基于请求数的Hbase数据块分配方法及装置
US11250001B2 (en) Accurate partition sizing for memory efficient reduction operations
CN104598652B (zh) 一种数据库查询方法及装置
CN105045891A (zh) 提高顺序表性能方法、系统、架构、优化方法及存储装置
CN107741968A (zh) 一种文件检索的方法、系统、装置及计算机可读存储介质
CN110187836A (zh) 一种数据删除方法、装置、计算机及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: 100080 Beijing Haidian District city Haidian street A Sinosteel International Plaza No. 8 block 5 layer A, C

Patentee after: Youku network technology (Beijing) Co.,Ltd.

Address before: 100080 Beijing Haidian District city Haidian street A Sinosteel International Plaza No. 8 block 5 layer A, C

Patentee before: 1VERGE INTERNET TECHNOLOGY (BEIJING) Co.,Ltd.

CP01 Change in the name or title of a patent holder
TR01 Transfer of patent right

Effective date of registration: 20200323

Address after: 310006 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province

Patentee after: Alibaba (China) Co.,Ltd.

Address before: 100080 Beijing Haidian District city Haidian street A Sinosteel International Plaza No. 8 block 5 layer A, C

Patentee before: Youku network technology (Beijing) Co.,Ltd.

TR01 Transfer of patent right