CN102254021A - 基于虚拟机管理***的数据库构建方法 - Google Patents

基于虚拟机管理***的数据库构建方法 Download PDF

Info

Publication number
CN102254021A
CN102254021A CN 201110210166 CN201110210166A CN102254021A CN 102254021 A CN102254021 A CN 102254021A CN 201110210166 CN201110210166 CN 201110210166 CN 201110210166 A CN201110210166 A CN 201110210166A CN 102254021 A CN102254021 A CN 102254021A
Authority
CN
China
Prior art keywords
virtual machine
data
management system
tables
field
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
CN 201110210166
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.)
BEJING COMPUTING CENTER
Original Assignee
BEJING COMPUTING CENTER
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 BEJING COMPUTING CENTER filed Critical BEJING COMPUTING CENTER
Priority to CN 201110210166 priority Critical patent/CN102254021A/zh
Publication of CN102254021A publication Critical patent/CN102254021A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

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

Abstract

本发明公开了一种基于虚拟机管理***的数据库构建方法,包括:S1:根据用户输入的数据表创建参数创建数据表;S2:以虚拟机映像表和虚拟机实例表为主表,确定所述数据表中具有外键约束的字段,并给出所述字段在主表中的被参照字段;S3:对参照字段和被参照字段建立索引;S4:重复执行步骤S1~S3建立所有数据表,以完成数据库的构建。本发明增强了虚拟机管理调度***的扩展性、移植性、兼容性,提高了数据库构建代码的可重用性,降低了私有云平台开发的复杂程度。

Description

基于虚拟机管理***的数据库构建方法
技术领域
本发明涉及虚拟机***技术领域,特别涉及一种基于虚拟机管理***的数据库构建方法。
背景技术
虚拟机管理调度***是云计算平台中的核心组件,其基于基础设施即服务(Infrastructure as a Service,IaaS)的设计思想,能够为云平台提供运行和控制部署在各种物理资源上的虚拟机实例的能力,能够通过网络层的虚拟化构建虚拟机集群,从而在高度异构的分布式计算环境中,将客户端与具体的硬件体系结构隔离开来,动态地组织计算资源,灵活满足各种应用的不同需求,提高计算资源使用效率,实现云计算的低成本、低功耗、高性能、按需分配的重要特征。目前市场上较常用的虚拟机管理调度平台有VMware的vCenter和vSphere***,Citrix的XenCenter***,以及Amazon的EC2***,以及近来出现的OpenStack、OpenNebula等,其中前两者为商业软件,后三者有开源版本。由于受到众多开发者的支持,近年来Eucalyptus得到迅速发展,逐渐成为构建私有云平台的一个重要工具。
Eucalyptus(Elastic Utility Computing Architecture for Linking YourPrograms To Useful Systems)是Amazon弹性云平台的开源实现,允许用户按需求创建、启动、停止虚拟机实例。Eucalyptus由五部分组成:云控制器(Cloud Controller,CLC)组件、云存储控制器(Walrus)组件、集群控制器(Cluster Controller,CC)组件、存储控制器(StorageController,SC)组件、节点控制器(Node Controller,NC)组件。云控制器组件属于管理层,通过API对客户端提供Web服务,功能包括资源信息查询、平台资源调度、转发用户资源请求等。存储控制器组件主要面向存储资源,包括对资源的检索、修改、创建、删除等操作。Walrus将云端的存储资源抽象为一个统一的存储空间,数据和文件被称为对象,存放在数据桶(bucket)中,通过统一资源标识符(Uniform Resource Identifier,URI)访问。集群控制器组件和存储控制器组件位于云资源层的前端,功能是管理、调度位于本集群内的计算和存储资源。节点控制器组件安装在每个计算节点上,负责执行、监控、终止虚拟机实例,以及响应上层控制器组件的指令操作。
虽然Eucalyptus能够将底层的虚拟机资源池有效的管理起来,能够构建出不同的网络拓补结构,但是与表达层和数据层交互的功能仍不够完善,缺少底层数据库的访问接口。在业务针对性较强的***中,例如:在生物云平台、工业云平台中,还需要工程师结合实际领域,进行大量的重复性的代码开发工作,这就大大降低了云平台移植效率。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是:如何实现基于虚拟机管理***的数据库构建方法,使得用户能够根据不同的需求内容,方便地的添加虚拟机管理***功能模块,而不需要开发大量的代码。
(二)技术方案
为解决上述技术问题,本发明提供了一种基于虚拟机管理***的数据库构建方法,包括以下步骤:
S1:根据用户输入的数据表创建参数创建用户定制的数据表;
S2:以虚拟机映像表和虚拟机实例表为主表,确定用户定制的新数据表中具有外键约束的字段,并给出所述字段在主表中的被参照字段;
S3:对参照字段和被参照字段建立索引;
S4:重复执行步骤S1~S3建立所有用户定制的数据表,逐一建立所有的级联关系,直至完成数据库的构建。
其中,所述虚拟机映像表和虚拟机实例表为虚拟机管理***中预先定义,其数据结构和数据表内容固定。
其中,在创建完用户定制的数据表后,将用户数据导入创建的数据表。
其中,所述数据表创建参数包括:字段、类型、长度、字段能否为空和字段是否有索引键。
其中,在创建用户定制的数据库前,还包括对用户定制数据库访问流程的归一化的步骤,包括:
A1:根据用户的访问请求,虚拟机管理***的后台服务在物理机上访问虚拟机映像;
A2:访问虚拟机映像表;
A3:通过检索元数据表得到虚拟机映像的所有外键约束关系,并得到与外键约束相关联的关联表;
A4:访问所述关联表。
其中,若用户请求查询虚拟机实例的参数和状态,先由前台将需要查询的参数内容传送给后台服务,在此基础上对虚拟机实例表进行过滤,最后再对实例的关联表进行过滤检索,并返回得到的数据记录。
其中,所述访问包括:对数据表的创建、添加、修改、删除和查询操作。
(三)有益效果
本发明的基于虚拟机管理***的数据库构建方法增强了虚拟机管理调度***的扩展性、移植性、兼容性,提高了数据库构建代码的可重用性,降低了私有云平台开发的复杂程度。同时由于后台服务采用JAVA实现,保证了后台服务与界面/客户端的跨平台兼容性;使得虚拟机管理***可以在不同的云平台之间方便的部署、移植。
附图说明
图1是本发明实施例的一种基于虚拟机管理***的数据库构建方法;
图2是本发明实施例的一种基于虚拟机管理***的数据库访问的归一化流程。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
本发明采用JAVA开发虚拟机数据库管理***,基于MySQL实现数据库***。虚拟机管理***的架构如图1所示,首先客户端(浏览器或其他应用程序)发送基于HTTP的操作请求至前台,前台服务器上由Tomcat调用Web Service来响应,并根据后台服务的REST/SOAP接口发送相应的调度命令至虚拟机控制器上,完成对虚拟机操作的同时更新数据库。虚拟机管理***的基本功能包括映像管理与实例管理两个方面。为了能够实现与业务领域结合的数据库的自动化构建,虚拟机管理***必须满足两个条件,第一除了业务相关的数据库之外,管理***的基本数据库及数据结构必须是固定的、预先定义的;第二数据库操作必须可以进行抽象定义。因此虚拟机管理***的自动化数据库构建方法中,首先必须制定数据库访问流程的归一化标准,然后再结合访问流程和其他虚拟机管理操作,定义数据库构建方法。
如图1所示,为基于虚拟机管理***的数据库构建方法流程图,具体包括:
步骤S101,接收用户输入的数据表创建参数。虚拟机管理***的数据表构建过程中,需要用户定制的内容包括:关键字、类型、长度、能否为空、是否索引,以及与虚拟机映像表和虚拟机实例表的关联性,其中关联性通过将定制数据表的字段与映像表和实例表的字段建立外键约束而得到。
步骤S102,根据上述参数创建数据表。本实施例中,基于MySQL实现数据表的创建。
步骤S103,以虚拟机映像表和虚拟机实例表为主表,确定数据表中具有外键约束的字段,并给出所述字段在主表中的被参照字段,建立该数据表与虚拟机映像表和虚拟机实例表的关联关系。
步骤S104,判断是否所有外键级联关系都已建立,若是,则执行步骤S107,否则,执行步骤S105。
步骤S105,对虚拟机映像表、实例表中的被参照字段建立索引。
步骤S106,对新建的数据表中的参照字段建立索引。
步骤S107,使用PERL脚本批量导入用户数据。
重复执行步骤S101~S107建立所有数据表,以完成数据库的构建,导入用户数据也可以在数据库构建完成后导入。
在创建用户定制的数据库前,还包括对用户定制数据库的访问流程的归一化的步骤,如图2所示,具体包括:
图2中(a),首先用户通过web请求创建虚拟机映像或者更改虚拟机映像参数,后台服务调用XEN(一个开放源代码虚拟机监视器)、KVM及EUCALYPTUS的应用接口在物理机上创建虚拟机映像或者修改虚拟机映像参数,应用运行成功后,后台服务再添加或者修改虚拟机映像表,通过检索元数据表得到虚拟机映像表所有的外键约束关系,并得到关联表,相应添加/修改关联表的记录,完成后返回状态值。其中,元数据表是MySQL数据库中有专有的记录所有数据表格的外键约束关系的表。
图2中(b),用户查询虚拟机映像状态,先检索虚拟机映像表中的所有记录,并通过外键约束关系得到关联表,提取关联表中与用户提交的虚拟机映像参数相匹配的数据记录,返回检索内容。
图2中(c),如果用户请求查询虚拟机实例的参数和状态,先由前台将需要查询的参数内容传送给后台服务,在此基础上对虚拟机实例表进行过滤,最后再对实例的关联表进行过滤检索,并返回得到的数据记录。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。

Claims (7)

1.一种基于虚拟机管理***的数据库构建方法,其特征在于,包括以下步骤:
S1:根据用户输入的数据表创建参数创建用户定制的数据表;
S2:以虚拟机映像表和虚拟机实例表为主表,确定用户定制的新数据表中具有外键约束的字段,并给出所述字段在主表中的被参照字段;
S3:对参照字段和被参照字段建立索引;
S4:重复执行步骤S1~S3建立所有用户定制的数据表,逐一建立所有的级联关系,直至完成数据库的构建。
2.如权利要求1所述的基于虚拟机管理***的数据库构建方法,其特征在于,所述虚拟机映像表和虚拟机实例表为虚拟机管理***中预先定义,其数据结构和数据表内容固定。
3.如权利要求1所述的基于虚拟机管理***的数据库构建方法,其特征在于,在创建完用户定制的数据表后,将用户数据导入创建的数据表。
4.如权利要求1~3中任一项所述的基于虚拟机管理***的数据库构建方法,其特征在于,所述数据表创建参数包括:字段、类型、长度、字段能否为空和字段是否有索引键。
5.如权利要求4所述的基于虚拟机管理***的数据库构建方法,其特征在于,在创建用户定制的数据库前,还包括对用户定制数据库访问流程的归一化的步骤,包括:
A1:根据用户的访问请求,虚拟机管理***的后台服务在物理机上访问虚拟机映像;
A2:访问虚拟机映像表;
A3:通过检索元数据表得到虚拟机映像的所有外键约束关系,并得到与外键约束相关联的关联表;
A4:访问所述关联表。
6.如权利要求5所述的基于虚拟机管理***的数据库构建方法,其特征在于,若用户请求查询虚拟机实例的参数和状态,先由前台将需要查询的参数内容传送给后台服务,在此基础上对虚拟机实例表进行过滤,最后再对实例的关联表进行过滤检索,并返回得到的数据记录。
7.如权利要求5所述的基于虚拟机管理***的数据库构建方法,其特征在于,所述访问包括:对数据表的创建、添加、修改、删除和查询操作。
CN 201110210166 2011-07-26 2011-07-26 基于虚拟机管理***的数据库构建方法 Pending CN102254021A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201110210166 CN102254021A (zh) 2011-07-26 2011-07-26 基于虚拟机管理***的数据库构建方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201110210166 CN102254021A (zh) 2011-07-26 2011-07-26 基于虚拟机管理***的数据库构建方法

Publications (1)

Publication Number Publication Date
CN102254021A true CN102254021A (zh) 2011-11-23

Family

ID=44981285

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201110210166 Pending CN102254021A (zh) 2011-07-26 2011-07-26 基于虚拟机管理***的数据库构建方法

Country Status (1)

Country Link
CN (1) CN102254021A (zh)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103150202A (zh) * 2013-03-15 2013-06-12 汉柏科技有限公司 CloudStack兼容vCenter已有虚拟机的方法
CN103514222A (zh) * 2012-06-29 2014-01-15 无锡江南计算技术研究所 虚拟机映像的存储方法、管理方法、存储管理装置及***
CN103810212A (zh) * 2012-11-14 2014-05-21 阿里巴巴集团控股有限公司 一种数据库索引的自动创建方法及***
CN104317639A (zh) * 2014-10-17 2015-01-28 中国电子科技集团公司第二十八研究所 计算机云平台接管vCenter已有虚拟机的方法
CN106022007A (zh) * 2016-06-14 2016-10-12 中国科学院北京基因组研究所 面向生物组学大数据计算的云平台***及方法
CN106354548A (zh) * 2016-08-31 2017-01-25 天津南大通用数据技术股份有限公司 分布式数据库***中虚拟集群创建、管理方法及装置
CN107181808A (zh) * 2017-06-01 2017-09-19 安徽祥云科技有限公司 一种私有云***及运行方法
CN107277100A (zh) * 2016-03-30 2017-10-20 阿普福米克斯有限公司 用于近实时云基础设施策略实现和管理的***和方法
CN108984620A (zh) * 2018-06-14 2018-12-11 中国科学院重庆绿色智能技术研究院 一种动态可扩展的关系型数据库及其设计方法
CN109064241A (zh) * 2012-03-21 2018-12-21 英派尔科技开发有限公司 用于云服务的对维护成本敏感的记账
CN109684329A (zh) * 2018-12-13 2019-04-26 高新兴科技集团股份有限公司 一种基于数据中心设备的资源管理方法
US10868742B2 (en) 2017-03-29 2020-12-15 Juniper Networks, Inc. Multi-cluster dashboard for distributed virtualization infrastructure element monitoring and policy control
CN112632113A (zh) * 2020-12-31 2021-04-09 北京九章云极科技有限公司 一种算子管理方法和算子管理***
US11068314B2 (en) 2017-03-29 2021-07-20 Juniper Networks, Inc. Micro-level monitoring, visibility and control of shared resources internal to a processor of a host machine for a virtual environment
US11140039B2 (en) 2013-09-26 2021-10-05 Appformix Inc. Policy implementation and management
US11323327B1 (en) 2017-04-19 2022-05-03 Juniper Networks, Inc. Virtualization infrastructure element monitoring and policy control in a cloud environment using profiles
CN114710404A (zh) * 2022-04-22 2022-07-05 中国工商银行股份有限公司 基于配置管理***的虚拟服务器配置信息管理方法及装置
US11658874B2 (en) 2015-07-29 2023-05-23 Juniper Networks, Inc. Assessment of operational states of a computing environment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070276779A1 (en) * 2006-05-23 2007-11-29 International Business Machines Corporation Method for avoiding orphan entries in cascade delete in a configuration management database
CN101425060A (zh) * 2007-11-02 2009-05-06 英业达股份有限公司 数据库的数据表生成方法
CN101510275A (zh) * 2008-12-30 2009-08-19 北京环太中科软件股份有限公司 一种管理体系构建***及管理体系构建方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070276779A1 (en) * 2006-05-23 2007-11-29 International Business Machines Corporation Method for avoiding orphan entries in cascade delete in a configuration management database
CN101425060A (zh) * 2007-11-02 2009-05-06 英业达股份有限公司 数据库的数据表生成方法
CN101510275A (zh) * 2008-12-30 2009-08-19 北京环太中科软件股份有限公司 一种管理体系构建***及管理体系构建方法

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109064241A (zh) * 2012-03-21 2018-12-21 英派尔科技开发有限公司 用于云服务的对维护成本敏感的记账
CN103514222A (zh) * 2012-06-29 2014-01-15 无锡江南计算技术研究所 虚拟机映像的存储方法、管理方法、存储管理装置及***
CN103514222B (zh) * 2012-06-29 2017-09-19 无锡江南计算技术研究所 虚拟机映像的存储方法、管理方法、存储管理装置及***
CN103810212A (zh) * 2012-11-14 2014-05-21 阿里巴巴集团控股有限公司 一种数据库索引的自动创建方法及***
CN103810212B (zh) * 2012-11-14 2017-05-24 阿里巴巴集团控股有限公司 一种数据库索引的自动创建方法及***
CN103150202B (zh) * 2013-03-15 2017-04-19 汉柏科技有限公司 CloudStack兼容vCenter已有虚拟机的方法
CN103150202A (zh) * 2013-03-15 2013-06-12 汉柏科技有限公司 CloudStack兼容vCenter已有虚拟机的方法
US12021692B2 (en) 2013-09-26 2024-06-25 Juniper Networks, Inc. Policy implementation and management
US11140039B2 (en) 2013-09-26 2021-10-05 Appformix Inc. Policy implementation and management
CN104317639B (zh) * 2014-10-17 2017-08-22 中国电子科技集团公司第二十八研究所 计算机云平台接管vCenter已有虚拟机的方法
CN104317639A (zh) * 2014-10-17 2015-01-28 中国电子科技集团公司第二十八研究所 计算机云平台接管vCenter已有虚拟机的方法
US11658874B2 (en) 2015-07-29 2023-05-23 Juniper Networks, Inc. Assessment of operational states of a computing environment
CN107277100A (zh) * 2016-03-30 2017-10-20 阿普福米克斯有限公司 用于近实时云基础设施策略实现和管理的***和方法
CN106022007B (zh) * 2016-06-14 2019-03-26 中国科学院北京基因组研究所 面向生物组学大数据计算的云平台***及方法
CN106022007A (zh) * 2016-06-14 2016-10-12 中国科学院北京基因组研究所 面向生物组学大数据计算的云平台***及方法
CN106354548A (zh) * 2016-08-31 2017-01-25 天津南大通用数据技术股份有限公司 分布式数据库***中虚拟集群创建、管理方法及装置
US11240128B2 (en) 2017-03-29 2022-02-01 Juniper Networks, Inc. Policy controller for distributed virtualization infrastructure element monitoring
US10868742B2 (en) 2017-03-29 2020-12-15 Juniper Networks, Inc. Multi-cluster dashboard for distributed virtualization infrastructure element monitoring and policy control
US11888714B2 (en) 2017-03-29 2024-01-30 Juniper Networks, Inc. Policy controller for distributed virtualization infrastructure element monitoring
US11068314B2 (en) 2017-03-29 2021-07-20 Juniper Networks, Inc. Micro-level monitoring, visibility and control of shared resources internal to a processor of a host machine for a virtual environment
US12021693B1 (en) 2017-04-19 2024-06-25 Juniper Networks, Inc. Virtualization infrastructure element monitoring and policy control in a cloud environment using profiles
US11323327B1 (en) 2017-04-19 2022-05-03 Juniper Networks, Inc. Virtualization infrastructure element monitoring and policy control in a cloud environment using profiles
CN107181808A (zh) * 2017-06-01 2017-09-19 安徽祥云科技有限公司 一种私有云***及运行方法
CN107181808B (zh) * 2017-06-01 2020-05-08 安徽祥云科技有限公司 一种私有云***及运行方法
CN108984620A (zh) * 2018-06-14 2018-12-11 中国科学院重庆绿色智能技术研究院 一种动态可扩展的关系型数据库及其设计方法
CN108984620B (zh) * 2018-06-14 2021-02-05 中国科学院重庆绿色智能技术研究院 一种动态可扩展的关系型数据库的设计方法
CN109684329B (zh) * 2018-12-13 2021-04-23 高新兴科技集团股份有限公司 一种基于数据中心设备的资源管理方法
CN109684329A (zh) * 2018-12-13 2019-04-26 高新兴科技集团股份有限公司 一种基于数据中心设备的资源管理方法
CN112632113A (zh) * 2020-12-31 2021-04-09 北京九章云极科技有限公司 一种算子管理方法和算子管理***
CN114710404A (zh) * 2022-04-22 2022-07-05 中国工商银行股份有限公司 基于配置管理***的虚拟服务器配置信息管理方法及装置
CN114710404B (zh) * 2022-04-22 2024-04-12 中国工商银行股份有限公司 基于配置管理***的虚拟服务器配置信息管理方法及装置

Similar Documents

Publication Publication Date Title
CN102254021A (zh) 基于虚拟机管理***的数据库构建方法
JP6750102B2 (ja) マネージクエリサービス
CA2978889C (en) Opportunistic resource migration to optimize resource placement
US10152577B2 (en) Cross tenant data access
CN102375731B (zh) 一种免编码集成应用软件平台***
CN111061788A (zh) 一种基于云架构的多源异构数据转换整合***及其实现方法
CN104573115A (zh) 支持多类型数据库操作的集成接口的实现方法及***
CN104160381A (zh) 多租户环境中租户特定数据集的管理
CN102426582B (zh) 数据操作管理装置和数据操作管理方法
US20090254594A1 (en) Techniques to enhance database performance
CN102103518A (zh) 一种在虚拟化环境中管理资源的***及其实现方法
US11055352B1 (en) Engine independent query plan optimization
US10394805B2 (en) Database management for mobile devices
CN104657149A (zh) 一种存储***的管理模块的软件框架实现方法
CN104050042A (zh) Etl作业的资源分配方法及装置
US11526475B2 (en) Code generator platform for data transformation
CN103677759A (zh) 一种用于信息***性能提升的对象化并行计算方法及***
CN109150964B (zh) 一种可迁移的数据管理方法及服务迁移方法
CN113395314A (zh) 基于soa与分布式部署的规则引擎的架构***
CN110532058B (zh) 容器集群服务的管理方法、装置、设备及可读存储介质
US20220035844A1 (en) Centralized database system with geographically partitioned data
CN102929619A (zh) 一种跨硬件平台的过程自动化软件开发***
US10944814B1 (en) Independent resource scheduling for distributed data processing programs
US11615061B1 (en) Evaluating workload for database migration recommendations
US20180225333A1 (en) Data write/import performance in a database through distributed memory

Legal Events

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

Application publication date: 20111123