Vol 4No 2 Journalof LüliangUniversity Apr 2014
·计算机科学研究·
MySQL云数据库服务的架构探索
刘 伟
(山西青年职业学院山西太原030032)
摘要:云计算是一种基于互联网的计算方式。通过这种方式共享的一软硬件资源和信息可以按需求提供给
计算机和其它设备。云计算的典型商业模式是PaaS。DaaS为Paas平台的 种基础能力它可以以My S QL数据库
为基础在部署和系统架构方面进行设计真正实现云数据库服务。
关键词:PaaS;DaaS;My S QL;多租户;高可用性
中图分类号: TP311 13 文献标识码: A 文章编号: 2095185X(2014)02004003
务( IaaS) 平台即服务( PaaS)和软件即服务 图1 PaaS云平台整体构架图
( S a aS) 。具体来说I aaS将基础互联网设备集成起 联网的PaaS云平台由应用托管平台及运行于此托来像旅馆一样分隔成不同的房间供企业租用这部 管平台之上的应用组成。 P a aS应用主要有三种类分市场一般由少数业界巨头把持。而 SaaS将软件 型第三方应用、管理应用和能力开放网关应用。显作为服务提供给用户打破以往大厂垄断的局面使 然这个平台必须提供可用的数据存储能力。大量的所有人都可以在上面自由挥洒创意。作为中间层 的应用开发者都希望以“云”的方式使用数据库服的P a aS是对二者的融合和发展。它打造出虚拟的 务相应地我们提出了 D a aS”( D atabas easa程序开发平台与操作系统平台让开发人员可以通 Servi ce) 表示“数据即服务 。DaaS作为PaaS云过网络撰写1 3程6序与服务普通消费者也可以在上面 平台的一个子系统存在。它可以为多租户提供高可运行程序 。 用性的数据库服务同时易于扩展、便于维护、对用
云计算平台“采”用的就是P aaS 的形式主要为应 户具有位置透明性。整个PaaS云平台的应用运行用开发者提供云服务。如图1所示面向移动互 流程如图2所示应用开发者通过PaaS管理平台购
收稿日期:2013-01-02
作者简介:刘 伟( 1980 ) 男山西太原人讲师研究方向为计算机应用技术。
40
买D aaS 的存储能力。管理平台为合法的用户提供 器层中的每台机器只提供计算能力并不提供存储访问数据库的用户名及密码以调用D aaS 的接口 并 能力。
为用户创建数据库且进行必要的初始化工作。应用 文件服务器为 DaaS提供存储能力目前为开发者的程序运行于虚拟机之上。用户使用获得的 AID磁盘通过NFS挂载的方式挂载到各个数据用户名和密码对DaaS上的数据进行访问和访问一 库服务器上。 AID磁盘保证了每写一次磁盘即在般的MySQL数据库没有什么不同。用户无需对程 存储介质上写两次通过数据冗余的方式提高系统序中数据库相关的代码进行特别的修改就可以使 的高可用性。
用DaaS来读取数据。这也是DaaS的一大优势。 2 DaaS隔离方式
D aaS系统将提供多租户、位置透明性、高可用 为实现多租户机制需实现数据隔离和性能性、可扩展性、较低的代码侵入性等功能。 隔离。
1 DaaS系统 2 1 数据隔离
基于MySQL的DaaS系统可分为三层架构:代 数据隔离有三种方式:
理服务器层、数据库服务器层和文件服务器层。 1) 分离数据库即不同租户的数据存在不同的
代理服务器层的主要功能是转发数据访问请求 数据库中;
至数据库服务器并提供控制功能。代理服务器层 2)共享数据库分离模式( S ch em a) 即不同租为双机温备份架构。两台主机对外展现同一个IP 户的数据存储在同一数据库的不同的S chem a中;地址主服务器与备用服务器都运行MySQLProxy 3) 共享数据库共享模式即不同租户的数据程序和UniHA程序。MyS QLPro xy的功能为透传 存储在同一数据库的相同的S chema中。
数据访问请求并进行控制。如数据库服务器宕机后 其中分离数据库的隔离性最好;共享数据库共将访问数据库请求路由至其他数据库服务器上; 享模式的共享性最好。在D a aS平台中每一个活跃Uniha程序用于实现温备份使主服务器与备用服 应用可能有大量用户访问一定要保证数据的安全务器互发心跳消息进行保活。在实际运行中只有 性和高可用性同时考虑到平台搭建成本和技术复主代理服务器接收数据访问请求。一旦主代理服务 杂度我们采用分离数据库的方式进行数据隔离。器宕机备用代理服务器将接替主代理服务器完成 2 2 性能隔离
数据访问请求的转发功能此过程对 DaaS使用者 性能隔离很大程度上取决于应用程序采用的是透明。 多线程方式还是多进程方式。MySQL为单进程、多
数据库服务器层是提供数据库服务的集群。集 线程的工作模式。 2212考虑到D a aS机器的硬盘大群中的每台机器都运行 MySQL程序。数据库服务 小CPU大小等情况此性能隔离方案为:在数据库
41
服务器上启动与CPU核数相同的MySQL实例对 3 3 底层A“ID存储避免数据丢失
负载较轻的用户共享MySQL进程;对负载较重的 AID是 edundant Array of Independent Disk”用户将独享一个MySQL进程。用户共享MySQL 的缩写中文意思是独立冗余磁盘阵列。就是将多进程或者独享MySQL进程是随着用户负载情况而 台硬盘通过 AID Controller结合成虚拟单台大容动态变化的。 量的硬盘使用3 121 。在D aaS系统中AID能实现3 DaaS高可用机制 可靠性、容错性和高传输速率等特性。
数据的高可用性要求用户在任何时刻都能够快 4 DaaS高可扩展机制
速获取数据数据在D a aS中不会丢失这就要求系 可扩展性是指DaaS支持在线的平滑扩容可统中不能有单点故障并且单一结点或者多个结点 增加存储资源和数据库服务处理能力用来为租户的失效并不会使整个服务停顿或者宕机。 DaaS主 提供更好的使用体验。
要通过以下几个方面来保证数据的高可用性: 4 1 扩展数据库服务器
3 1 温备份解决网络故障 在D aaS架构中可以扩展数据库服务器使得
在DaaS系统中采用UNIHA进行温备份Uni- 更多的数据库服务器能够为用户提供MySQL服务。HA是一套基于主备用双机切换机制、可提供网络 同时针对大数据量的请求(如sel ec t* ) 可以同时级和应用进程级温备份的高可用系统。 Uni HA支 在多个数据库服务器之中取数据并行提供服务降持Unix/Linux等操作系统平台能够面向软交换服 低响应时间。
务器、电信级应用服务器、FTP Server和Web Server 4 2 扩展数据存储
等各类服务器提供对外不间断服务的高可用能力 磁盘阵列存储空间有限若用户数据量过大可同时又独立于具体的上层服务应用。 通过购置新的磁盘阵列并使用 MySQL replication
3 2 改造MySQLProxy解决进程故障 技术将用户数据移动至新的磁盘阵列中。迁移完
在D aaS对外服务中不仅需要保证网络不中 成之后将用户请求路由至新的磁盘阵列中并删除断也要保证提供数据库服务的MySQL进程不中 用户在原始磁盘阵列中的数据即可。
断。这就需要MySQL进程一直处于正常运行状态 本文通过对多租户实现方案、解决网络可用性、而不能处于僵死状态。要保证对外服务的 MySQL 进程可用性和扩展性机制的分析给出基于 MySQL进程处于正常运行状态可以通过改造MySQL prox- 实现多租户、高可用性、可扩展的云数据库服务架构y来完成。通过对MySQL proxy的改造使其能够定 的设计和实现方法实现方案简单、可行。
时向MySQL服务进程发送MySQL请求报文。 若
MySQL进程回复请求报文即可说明进程处于正常 参考文献:
运行状态。若MySQL进程在一定时间内对请求报 1 刘 鹏 云计算M 北京:电子工业出版社2009 文没有应答则说明MySQL进程处于僵死状态。此 2郑阿奇MyS QL实用教程M 北京:电子工业出版社时采用如下方案实现高可靠性: 2009
通过MySQL proxy将用户请求切换到备用数据 3王珊萨师煊 数据库系统概论M 北京:高等教育库服务器之上并重启原数据服务器上的MySQL进 出版社2006
程以便备用数据库服务器宕机后切换回来。
Structure of MySQL Cloud Database Service
LIU Wei
(Shanxi Youth Vocational College Taiyuan Shanxi 030032 China)
Abstract:With its calculation based on the Internet cloud computing affords computers and other networking facili-ties sharelevel softwarehardware resources and information on demand PaaS platform is the typical businessmodel of cloud computing while DaaS is the cornerstone of PaaS By designing deployment and system frame withthe base on MySQLDaaS makes cloudtodate database service truly achieved
Key words:PaaS;D aaS;MySQL;multirenters; high availability
42
RAKsmart 商家八月份的促销活动今天更新。基本上和上个月的产品套餐活动差不多的,不过也是有简单的微调。对于RAKsmart商家还是比较了解的,他们家产品虽然这两年增加多个机房,以及在VPS主机方案上有丰富的机房和调整到一些自营机房,他们家的策划能力还是有限,基本上每个月的套餐活动都差不多。RAKsmart 在八月份看到有新增香港高防服务器可选,最高100GB防御。同时原来上个月缺货的日本独立...
GreenCloudVPS最近在新加坡DC2节点上了新机器,Dual Xeon Silver 4216 CPU,DDR4内存,10Gbps网络端口,推出了几款大硬盘VPS套餐,基于KVM架构,500GB磁盘起年付30美元。除了大硬盘套餐外,还加推了几款采用NVMe硬盘的常规套餐,最低年付20美元。不过需要提醒的是,机房非直连中国,尤其是电信用户ping值感人,包括新加坡DC1也是如此。大硬盘VPS...
也有在上个月介绍到糖果主机商12周年的促销活动,我有看到不少的朋友还是选择他们家的香港虚拟主机和美国虚拟主机比较多,同时有一个网友有联系到推荐入门的个人网站主机,最后建议他选择糖果主机的迷你主机方案,适合单个站点的。这次商家又推出所谓的秋季活动促销,这里一并整理看看这个服务商在秋季活动中有哪些值得选择的主机方案,比如虚拟主机最低可以享受六折,云服务器可以享受五折优惠。 官网地址:糖果主机秋季活动促...