CN104572936A - 一种线性可动态扩展的数据管理方法及系统 - Google Patents
一种线性可动态扩展的数据管理方法及系统 Download PDFInfo
- Publication number
- CN104572936A CN104572936A CN201410841294.0A CN201410841294A CN104572936A CN 104572936 A CN104572936 A CN 104572936A CN 201410841294 A CN201410841294 A CN 201410841294A CN 104572936 A CN104572936 A CN 104572936A
- Authority
- CN
- China
- Prior art keywords
- database
- data
- time interval
- temporal information
- time
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2272—Management thereof
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种线性可动态扩展的数据管理方法及系统,属于数据管理技术领域。该方法包括:产生数据时,计算生成所述数据的唯一ID,所述ID至少包括时间信息;在存储数据时,根据所述时间信息,确定所述时间信息所在时间区间;根据所确定时间区间以及预设时间区间与数据库的对应关系,将所述数据存储至与所述时间区间对应的数据库。本发明通过预设时间区间与数据库的对应关系,在生成数据时,生成携带时间信息的唯一ID,将数据分配到按照时间划分的数据库中,并以时间作为索引,实现按照时间存储和索引数据,每个数据库可存在对应某台服务器,实现线性扩展的目的。
Description
技术领域
本发明涉及数据管理技术领域,特别涉及一种线性可动态扩展的数据管理方法及系统。
背景技术
数据库的可用性和扩展性一直是数据库厂商和用户最关注的问题。过去我们采用高端的设备,比如使用小型机和大型存储来保证数据库的可用性。而扩展性主要采用向上扩展的方式,通过增加CPU,内存,磁盘等方式提高处理能力。随着业务积累和访问量的不断增大,这种集中式数据库的架构,使得数据库成为了整个系统的瓶颈,数据存储的压力急剧增加,很多应用场景下的索引和可扩展存储的大数据的需求越来越紧急。绝大多数数据库不具备线性扩容功能,数据量达到一定量级,性能严重下降,无法满足大数据的存储和扩展需求。
发明内容
为了解决上述问题,本发明实施例提供了一种线性可动态扩展的数据管理方法及系统。所述技术方案如下:
一方面,提供了一种线性可动态扩展的数据管理方法,所述方法包括:
产生数据时,计算生成所述数据的唯一ID,所述ID至少包括时间信息;
在存储数据时,根据所述时间信息,确定所述时间信息所在时间区间;
根据所确定时间区间以及预设时间区间与数据库的对应关系,将所述数据存储至与所述时间区间对应的数据库。
可选地,所述方法还包括:
当接收到客户端发送的携带时间信息的数据请求消息时,根据所述时间信息以及预设时间区间与数据库的对应关系,确定所请求数据所在数据库。
可选地,预设时间区间与数据库的对应关系包括:一个数据区域对应一个包含多个数据库的服务器,或者一个时间区间对应一个数据库,或者一个时间区间对应数据库所包含多个分片中的一个分片。
可选地,在存储数据时,根据所述时间信息,确定所述时间信息所在时间区间包括:
在存储数据时,将所述时间信息转化为数字时间,根据所述数字时间确定所述时间信息所在时间区间。
另一方面,提供了一种线性可动态扩展的数据管理系统,所述系统包括:
ID生成模块,用于产生数据时,计算生成所述数据的唯一ID,所述ID至少包括时间信息;
时间区间确定模块,用于在存储数据时,根据所述时间信息,确定所述时间信息所在时间区间;
数据库查找模块,用于根据所确定时间区间以及预设时间区间与数据库的对应关系,将所述数据存储至与所述时间区间对应的数据库。
可选地,所述系统还包括:
索引模块,用于当接收到客户端发送的携带时间信息的数据请求消息时,根据所述时间信息以及预设时间区间与数据库的对应关系,确定所请求数据所在数据库。
可选地,预设时间区间与数据库的对应关系包括:一个数据区域对应一个包含多个数据库的服务器,或者一个时间区间对应一个数据库,或者一个时间区间对应数据库所包含多个分片中的一个分片。
可选地,时间区间确定模块还用于在存储数据时,将所述时间信息转化为数字时间,根据所述数字时间确定所述时间信息所在时间区间。
本发明实施例提供的技术方案带来的有益效果是:
通过预设时间区间与数据库的对应关系,在生成数据时,生成携带时间信息的唯一ID,将数据分配到按照时间划分的数据库中,并以时间作为索引,实现按照时间存储和索引数据,每个数据库可存在对应某台服务器,实现线性扩展的目的。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的线性可动态扩展的数据管理方法流程图;
图2是本发明实施例提供的线性可动态扩展的数据管理方法示意图;
图3是本发明实施例提供的线性可动态扩展的数据管理系统结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
图1是本发明实施例提供的线性可动态扩展的数据管理方法的流程图。参见图1,该方法包括:
101、产生数据时,计算生成该数据的唯一ID,该ID至少包括时间信息;
在本发明实施例中,每个产生数据的服务程序,按照算法计算生成唯一ID,该唯一ID在携带时间信息的基础上,还可以携带ID算法和组成:[TM][UID][STEP],其中,TM是数字时间戳,UID是随机生成的唯一标识,STEP是为了进一步随机化的计数器。
102、在存储数据时,根据该时间信息,确定该时间信息所在时间区间;
在本发明实施例中,在存储数据时,将该时间信息转化为数字时间,根据该数字时间确定该时间信息所在时间区间。例如:UNIX时间戳1378173743,代表2013/9/3上午10:02:23,即时间信息可以用数字时间来表示,可以很自然对数据按时间区间进行切分。
103、根据所确定时间区间以及预设时间区间与数据库的对应关系,将该数据存储至与该时间区间对应的数据库。
在本发明实施例中,预设时间区间与数据库的对应关系包括:一个数据区域对应一个包含多个数据库的服务器,或者一个时间区间对应一个数据库,或者一个时间区间对应数据库所包含多个分片中的一个分片。例如:按照时间区域2013年9月,把9月产生的数据,放到唯一确定的数据集合(数据库或表)中去,这个集合本身数据量就可以保持在可控的范围内,既保证存储空间的大小,又保证了查询时间的效率。
在本发明实施例中,数据索引时包括:当接收到客户端发送的携带时间信息的数据请求消息时,根据该时间信息以及预设时间区间与数据库的对应关系,确定所请求数据所在数据库。
在本发明实施例中,由于单台服务器容量可以由预定义的时间区间来调节,例如按天分片,按月分片,或者按年分片等等自定义区间,达到线性扩展的目的。例如,如图2所示,服务程序A,B,C,每个负责生成数据和ID,按照ID写入对应分片的服务器上,读取时按照ID中的时间戳,按照预定义规则,得到划分数据库,取得数据。
本发明实施例提供的方法,通过预设时间区间与数据库的对应关系,在生成数据时,生成携带时间信息的唯一ID,将数据分配到按照时间划分的数据库中,并以时间作为索引,实现按照时间存储和索引数据,每个数据库可存在对应某台服务器,实现线性扩展的目的。
图3是本发明实施例提供的线性可动态扩展的数据管理系统结构示意图。参见图3,该系统包括ID生成模块31、时间区间确定模块32、数据库查找模块33。其中,
ID生成模块31用于产生数据时,计算生成该数据的唯一ID,该ID至少包括时间信息;ID生成模块31与时间区间确定模块32连接,时间区间确定模块32用于在存储数据时,根据该时间信息,确定该时间信息所在时间区间;时间区间确定模块32与数据库查找模块33连接,数据库查找模块33用于根据所确定时间区间以及预设时间区间与数据库的对应关系,将该数据存储至与该时间区间对应的数据库。
可选地,该系统还包括:索引模块,用于当接收到客户端发送的携带时间信息的数据请求消息时,根据该时间信息以及预设时间区间与数据库的对应关系,确定所请求数据所在数据库。
可选地,预设时间区间与数据库的对应关系包括:一个数据区域对应一个包含多个数据库的服务器,或者一个时间区间对应一个数据库,或者一个时间区间对应数据库所包含多个分片中的一个分片。
可选地,时间区间确定模块32还用于在存储数据时,将该时间信息转化为数字时间,根据该数字时间确定该时间信息所在时间区间。
本发明实施例提供的装置,通过预设时间区间与数据库的对应关系,在生成数据时,生成携带时间信息的唯一ID,将数据分配到按照时间划分的数据库中,并以时间作为索引,实现按照时间存储和索引数据,每个数据库可存在对应某台服务器,实现线性扩展的目的。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种线性可动态扩展的数据管理方法,其特征在于,所述方法包括:
产生数据时,计算生成所述数据的唯一ID,所述ID至少包括时间信息;
在存储数据时,根据所述时间信息,确定所述时间信息所在时间区间;
根据所确定时间区间以及预设时间区间与数据库的对应关系,将所述数据存储至与所述时间区间对应的数据库。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当接收到客户端发送的携带时间信息的数据请求消息时,根据所述时间信息以及预设时间区间与数据库的对应关系,确定所请求数据所在数据库。
3.根据权利要求1所述的方法,其特征在于,预设时间区间与数据库的对应关系包括:一个数据区域对应一个包含多个数据库的服务器,或者一个时间区间对应一个数据库,或者一个时间区间对应数据库所包含多个分片中的一个分片。
4.根据权利要求1所述的方法,其特征在于,在存储数据时,根据所述时间信息,确定所述时间信息所在时间区间包括:
在存储数据时,将所述时间信息转化为数字时间,根据所述数字时间确定所述时间信息所在时间区间。
5.一种线性可动态扩展的数据管理系统,其特征在于,所述系统包括:
ID生成模块,用于产生数据时,计算生成所述数据的唯一ID,所述ID至少包括时间信息;
时间区间确定模块,用于在存储数据时,根据所述时间信息,确定所述时间信息所在时间区间;
数据库查找模块,用于根据所确定时间区间以及预设时间区间与数据库的对应关系,将所述数据存储至与所述时间区间对应的数据库。
6.根据权利要求5所述的系统,其特征在于,所述系统还包括:
索引模块,用于当接收到客户端发送的携带时间信息的数据请求消息时,根据所述时间信息以及预设时间区间与数据库的对应关系,确定所请求数据所在数据库。
7.根据权利要求5所述的系统,其特征在于,预设时间区间与数据库的对应关系包括:一个数据区域对应一个包含多个数据库的服务器,或者一个时间区间对应一个数据库,或者一个时间区间对应数据库所包含多个分片中的一个分片。
8.根据权利要求5所述的系统,其特征在于,时间区间确定模块还用于在存储数据时,将所述时间信息转化为数字时间,根据所述数字时间确定所述时间信息所在时间区间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410841294.0A CN104572936B (zh) | 2014-12-30 | 2014-12-30 | 一种线性可动态扩展的数据管理方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410841294.0A CN104572936B (zh) | 2014-12-30 | 2014-12-30 | 一种线性可动态扩展的数据管理方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104572936A true CN104572936A (zh) | 2015-04-29 |
CN104572936B CN104572936B (zh) | 2018-07-13 |
Family
ID=53088998
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410841294.0A Active CN104572936B (zh) | 2014-12-30 | 2014-12-30 | 一种线性可动态扩展的数据管理方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104572936B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108287668A (zh) * | 2018-01-25 | 2018-07-17 | 深圳市智物联网络有限公司 | 设备数据的处理方法及装置、计算机装置及可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102063490A (zh) * | 2010-12-20 | 2011-05-18 | 大唐移动通信设备有限公司 | 一种数据库分区方法和分区装置 |
CN102200972A (zh) * | 2010-03-24 | 2011-09-28 | 腾讯科技(北京)有限公司 | 一种数据库维护方法和设备 |
EP2746988A1 (en) * | 2012-12-24 | 2014-06-25 | Orange | Method for identifying a user manipulating a touchscreen device |
-
2014
- 2014-12-30 CN CN201410841294.0A patent/CN104572936B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102200972A (zh) * | 2010-03-24 | 2011-09-28 | 腾讯科技(北京)有限公司 | 一种数据库维护方法和设备 |
CN102063490A (zh) * | 2010-12-20 | 2011-05-18 | 大唐移动通信设备有限公司 | 一种数据库分区方法和分区装置 |
EP2746988A1 (en) * | 2012-12-24 | 2014-06-25 | Orange | Method for identifying a user manipulating a touchscreen device |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108287668A (zh) * | 2018-01-25 | 2018-07-17 | 深圳市智物联网络有限公司 | 设备数据的处理方法及装置、计算机装置及可读存储介质 |
CN108287668B (zh) * | 2018-01-25 | 2021-05-18 | 深圳市智物联网络有限公司 | 设备数据的处理方法及装置、计算机装置及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN104572936B (zh) | 2018-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106991334B (zh) | 一种数据存取的方法、系统及装置 | |
CN107241221B (zh) | 支持不同网管协议的网管协议数据统一处理系统及方法 | |
CN101996067B (zh) | 一种数据导出的方法和装置 | |
CN103336849A (zh) | 一种数据库检索系统中提高检索速度的方法及装置 | |
CN103778135A (zh) | 一种实时数据的分布存储和分页查询方法 | |
CN103699557B (zh) | 报表处理方法及系统 | |
CN103186554A (zh) | 分布式数据镜像方法及存储数据节点 | |
CN105488210B (zh) | 一种批量数据匹配方法及装置 | |
CN104486777A (zh) | 一种实现数据处理的方法及装置 | |
CN107818116B (zh) | 用于确定用户行为区域位置信息的方法与设备 | |
CN105516284A (zh) | 一种集群数据库分布式存储的方法和装置 | |
CN103778149A (zh) | 文件系统及其对文件进行存储管理的方法 | |
CN103885887A (zh) | 用户数据存储方法、读取方法及系统 | |
CN109271449A (zh) | 一种基于文件的分布式存储查询系统及查询方法 | |
CN112764993A (zh) | 一种节点信息收集方法、装置、设备及可读存储介质 | |
CN104268298A (zh) | 一种创建数据库索引及其查询的方法 | |
CN106250566A (zh) | 一种分布式数据库及其数据运算的管理方法 | |
CN107944036A (zh) | 一种图谱变化差异的获取方法 | |
CN109828966A (zh) | 渐进式重哈希方法、装置、计算机设备及存储介质 | |
CN104717251A (zh) | OpenStack云计算管理平台Cell节点调度方法和系统 | |
CN102932416B (zh) | 一种信息流任务的中间数据存储方法、处理方法及装置 | |
CN103778120A (zh) | 全局文件标识生成方法、生成装置及相应的分布式文件系统 | |
CN105279226A (zh) | 一种基于大数据的数据监控方法和设备 | |
CN104572936A (zh) | 一种线性可动态扩展的数据管理方法及系统 | |
CN102685222B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |