CN101676906A - 一种利用位图对内存数据库空间进行管理的方法 - Google Patents

一种利用位图对内存数据库空间进行管理的方法 Download PDF

Info

Publication number
CN101676906A
CN101676906A CN200810216191A CN200810216191A CN101676906A CN 101676906 A CN101676906 A CN 101676906A CN 200810216191 A CN200810216191 A CN 200810216191A CN 200810216191 A CN200810216191 A CN 200810216191A CN 101676906 A CN101676906 A CN 101676906A
Authority
CN
China
Prior art keywords
bit
page
map area
bit map
record
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
CN200810216191A
Other languages
English (en)
Other versions
CN101676906B (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.)
Dongguan neighboring workers help Agel Ecommerce Ltd
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN 200810216191 priority Critical patent/CN101676906B/zh
Publication of CN101676906A publication Critical patent/CN101676906A/zh
Application granted granted Critical
Publication of CN101676906B publication Critical patent/CN101676906B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种利用位图对内存数据库空间进行高效管理的方法,包括在***内存区内的以下操作步骤:建立一级位图区;建立一级位图区辅助链表;建立二级位图区;分配数据页;分配记录;释放记录;释放数据页。本发明方法利用二级位图结构,同时结合一个辅助链表来实现控制数据页和记录的分配和回收管理。本发明彻底克服了全链表架构中同时段只能有一个线程操作的问题,提高了多任务性能,内存空间利用率高,管理内存量大,采用位运算效率高,在页面层和记录层同时避免了性能瓶颈,性能恒定,数据库具备良好的扩展性,适于在本领域广泛推广应用。

Description

一种利用位图对内存数据库空间进行管理的方法
技术领域
本发明涉及内存数据库***的管理方法,尤其涉及一种利用位图对内存数据库空间进行高效管理的方法。
背景技术
传统的数据库管理***把所有数据都放在磁盘上进行管理,所以称做磁盘数据库。磁盘数据库需要频繁地访问磁盘来进行数据的操作,由于对磁盘读写数据的操作一方面要进行磁头的机械移动,另一方面受到***调用时间的影响,当数据量很大,操作频繁且复杂时,就会暴露出很多问题。
近年来,内存容量不断提高,价格不断下跌,计算机进入了64位时代后,操作***已经可以支持更大的地址空间,同时业界对数据库***实时响应能力要求日益提高,充分利用内存技术提升数据库性能成为数据库领域一个重要的发展方向。
在数据库技术中,目前主要有两种方法来使用大量的内存。一种是在传统的数据库中,增大缓冲池,将一个事务所涉及的数据都放在缓冲池中,组织成相应的数据结构来进行查询和更新处理,也就是常说的共享内存技术,这种方法优化的主要目标是最小化磁盘访问。另一种就是内存数据库技术,就是重新设计一种新的数据库管理***,对查询处理、并发控制与恢复的算法和数据结构进行重新设计,以更有效地使用CPU和内存,这种技术把整个数据库放进内存中,因而会产生一些根本性的变化。
内存数据库***带来的优越性能不仅仅在于对内存读写比对磁盘读写快上,更重要的是,从根本上抛弃了磁盘数据管理的许多传统方式,基于全部数据都在内存中管理进行了新的体系结构的设计,并且在数据缓存、索引算法、并行操作方面也进行了相应的改进,从而使数据处理速度比传统数据库的数据处理速度快若干数量级。
通过以上介绍可以了解到,内存数据库完全工作于内存中,如何充分而高效地管理庞大的内存空间就成为内存数据库设计中一个极其重要的问题。
在一个性能良好的数据库***中,内存一定是分页(即page;有些***称之为块,block)使用的,页的大小可以是4k,8k,16k,32k……等等。使用分页管理的好处是可以取得一个比较适中的度量单位,在兼顾灵活性和易管理性的前提下同时满足极少量或者海量的内存需求,既不浪费空间又不增加管理上的负担。
传统的页管理模式是完全基于链表的,按照页的当前状态(空闲、已占用等)划分成若干链表。类似地,在页内按照记录的不同状态也划分成若干链表。页和记录的分配与回收都依靠链表操作。
这种完全依赖于链表的管理方式有很大的缺陷:
1、链表本身的性质决定了对链表的读写操作都需要加锁,多个线程不能同时读写链表,这将导致线程等待。在多任务数据库***中,链表锁的争用将成为***的重要瓶颈。并且管理的空间越大,链表就越长,争用越严重,整体空间管理效率就越低。
2、大量的链表结构耗费了很大内存空间,降低了内存空间的利用率,并且空间越大,浪费越多。
3、对大量链表进行管理的逻辑非常复杂,大大降低了整个***的可靠性与可维护性。
因而,现有技术还有待于改进和提高。
发明内容
本发明的目的在于解决以上全链表式管理中存在的问题,提出一种新的对内存数据库空间进行管理的方法,实现控制数据页和记录的分配和回收。
本发明的技术方案包括:
一种利用位图对内存数据库空间进行管理的方法,其中,包括在***内存区内的以下操作步骤:
A、建立一级位图区;
B、建立一级位图区辅助链表;
C、建立二级位图区;
D、分配数据页;
E、分配记录;
F、释放记录;
G、释放数据页。
所述的方法,其中,所述的步骤A包括:
按照***需要管理的总内存区大小开辟所述一级位图区并全部初始化为未分配状态。
所述的方法,其中,所述步骤A还包括以下步骤:
A1、在数据库***配置中设定将使用m MB的内存,其中,m为正整数;并由主机支持分配此容量的内存;同时设定每页的大小为p KB,其中,p为正整数;
A2、数据库***启动后通过开辟共享内存分配出m MB内存;假设该内存段首地址为g,其中,g为自然数;
A3、计算所需要的一级位图区大小为b1=(m*1024)/(p*8)字节;
A4、在总内存段的开头保留b1字节的空间,作为一级位图区,对位图区初始化为全0。
所述的方法,其中,所述的步骤B包括:
建立所述一级位图辅助链表并初始化,将所述一级位图区中所有空闲bit域都记录进来。
所述的方法,其中,所述的步骤C包括:
C1、根据数据页偏移地址对该页进行初始化,记录页头控制信息,并按照该页需要存放的记录的长度等信息估算所需要的二级位图区长度;
C2、初始化该页的二级位图区,将所有bit域标记为未使用。
所述的方法,其中,所述的步骤D包括以下步骤:
D1、访问所述一级位图辅助链表的首节点,从中获取第一个空闲的bit域,并标记为已分配;
D2、检测步骤D1中找到的bit域所在的辅助链表的节点,如果该节点对应的所有bit域都为已分配状态,则将该节点移出链表;
D3、根据步骤D1中找到的空闲bit域的位置,计算出相应数据页在整个数据区中的位置偏移地址。
所述的方法,其中,所述的步骤D1包括以下步骤:
D11、上层业务发来请求,申请数据页,并指明该页中每条记录长度≤r字节;其中,r为正整数;
D12:定位到辅助链表首节点,若发现链表为空,则向调用者返回无空闲数据页错误,否则转下一步骤;
D13:搜索首节点的第一个空闲bit,搜索到则设该bit为1,表示已占用;假设该bit是g开始的第n个bit,n为从1开始的计数自然数;检查此节点对应的一级位图区是否已经为全1,是则从链表摘除此节点。
所述的方法,其中,所述的步骤D3包括以下步骤:
D31:在数据区中定位到第n个bit对应的数据页首地址h,h=g+b1字节偏移+(n-1)*p字节偏移;
D32:对h偏移处的页进行页头初始化,记录必要管理信息;并计算二级位图区长度b2;假设页头的长度为q字节,则b2=(p*1024-q)/(r*8)字节;其中,q为正整数;
D33:定位到h+q字节偏移处,对此后b2字节的区域初始化为全0;
D34:向调用者返回成功结果和页偏移n。
所述的方法,其中,所述步骤E包括:
E1、定位到需要分配记录的数据页内二级位图区,使用一定的算法搜索到该位图区第一个空闲的bit域,将该bit域状态修改为已分配;
E2、通过一定的算法定位到步骤E1分配的bit域所对应的记录地址,对该记录进行初始化。
所述的方法,其中,所述步骤E1包括:
E11、上层业务发来请求,要求在第n个数据页中申请一条记录空间;
E12、按照D31和D32步骤的算法定位到该数据页的二级位图区首地址;寻找此区域第一个可用的bit,若找到即设定为1,表示已分配,并返回成功;若没找到转到下一步骤;
E13、向调用者返回本页无剩余空间的错误信息。
所述的方法,其中,所述步骤F包括:
定位到该记录所在的数据页内二级位图区,搜索到该记录对应的bit域,将该bit域状态修改为空闲。
所述的方法,其中,所述步骤F还包括如下步骤:
F1、上层业务发来请求,要求释放第m个数据页中的第n条记录空间;其中,m为自然数;
F2、定位到该数据页的二级位图区首地址,定位到第n个bit,并设定为0,表示已回收,并返回成功;若没找到转到下一步骤;
F3、向调用者返回页号或者记录号非法的错误信息。
所述的方法,其中,所述步骤G包括:
G1、根据待释放页的偏移地址,通过一定算法定位到该页在一级位图区中的对应bit域,将该域设置为空闲;
G2、检查bit域所在的一级位图辅助链表节点,如果该节点不在链表中,则加入链表。
所述的方法,其中,所述步骤G1包括以下步骤:
G11、上层业务发来请求,要求释放第m个数据页;其中,m为自然数;
G12、从一级位图首地址g开始计算其中,g为自然数,定位到第m个bit处,若未找到,则向调用者返回页号非法的错误信息;否则将此bit设定为0,表示已回收。
本发明所提供的一种利用位图对内存数据库空间进行管理的方法,由于利用二级位图结构,同时结合一个辅助链表来控制数据页和记录的分配和回收的管理方法,克服了全链表结构管理的结构复杂,链表锁瓶颈、内存空间利用率低等问题;提高了多任务性能,运行速度快,内存空间利用率高,管理内存量大,采用位运算效率高,性能恒定,并使数据库具备良好的扩展性。
附图说明
图1为本发明一级位图及其辅助链表结构示意图;
图2为本发明二级位图结构示意图;
图3为本发明初始化和数据页分配流程示意图;
图4为本发明记录区分配流程示意图;
图5为本发明记录区回收流程示意图;
图6为本发明数据页回收流程示意图。
具体实施方式
以下结合附图介绍本发明的若干实施例。
本发明提出的一种利用二级位图结构对内存数据库空间进行管理的方法,利用二级位图结构,结合一个辅助链表来实现控制数据页和记录的分配和回收。
首先,划定一块特定的位图区域来控制所有数据页的使用,该位图区为每个数据页保留若干bit,用于记录此页的状态。数据页的分配和回收只需要修改相应bit位的值即可。这样的位图区称之为“一级位图”,详见图1。
然后,在每一个数据页中划定一块特定的位图区域来控制该页所有记录的使用,该位图区为每条记录保留若干bit,用于保存该记录的状态。一条记录的分配和回收只需要修改相应bit位的值即可。这样的位图区称之为“二级位图”,详见图2。
为一级位图区建立一个辅助链表,链表的每一个节点对应于一级位图区的若干bit,如果这若干bit都已经被占用,则将相应节点移出链表,否则就加入链表。当需要在一级位图区中分配空闲bit时,只要访问该链表的第一个节点即可。体现了“空间换时间”的概念,详见图1。
本方法具体步骤如下:
1、***初始化
(a)按照***需要管理的总内存区大小开辟一级位图区并全部初始化为“未分配”状态;
(b)建立一级位图辅助链表并初始化,将一级位图区中所有空闲bit域都记录进来。
2、分配数据页
(c)访问一级位图辅助链表的首节点,通过一定的算法从中获取第一个空闲的bit域,并标记为“已分配”。
(d)检测(c)中找到的bit域所在的辅助链表的节点,如果该节点对应的所有bit域都为“已分配”状态,则将该节点移出链表。
(e)根据(c)中找到的空闲bit域的位置,通过一定的算法计算出相应数据页在整个数据区中的位置偏移地址。
(f)根据(e)中得到的数据页偏移地址对该页进行初始化,记录页头控制信息,并按照该页需要存放的记录的长度等信息估算所需要的二级位图区长度。
(g)初始化该页的二级位图区,将所有bit域标记为“未使用”
3、分配记录
(h)定位到需要分配记录的数据页内二级位图区,使用一定的算法搜索到该位图区第一个空闲的bit域,将该bit域状态修改为“已分配”
(i)通过一定的算法定位到(h)步骤分配的bit域所对应的记录地址,对该记录进行初始化。
4、释放记录
(j)定位到该记录所在的数据页内二级位图区,使用一定的算法搜索到该记录对应的bit域,将该bit域状态修改为“空闲”
5、释放数据页
(k)根据待释放页的偏移地址,通过一定算法定位到该页在一级位图区中的对应bit域,将该域设置为“空闲”
(l)检查bit域所在的一级位图辅助链表节点,如果该节点不在链表中,则加入链表。
请注意:以上(a)到(l)步骤并非一定是连续地顺序地执行,而应当按照实际情况的需要执行。
这样,通过对以上两种位图区以及一个链表的组合操作,就实现了对所有数据页以及页内记录区的高速分配和回收。
实施例1,如图3所示,在一个典型的应用场景中,初始化并分配一个数据页的完整过程包括以下步骤:
步骤A1:数据库***配置中设定了将使用m MB的内存,其中,m为正整数;并且主机支持分配此容量的内存。同时设定每页的大小为p KB;其中,p为正整数。
步骤B1:数据库***启动后通过开辟共享内存或者类似方式分配出mMB内存。假设该内存段首地址为g,其中,g为自然数。
步骤C1:计算所需要的一级位图区大小b1=(m*1024)/(p*8),单位字节。
步骤D1:在总内存段的开头保留b1字节的空间,作为一级位图区,对位图区初始化为全0。
步骤E1:为一级位图辅助链表分配空间,链表含有b1个节点,头尾相连初始化。
步骤F1:上层业务发来请求,申请数据页,并指明该页中每条记录长度≤r字节。其中,r为正整数。
步骤G1:定位到辅助链表首节点,若发现链表为空,则向调用者返回“无空闲数据页”错误,否则转H1步骤。
步骤H1:搜索首节点的第一个空闲bit,搜索到则设该bit为1,表示已占用。假设该bit是g开始的第n个bit,n是从1开始的计数自然数。检查此节点对应的一级位图区是否已经为全1,是则从链表摘除此节点。
步骤I1:在数据区中定位到第n个bit对应的数据页首地址h,h=g+b1字节偏移+(n-1)*p字节偏移。
步骤J1:对h偏移处的页进行页头初始化,记录必要管理信息。并计算二级位图区长度b2,单位byte。假设页头的长度为q字节,则b2=(p*1024-q)/(r*8),其中,q为正整数。
步骤K1:定位到h+q字节偏移处,对此后b2字节的区域初始化为全0。
步骤L1:向调用者返回成功结果和页偏移n。
实施例2,如图4所示,在一个典型的应用场景中,申请一条记录空间的完整过程包括以下步骤:
步骤A2:上层业务发来请求,要求在第n个数据页中申请一条记录空间。
步骤B2:按照I1和J1步骤的算法定位到该数据页的二级位图区首地址,按照一定算法寻找此区域第一个可用的bit,若找到即设定为1,表示已分配,并返回成功;若没找到转到C2步骤。
步骤C2:向调用者返回“本页无剩余空间”的错误信息
实施例3,如图5所示,在一个典型的应用场景中,释放一条记录空间的完整过程包括以下步骤:
步骤A3:上层业务发来请求,要求释放第m个数据页中的第n条记录空间。其中,m、n为自然数。
步骤B3:按照I1和J1步骤的算法定位到该数据页的二级位图区首地址,定位到第n个bit,并设定为0,表示已回收,并返回成功;若没找到转到C3步骤。
步骤C3:向调用者返回“页号或者记录号非法”的错误信息。
实施例4,如图6所示,在一个典型的应用场景中,释放一个数据页的完整过程包括以下步骤:
步骤A4:上层业务发来请求,要求释放第m个数据页。其中,m为自然数。
步骤B4:从一级位图首地址g开始计算,其中,g为自然数,定位到第m个bit处,若未找到,则向调用者返回“页号非法”的错误信息;否则将此bit设定为0,表示已回收。
步骤C4:检查第m个bit所在的一级位图辅助链表节点,如果该节点不在链表中,则加入链表。
以上附图及实施例详细介绍了本发明利用二级位图结构对内存数据库空间进行管理的方法,说明了利用二级位图结构,结合一个辅助链表来控制数据页和记录的分配和回收的过程和步骤。
本发明利用二级位图结构,同时结合一个辅助链表来控制数据页和记录的分配和回收的管理方法,其重要特点在于:
1、位图区是一块物理存在的区域,该区域各部分之间没有关联,多个byte可以同时被修改,因此该机制能够很好地支持多线程并发操作,任一时刻均可以有多个数据页和记录区被并发地分配和释放,这样就彻底避免了全链表架构中同时只能有一个线程操作的问题,极大地提高了多任务性能,这一点对于以超高性能为主要目标的内存型数据库来说是至关重要的。
2、位图机制可以用若干bit控制一个页或者一条记录,因此管理部分所耗费的内存空间极小,几乎可以忽略不计。在一个典型的应用场景中,管理20GB总内存仅需耗费12.66MB空间,即真正用于存储数据的空间占总空间的99.938%以上,内存空间利用率极高。
3、本方法可以管理的内存空间仅仅受制于主机的内存大小,主机支持多大的内存,本方法就可以管理多大内存,而且用于控制部分的内存占总内存的比例随着总内存的增大而降低。
4、位运算对于任何架构的cpu来说都是极高效的运算,而位图管理方式主要依靠位运算,只有极少量的链表操作,因此位图管理方式的效率是远远超过全链表方式的。
5、本方法使用了两级位图,将数据页和页中记录同时纳入位图管理,在页面层和记录层同时避免了性能瓶颈。
6、本方法的性能是恒定的,不管管理的空间有多大,分配和回收一个页或者记录的运算次数是固定的。这意味着数据库将具备良好的扩展性。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改,等同替换,改进等,均应包含在本发明的保护范围之内。本发明的专利保护范围应以所附权利要求为准。

Claims (14)

1、一种利用位图对内存数据库空间进行管理的方法,其特征在于,包括在***内存区内的以下操作步骤:
A、建立一级位图区;
B、建立一级位图区辅助链表;
C、建立二级位图区;
D、分配数据页;
E、分配记录;
F、释放记录;
G、释放数据页。
2、如权利要求1所述的方法,其特征在于,所述的步骤A包括:
按照***需要管理的总内存区大小开辟所述一级位图区并全部初始化为未分配状态。
3、如权利要求2所述的方法,其特征在于,所述步骤A还包括以下步骤:
A1、在数据库***配置中设定将使用m MB的内存,其中,m为正整数;并由主机支持分配此容量的内存;同时设定每页的大小为p KB,其中,p为正整数;
A2、数据库***启动后通过开辟共享内存分配出m MB内存;假设该内存段首地址为g,其中,g为自然数;
A3、计算所需要的一级位图区大小为b1=(m*1024)/(p*8)字节;
A4、在总内存段的开头保留b1字节的空间,作为一级位图区,对位图区初始化为全0。
4 如权利要求1的方法,其特征在于,所述的步骤B包括:
建立所述一级位图辅助链表并初始化,将所述一级位图区中所有空闲bit域都记录进来。
5、如权利要求1所述的方法,其特征在于,所述的步骤C包括:
C1、根据数据页偏移地址对该页进行初始化,记录页头控制信息,并按照该页需要存放的记录的长度等信息估算所需要的二级位图区长度;
C2、初始化该页的二级位图区,将所有bit域标记为未使用。
6、如权利要求1所述的方法,其特征在于,所述的步骤D包括以下步骤:
D1、访问所述一级位图辅助链表的首节点,从中获取第一个空闲的bit域,并标记为已分配;
D2、检测步骤D1中找到的bit域所在的辅助链表的节点,如果该节点对应的所有bit域都为已分配状态,则将该节点移出链表;
D3、根据步骤D1中找到的空闲bit域的位置,计算出相应数据页在整个数据区中的位置偏移地址。
7、如权利要求6所述的方法,其特征在于,所述的步骤D1包括以下步骤:
D11、上层业务发来请求,申请数据页,并指明该页中每条记录长度≤r字节;其中,r为正整数;
D12:定位到辅助链表首节点,若发现链表为空,则向调用者返回无空闲数据页错误,否则转下一步骤;
D13:搜索首节点的第一个空闲bit,搜索到则设该bit为1,表示已占用;假设该bit是g开始的第n个bit,n为从1开始的计数自然数;检查此节点对应的一级位图区是否已经为全1,是则从链表摘除此节点。
8、如权利要求7所述的方法,其特征在于,所述的步骤D3包括以下步骤:
D31:在数据区中定位到第n个bit对应的数据页首地址h,h=g+b1字节偏移+(n-1)*p字节偏移;
D32:对h偏移处的页进行页头初始化,记录必要管理信息;并计算二级位图区长度b2;假设页头的长度为q字节,则b2=(p*1024-q)/(r*8)字节;其中,q为正整数;
D33:定位到h+q字节偏移处,对此后b2字节的区域初始化为全0;
D34:向调用者返回成功结果和页偏移n。
9、如权利要求1所述的方法,其特征在于,所述步骤E包括:
E1、定位到需要分配记录的数据页内二级位图区,使用一定的算法搜索到该位图区第一个空闲的bit域,将该bit域状态修改为已分配;
E2、通过一定的算法定位到步骤E1分配的bit域所对应的记录地址,对该记录进行初始化。
10、如权利要求9所述的方法,其特征在于,所述步骤E1包括:
E11、上层业务发来请求,要求在第n个数据页中申请一条记录空间;
E12、按照D31和D32步骤的算法定位到该数据页的二级位图区首地址;寻找此区域第一个可用的bit,若找到即设定为1,表示已分配,并返回成功;若没找到转到下一步骤;
E13、向调用者返回本页无剩余空间的错误信息。
11、如权利要求1所述的方法,其特征在于,所述步骤F包括:
定位到该记录所在的数据页内二级位图区,搜索到该记录对应的bit域,将该bit域状态修改为空闲。
12、如权利要求11所述的方法,其特征在于,所述步骤F还包括如下步骤:
F1、上层业务发来请求,要求释放第m个数据页中的第n条记录空间;其中,m为自然数;
F2、定位到该数据页的二级位图区首地址,定位到第n个bit,并设定为0,表示已回收,并返回成功;若没找到转到下一步骤;
F3、向调用者返回页号或者记录号非法的错误信息。
13、如权利要求1所述的方法,其特征在于,所述步骤G包括:
G1、根据待释放页的偏移地址,通过一定算法定位到该页在一级位图区中的对应bit域,将该域设置为空闲;
G2、检查bit域所在的一级位图辅助链表节点,如果该节点不在链表中,则加入链表。
14、如权利要求13所述的方法,其特征在于,所述步骤G1包括以下步骤:
G11、上层业务发来请求,要求释放第m个数据页;其中,m为自然数;
G12、从一级位图首地址g开始计算其中,g为自然数,定位到第m个bit处,若未找到,则向调用者返回页号非法的错误信息;否则将此bit设定为0,表示已回收。
CN 200810216191 2008-09-18 2008-09-18 一种利用位图对内存数据库空间进行管理的方法 Expired - Fee Related CN101676906B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200810216191 CN101676906B (zh) 2008-09-18 2008-09-18 一种利用位图对内存数据库空间进行管理的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200810216191 CN101676906B (zh) 2008-09-18 2008-09-18 一种利用位图对内存数据库空间进行管理的方法

Publications (2)

Publication Number Publication Date
CN101676906A true CN101676906A (zh) 2010-03-24
CN101676906B CN101676906B (zh) 2013-06-05

Family

ID=42029475

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200810216191 Expired - Fee Related CN101676906B (zh) 2008-09-18 2008-09-18 一种利用位图对内存数据库空间进行管理的方法

Country Status (1)

Country Link
CN (1) CN101676906B (zh)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101901261A (zh) * 2010-07-23 2010-12-01 南京国电南自轨道交通工程有限公司 一种使用类聚簇的实时数据库存储方法
CN101916290A (zh) * 2010-08-18 2010-12-15 中兴通讯股份有限公司 内存数据库的管理方法和装置
CN102063378A (zh) * 2010-12-17 2011-05-18 天津曙光计算机产业有限公司 一种在内核中高速分配连续内存的方法
CN102184140A (zh) * 2011-04-01 2011-09-14 航天恒星科技有限公司 一种面向实时数据库的表文件空间分配方法
CN102541758A (zh) * 2011-12-22 2012-07-04 深圳市融创天下科技股份有限公司 一种内存分配与释放的方法、***和终端设备
CN103678553A (zh) * 2013-12-06 2014-03-26 上海寰创通信科技股份有限公司 基于共享内存设计的无线终端数据库构建方法
CN104572810A (zh) * 2014-11-17 2015-04-29 深圳市光息谷科技发展有限公司 利用位图进行海量文件运算处理的方法
CN105930280A (zh) * 2016-05-27 2016-09-07 诸葛晴凤 一种面向非易失性内存的高效的页面组织和管理方法
CN106445502A (zh) * 2016-08-30 2017-02-22 北京小米移动软件有限公司 图像显示方法及装置
CN107590199A (zh) * 2017-08-18 2018-01-16 西安理工大学 一种面向内存的多线程数据库设计方法
CN108021442A (zh) * 2016-11-03 2018-05-11 阿里巴巴集团控股有限公司 释放物理内存的***、装置及方法
CN108121813A (zh) * 2017-12-27 2018-06-05 东软集团股份有限公司 数据管理方法、装置、***、存储介质及电子设备
CN109246036A (zh) * 2017-07-10 2019-01-18 深圳市中兴微电子技术有限公司 一种处理分片报文的方法和装置
CN109284234A (zh) * 2018-09-05 2019-01-29 珠海昇生微电子有限责任公司 一种存储地址分配方法及***
CN110618883A (zh) * 2019-09-26 2019-12-27 迈普通信技术股份有限公司 一种用于共享内存链表的方法、装置、设备及存储介质
CN112100022A (zh) * 2020-08-14 2020-12-18 北京航空航天大学 一种安卓***上监测Java对象内存泄漏时即时记录对象分配点的方法
CN113284039A (zh) * 2021-07-16 2021-08-20 杭州安恒信息技术股份有限公司 一种位图管理方法、装置、设备及可读存储介质
CN113535392B (zh) * 2021-07-08 2023-07-11 中国人民解放军国防科技大学 基于cma实现支持大内存连续分配的内存管理方法及***

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100440171C (zh) * 2004-02-24 2008-12-03 中国科学院声学研究所 一种嵌入式环境下音像录放装置的文件组织管理方法
CN100456264C (zh) * 2006-03-02 2009-01-28 腾讯科技(深圳)有限公司 一种磁盘空间管理方法及***
CN100547595C (zh) * 2007-12-03 2009-10-07 福建星网锐捷网络有限公司 一种共享链表错误检测方法和***
CN101221535B (zh) * 2008-01-25 2010-06-09 中兴通讯股份有限公司 Java虚拟机的垃圾回收移动通信终端及回收方法

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101901261A (zh) * 2010-07-23 2010-12-01 南京国电南自轨道交通工程有限公司 一种使用类聚簇的实时数据库存储方法
CN101916290A (zh) * 2010-08-18 2010-12-15 中兴通讯股份有限公司 内存数据库的管理方法和装置
CN101916290B (zh) * 2010-08-18 2014-12-10 中兴通讯股份有限公司 内存数据库的管理方法和装置
CN102063378A (zh) * 2010-12-17 2011-05-18 天津曙光计算机产业有限公司 一种在内核中高速分配连续内存的方法
CN102063378B (zh) * 2010-12-17 2013-02-13 曙光信息产业股份有限公司 一种在内核中高速分配连续内存的方法
CN102184140A (zh) * 2011-04-01 2011-09-14 航天恒星科技有限公司 一种面向实时数据库的表文件空间分配方法
CN102541758A (zh) * 2011-12-22 2012-07-04 深圳市融创天下科技股份有限公司 一种内存分配与释放的方法、***和终端设备
CN103678553A (zh) * 2013-12-06 2014-03-26 上海寰创通信科技股份有限公司 基于共享内存设计的无线终端数据库构建方法
CN104572810A (zh) * 2014-11-17 2015-04-29 深圳市光息谷科技发展有限公司 利用位图进行海量文件运算处理的方法
CN105930280A (zh) * 2016-05-27 2016-09-07 诸葛晴凤 一种面向非易失性内存的高效的页面组织和管理方法
CN105930280B (zh) * 2016-05-27 2019-07-05 诸葛晴凤 一种面向非易失性内存的高效的页面组织和管理方法
CN106445502A (zh) * 2016-08-30 2017-02-22 北京小米移动软件有限公司 图像显示方法及装置
CN108021442A (zh) * 2016-11-03 2018-05-11 阿里巴巴集团控股有限公司 释放物理内存的***、装置及方法
CN109246036A (zh) * 2017-07-10 2019-01-18 深圳市中兴微电子技术有限公司 一种处理分片报文的方法和装置
CN109246036B (zh) * 2017-07-10 2021-02-09 深圳市中兴微电子技术有限公司 一种处理分片报文的方法和装置
CN107590199A (zh) * 2017-08-18 2018-01-16 西安理工大学 一种面向内存的多线程数据库设计方法
CN107590199B (zh) * 2017-08-18 2019-12-24 西安理工大学 一种面向内存的多线程数据库设计方法
CN108121813A (zh) * 2017-12-27 2018-06-05 东软集团股份有限公司 数据管理方法、装置、***、存储介质及电子设备
CN108121813B (zh) * 2017-12-27 2020-09-18 东软集团股份有限公司 数据管理方法、装置、***、存储介质及电子设备
CN109284234A (zh) * 2018-09-05 2019-01-29 珠海昇生微电子有限责任公司 一种存储地址分配方法及***
CN109284234B (zh) * 2018-09-05 2020-12-04 珠海昇生微电子有限责任公司 一种存储地址分配方法及***
CN110618883A (zh) * 2019-09-26 2019-12-27 迈普通信技术股份有限公司 一种用于共享内存链表的方法、装置、设备及存储介质
CN112100022A (zh) * 2020-08-14 2020-12-18 北京航空航天大学 一种安卓***上监测Java对象内存泄漏时即时记录对象分配点的方法
CN113535392B (zh) * 2021-07-08 2023-07-11 中国人民解放军国防科技大学 基于cma实现支持大内存连续分配的内存管理方法及***
CN113284039A (zh) * 2021-07-16 2021-08-20 杭州安恒信息技术股份有限公司 一种位图管理方法、装置、设备及可读存储介质

Also Published As

Publication number Publication date
CN101676906B (zh) 2013-06-05

Similar Documents

Publication Publication Date Title
CN101676906B (zh) 一种利用位图对内存数据库空间进行管理的方法
CN100565530C (zh) 一种快照***及其使用方法
CN101458613B (zh) 一种混合分级阵列的实现方法、混合分级阵列和存储***
CN100478959C (zh) 嵌入式数据库的存储管理方法
CN104346357B (zh) 一种嵌入式终端的文件存取方法及***
CN100383792C (zh) 缓存数据库数据组织方法
CN110119425A (zh) 固态驱动器、分布式数据存储***和利用键值存储的方法
CN102460400A (zh) 基于管理程序的本地和远程虚拟内存页面管理
CN103597455A (zh) 用于大型数据缓存的有效标签存储
CN104395904A (zh) 高效的数据对象存储和检索
CN101510176B (zh) 通用操作***对cpu二级缓存访问的控制方法
CN103246613A (zh) 缓存装置及用于缓存装置的缓存数据获取方法
CN105335098A (zh) 一种基于存储级内存的日志文件***性能提高方法
CN102792285A (zh) 层级转换表控制
CN104115134A (zh) 复合非易失性存储设备的数据迁移
CN102262512A (zh) 一种实现磁盘阵列缓存分区管理的***、装置及方法
CN106502587A (zh) 磁盘数据管理方法和磁盘控制装置
CN100549945C (zh) 嵌入式***中基于spm的指令缓冲的实现方法
CN104778077A (zh) 基于随机和连续磁盘访问的高速核外图处理方法及***
CN102411632A (zh) 基于链表的内存数据库页式存储方法
CN101751245B (zh) 基于访存历史学习的处理器Cache写失效处理方法
CN103124959A (zh) 数据对象的组合
CN101458655B (zh) 内存管理方法、***及内存控制装置
CN102184140A (zh) 一种面向实时数据库的表文件空间分配方法
JP2002182953A (ja) 分散ファイル管理方法

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
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20151231

Address after: 523080, A1, 706-02, 704-01, 706-01, 704-02,, Tian An Digital City, 1 Golden Road, Nancheng District, Guangdong, China

Patentee after: Dongguan neighboring workers help Agel Ecommerce Ltd

Address before: 518057 Nanshan District Guangdong high tech Industrial Park, South Road, science and technology, ZTE building, Ministry of Justice

Patentee before: ZTE Corporation

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130605

Termination date: 20190918