CN106777166A - 一种利用Docker容器进行虚拟内存数据库存储的实现方法 - Google Patents

一种利用Docker容器进行虚拟内存数据库存储的实现方法 Download PDF

Info

Publication number
CN106777166A
CN106777166A CN201611189171.9A CN201611189171A CN106777166A CN 106777166 A CN106777166 A CN 106777166A CN 201611189171 A CN201611189171 A CN 201611189171A CN 106777166 A CN106777166 A CN 106777166A
Authority
CN
China
Prior art keywords
data
carried out
virtual
docker
disk
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.)
Pending
Application number
CN201611189171.9A
Other languages
English (en)
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.)
Jinan Inspur Hi Tech Investment and Development Co Ltd
Original Assignee
Jinan Inspur Hi Tech Investment and Development 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 Jinan Inspur Hi Tech Investment and Development Co Ltd filed Critical Jinan Inspur Hi Tech Investment and Development Co Ltd
Priority to CN201611189171.9A priority Critical patent/CN106777166A/zh
Publication of CN106777166A publication Critical patent/CN106777166A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/256Integrating or interfacing systems involving database management systems in federated or virtual databases
    • 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/0662Virtualisation aspects
    • G06F3/0667Virtualisation aspects at data level, e.g. file, record or object virtualisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及虚拟存储设计技术领域,特别涉及一种利用Docker容器进行虚拟内存数据库存储的实现方法。本发明的一种利用Docker容器进行虚拟内存数据库存储的实现方法,是在磁盘和物理内存之间构建Docker容器虚拟数据库,所述的Docker容器虚拟数据库内存有磁盘数据库中对应的数据副本,所述的副本包含实际数据经常访问的信息,用户通过程序直接访问Docker容器虚拟数据库中的数据副本。本发明的一种利用Docker容器进行虚拟内存数据库存储的实现方法,其能够模拟内存数据库存储数据的同时,扩大了数据库的容量,提高了数据访问的效率。

Description

一种利用Docker容器进行虚拟内存数据库存储的实现方法
技术领域
本发明涉及虚拟存储设计技术领域,特别涉及一种利用Docker容器进行虚拟内存数据库存储的实现方法。
背景技术
内存数据库是指在内存中直接进行数据的存储操作,是一种存放在内存中的数据库,它具有高效的访问效率,能够极大地提高数据处理能力。
数据库访问是从数据库中进行数据的存储操作,磁盘数据库存放数据的位置是物理磁盘中,程序访问磁盘的速度低,影响数据处理的效率。
要提高数据访问的效率,可以分为四个层次,一是减少对数据的访问,即减少磁盘的访问;二是返回更少的数据,即减少网络传输或磁盘访问;三是减少交互次数;四是减少服务器CPU的开销。
Docker是一个开源的容器引擎,Docker架构允许多个容器共享同一个内核的情况下完全隔离运行,它对于操作系统没有要求,可以实现轻量级的虚拟环境。Docker中容器停止后,对其中的操作会丢失,类似于内存的数据存储特性,且容器中数据存储相比磁盘速度高。
Docker具有简单、高效、快捷的迭代策略,能够将配置更新及时反映到生产环境中,具有高效的自动化管理能力。
现有技术下,针对物理磁盘中的内存数据库的处理效率受到限制。
发明内容
为了解决现有技术的问题,本发明提供了一种利用Docker容器进行虚拟内存数据库存储的实现方法,其能够模拟内存数据库存储数据的同时,扩大了数据库的容量,提高了数据访问的效率。
本发明所采用的技术方案如下:
一种利用Docker容器进行虚拟内存数据库存储的实现方法,是在磁盘和物理内存之间构建Docker容器虚拟数据库,所述的Docker容器虚拟数据库内存有磁盘数据库中对应的数据副本,所述的副本包含实际数据经常访问的信息,用户通过程序直接访问Docker容器虚拟数据库中的数据副本。
Docker容器虚拟数据库分为高频访问数据层、固定访问数据层和索引层三层结构,用户访问数据时,逐层进行遍历,索引层中对应磁盘数据库相应数据的索引,在上面两层遍历无果时,进行磁盘数据库访问。
用户访问Docker容器虚拟数据库的速度介于物理内存访问和磁盘访问之间。
本发明是采用Docker容器方式在磁盘与物理内存之间构建一个虚拟环境,将存储在磁盘上的数据库进行映射,程序可以访问虚拟数据库中的数据资源,访问速度介于内存访问和磁盘访问之间,扩大了数据库存储的容量。
本发明提供的技术方案带来的有益效果是:
利用Docker容器在内存与磁盘交互的中间层构建一个虚拟环境,简称虚拟数据库,该数据库中存有磁盘数据库对应的数据简易副本,该副本包含实际数据经常访问的信息,用户可以通过程序直接访问虚拟数据库中的数据,同时,将虚拟数据库进行分层管理,分为高频访问数据层、固定访问数据层和索引层三层结构。用户访问数据时,逐层进行遍历。索引层中对应磁盘数据库相应数据的索引,在上面两层遍历无果时,进行磁盘数据库访问,通过此过程,模拟内存数据库存储数据的同时,扩大了数据库的容量,提高了数据访问的效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的一种利用Docker容器进行虚拟内存数据库存储的实现方法的实现原理图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一
如附图1所示,使用Docker创建一个虚拟内存环境,该环境中保存磁盘数据库中的数据副本,该环境类似于Cache作用,称为Docker容器虚拟数据库。采用容器配置文件配置容器,将虚拟数据库进行分层处理,分为高频访问数据层、固定访问数据层和索引层三层。
高频访问数据层中包含程序最常访问的数据副本,通过磁盘调度算法进行该层数据的填充操作;固定数据访问层是某一程序固定访问的数据层,例如系统登录程序固定访问用户数据等。索引层是虚拟数据库与磁盘数据库之间的映射层,当上两层没有对应的数据资源时,通过索引层进行磁盘数据的访问。
依据“最长时间未访问则替换”的原则,当高频访问层中的数据需要进行替换时,则查找该层最长时间未访问的数据元组,进行替换;设置替换的元组数量,可以进行批量的替换。替换原则、替换数目等属性可以通过容器配置文件进行设置。
用户访问数据时,逐层进行遍历。索引层中对应磁盘数据库相应数据的索引,在上面两层遍历无果时,最终进行磁盘数据库访问。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (3)

1.一种利用Docker容器进行虚拟内存数据库存储的实现方法,是在磁盘和物理内存之间构建Docker容器虚拟数据库,所述的Docker容器虚拟数据库内存有磁盘数据库中对应的数据副本,所述的副本包含实际数据经常访问的信息,用户通过程序直接访问Docker容器虚拟数据库中的数据副本。
2.根据权利要求1所述的一种利用Docker容器进行虚拟内存数据库存储的实现方法,其特征在于,所述的Docker容器虚拟数据库分为高频访问数据层、固定访问数据层和索引层三层结构,用户访问数据时,逐层进行遍历,索引层中对应磁盘数据库相应数据的索引,在上面两层遍历无果时,进行磁盘数据库访问。
3.根据权利要求1所述的一种利用Docker容器进行虚拟内存数据库存储的实现方法,其特征在于,用户访问Docker容器虚拟数据库的速度介于物理内存访问和磁盘访问之间。
CN201611189171.9A 2016-12-21 2016-12-21 一种利用Docker容器进行虚拟内存数据库存储的实现方法 Pending CN106777166A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611189171.9A CN106777166A (zh) 2016-12-21 2016-12-21 一种利用Docker容器进行虚拟内存数据库存储的实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611189171.9A CN106777166A (zh) 2016-12-21 2016-12-21 一种利用Docker容器进行虚拟内存数据库存储的实现方法

Publications (1)

Publication Number Publication Date
CN106777166A true CN106777166A (zh) 2017-05-31

Family

ID=58896729

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611189171.9A Pending CN106777166A (zh) 2016-12-21 2016-12-21 一种利用Docker容器进行虚拟内存数据库存储的实现方法

Country Status (1)

Country Link
CN (1) CN106777166A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109947789A (zh) * 2019-01-28 2019-06-28 平安科技(深圳)有限公司 一种多数据库的数据处理的方法、装置、计算机设备及存储介质
CN111259380A (zh) * 2017-08-22 2020-06-09 海光信息技术有限公司 内存页转移方法和函数调用方法
CN113032390A (zh) * 2021-02-05 2021-06-25 浙江大学 一种内存数据库中的工作负载自适应学习型索引方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102737127A (zh) * 2012-06-20 2012-10-17 厦门聚海源物联网络技术有限公司 一种海量数据存储方法
CN102955845A (zh) * 2012-10-23 2013-03-06 北京亿赞普网络技术有限公司 数据访问方法、装置与分布式数据库系统
CN104463492A (zh) * 2014-12-23 2015-03-25 国家电网公司 一种电力系统云仿真平台的运营管理方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102737127A (zh) * 2012-06-20 2012-10-17 厦门聚海源物联网络技术有限公司 一种海量数据存储方法
CN102955845A (zh) * 2012-10-23 2013-03-06 北京亿赞普网络技术有限公司 数据访问方法、装置与分布式数据库系统
CN104463492A (zh) * 2014-12-23 2015-03-25 国家电网公司 一种电力系统云仿真平台的运营管理方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
LIMENGJUN112: "内存数据库的原理及应用", 《百度文库》 *
田玉靖等: "基于docker的redis缓存架构的研究", 《电脑知识与技术》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111259380A (zh) * 2017-08-22 2020-06-09 海光信息技术有限公司 内存页转移方法和函数调用方法
CN109947789A (zh) * 2019-01-28 2019-06-28 平安科技(深圳)有限公司 一种多数据库的数据处理的方法、装置、计算机设备及存储介质
CN109947789B (zh) * 2019-01-28 2023-12-19 平安科技(深圳)有限公司 一种多数据库的数据处理的方法、装置、计算机设备及存储介质
CN113032390A (zh) * 2021-02-05 2021-06-25 浙江大学 一种内存数据库中的工作负载自适应学习型索引方法

Similar Documents

Publication Publication Date Title
US10303646B2 (en) Memory sharing for working data using RDMA
US11175832B2 (en) Thread groups for pluggable database connection consolidation in NUMA environment
Liao et al. Multi-dimensional index on hadoop distributed file system
CN109299113B (zh) 具有存储感知的混合索引的范围查询方法
US10275489B1 (en) Binary encoding-based optimizations at datastore accelerators
CN105938458B (zh) 软件定义的异构混合内存管理方法
CN104850572A (zh) HBase非主键索引构建与查询方法及其系统
CN103455531B (zh) 一种支持高维数据实时有偏查询的并行索引方法
WO2018120171A1 (zh) 一种用于存储过程的执行方法、设备以及系统
CN110188108A (zh) 数据存储方法、装置、系统、计算机设备及存储介质
CN106777166A (zh) 一种利用Docker容器进行虚拟内存数据库存储的实现方法
US11513854B1 (en) Resource usage restrictions in a time-series database
CN110597935A (zh) 一种空间分析方法和装置
CN103617276A (zh) 一种分布式层次化的rdf数据的存储方法
WO2024131542A1 (zh) 存储数据的方法、装置、计算机设备、产品及存储介质
CN108520296B (zh) 一种基于深度学习芯片动态cache分配的方法和装置
CN104424189B (zh) 基于云平台的定位解算方法和系统
CN104571946B (zh) 一种支持逻辑电路快速查询的存储器装置及其访问方法
US10146833B1 (en) Write-back techniques at datastore accelerators
US20150363118A1 (en) Techniques for harmonic-resistant file striping
US9922090B1 (en) System and method for automatic vertical decomposition of a table for improving input/output and memory utilization in a database
CN104391947B (zh) 海量gis数据实时处理方法及系统
CN110096515A (zh) 一种基于三元组的rdf数据管理方法、装置及存储介质
CN107276833A (zh) 一种节点信息管理方法及装置
CN109246660A (zh) 一种管理本体的方法以及m2m平台

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20170531

RJ01 Rejection of invention patent application after publication