[发明专利]灵活的内存列存储布置有效
申请号: | 201780056804.5 | 申请日: | 2017-08-30 |
公开(公告)号: | CN109716280B | 公开(公告)日: | 2021-05-11 |
发明(设计)人: | N·穆克尔杰;J·卡姆普;T·拉希里;M·科尔根;V·拉贾;V·科里史纳斯瓦秘;A·古朴塔;K·库尔卡尼 | 申请(专利权)人: | 甲骨文国际公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F16/22 |
代理公司: | 中国贸促会专利商标事务所有限公司 11038 | 代理人: | 周磊 |
地址: | 美国加*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 灵活 内存 存储 布置 | ||
本文描述了用于在集群数据库系统中的多个节点中的所选择节点的易失性存储器上分布数据库对象的不同部分的技术。该技术涉及存储将单元(数据库对象或其部分)与一个或多个数据库服务相关联的单元到服务映射。所述一个或多个数据库服务被映射到一个或多个节点。服务被映射到的节点可以包括不相交的数据库系统中的节点,只要那些数据库系统可以访问该单元的副本即可。数据库对象被与服务相关联的节点视为是内存启用的,并且被不与服务相关联的节点视为不是内存启用的。
技术领域
本发明涉及数据存储和检索技术,更具体而言,涉及跨多节点数据库的灵活的内存(in-memory)列存储布置。
背景技术
数据库系统通常在盘上存储数据库对象(例如,表、索引等),并按需将数据项从那些数据库对象加载到易失性存储器中。一旦加载到易失性存储器中,数据项就可以保持高速缓存在易失性存储器中,以便随后对相同数据项的访问不会招致访问盘的开销。例如,可以在高速缓存中替换那些数据项,以便在易失性存储器中腾出空间来存储已经被请求的其它数据项。
不是基于每个项加载各个数据项,而是可以将整个数据库对象或其部分加载到易失性存储器中。用于将整个数据库对象或其所选择的部分加载到易失性存储器中以加速查询处理的各种方法在2014年7月21日提交的标题为“Mirroring,In Memory,Data FromDisk To Improve Query Performance”的美国专利申请No.14/377,179中进行了描述,在本文被称为“Mirroring”申请,其内容整体并入本文。
根据Mirroring申请中描述的方法,数据对象或其部分的拷贝被高速缓存在易失性存储器中。对象的预加载的高速缓存拷贝的格式可能与盘上(on-disk)格式不同。例如,对象的内存版本可以是列为主的格式,而盘上版本可以按行为主的格式存储。对象(或其所选择的部分)的内存版本被称为内存压缩单元(IMCU),因为其中包含的数据常常被压缩。
集群数据库系统包括多个节点。当要将数据库对象预加载到易失性存储器中时,可以将数据库对象的拷贝加载到集群中的单个节点的易失性存储器中。为了获得预加载对象的好处,可以将与对象相关的工作运送到预加载对象的节点(“主机”节点)。例如,假设集群有五个节点N1、N2、N3、N4和N5。N1可以是表T1的指定主机。作为表T1的主机,N1将T1的拷贝加载到其易失性存储器中。如果节点N2、N3、N4或N5中的任何节点接收到访问来自T1的数据的请求,那么可以将访问那个数据的任务发送到节点N1。
不是让单个节点预加载整个数据库对象,而是可以将数据库对象划分为“块(chunk)”,并且可以在集群中的节点之间分布块。例如,表T1可以被划分为块C1、C2、C3、C4和C5,这些块被指派为分别由节点N1、N2、N3、N4和N5托管。在数据库对象被划分为分布在节点之间的块的场景中,每个节点响应于加载触发事件而将其指派的(一个或多个)数据库对象的块加载到其相应的易失性存储器中。涉及T1的任何给定块的工作可以被运送到已被指派为托管该块的节点。
用于进行托管指派的各种方法在2014年12月10日提交的标题为“DistributionOf An Object In Volatile Memory Across A Multi-Node Cluster”的美国专利申请No.14/565,906中描述,在本文称为“Distribution”申请,其内容整体并入本文。根据Distribution申请中描述的方法,集群中的所有节点都被视为托管块的候选,以最大化集群资源的利用。因此,可以使用诸如将块标识符散列到N个桶的散列函数之类的分布方法来进行托管指派,其中N是集群中的节点的总数。
虽然贯穿集群中的所有节点来散布块托管指派有助于负载平衡和并行性,但是仅考虑集群的节点并将集群中的所有节点视为平等候选的托管指派技术并不总是理想的。例如,在集群中的节点之间散布块托管指派不利用集群外部的资源,诸如不相交的数据库系统的资源。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于甲骨文国际公司,未经甲骨文国际公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201780056804.5/2.html,转载请声明来源钻瓜专利网。