【作者主页】Francek Chen【专栏介绍】⌈ ⌈⌈大数据技术原理与应用⌋ ⌋⌋专栏系统介绍大数据的相关知识分为大数据基础篇、大数据存储与管理篇、大数据处理与分析篇、大数据应用篇。内容包含大数据概述、大数据处理架构Hadoop、分布式文件系统HDFS、分布式数据库HBase、NoSQL数据库、云数据库、MapReduce、Hadoop再探讨、数据仓库Hive、Spark、流计算、Flink、图计算、数据可视化以及大数据在互联网领域、生物医学领域的应用和大数据的其他应用。【GitCode】专栏资源保存在我的GitCode仓库https://gitcode.com/Morse_Chen/BigData_principle_application。文章目录一、云计算是云数据库兴起的基础二、云数据库的概念三、云数据库的特性一动态可扩展二高可用性三较低的使用代价四易用性五高性能六免维护七安全四、云数据库是个性化数据存储需求的理想选择五、云数据库与其他数据库的关系小结云计算的发展推动了云数据库的兴起本文介绍云数据库的概念、特性以及云数据库与其他数据库的关系。一、云计算是云数据库兴起的基础云计算是分布式计算、并行计算、效用计算、网络存储、虚拟化、负载均衡等计算机和网络技术发展融合的产物。云计算是由一系列可以动态升级和被虚拟化的资源组成的用户无须掌握云计算的技术只要通过网络就可以访问这些资源。云计算主要包括 3 种类型即 IaaSInfrastructure as a Service、PaaSPlatform as a Service和 SaaSSoftware as a Service。以 SaaS 为例它极大地改变了用户使用软件的方式用户不再需要购买软件安装到本地计算机上只要通过网络就可以使用各种软件。SaaS 厂商将应用软件统一部署在自己的服务器上用户可以在线购买、在线使用、按需付费。成立于 1999 年的 Salesforce 公司是 SaaS 厂商的先驱提供 SaaS 云服务并提出了“终结软件”的口号。在该公司的带动下其他 SaaS 厂商如雨后春笋般大量涌现。与传统的软件使用方式相比云计算这种方式具有明显的优势。传统的软件使用方式和云计算方式的比较如表1所示。表1 传统的软件使用方式和云计算方式的比较项目传统的软件使用方式云计算方式获得软件的方式自己投资建设机房搭建硬件平台购买软件在本地安装直接购买云计算厂商的软件服务使用方式本地安装本地使用软件运行在云计算厂商服务器上用户在任何有网络接入的地方都可以通过网络使用软件服务付费方式需要一次性支付较大的初期投入成本包括建设机房、配置硬件、购买各种软件操作系统、杀毒软件、业务软件等零成本投入就可以立即获得所需的IT资源只需要为所使用的资源付费多用多付少用少付极其廉价维护成本需要自己花钱聘请专业技术人员维护零成本所有维护工作由云计算厂商负责获得IT资源的速度需要耗费较长时间建设机房、购买和安装调试设备和系统随时可用购买服务后立即可用共享方式自己建设自给自足云计算厂商建设好云计算服务平台后同时为众多用户提供服务维修速度出现病毒、系统崩溃等问题时需要自己聘请IT人员维护很多普通企业的IT人员技术能力有限碰到一些问题甚至需要寻找外援通常不能立即解决出现任何系统问题时云计算厂商都会凭借其专业化团队给出及时的响应确保云服务的正常使用资源利用率利用率较低投入大量资金建设的IT系统往往只供企业自己使用当企业不需要那么多IT资源时就会产生资源浪费利用率较高每天都可以为大量用户提供服务当存在闲置资源时云计算管理系统会自动关闭和退出多余资源当需要增加资源时又会自动启动和加入相关资源企业搬迁时的成本当企业搬迁时原来的机房设施就要作废需要在新地方重新投入较大成本建设机房企业无论搬迁到哪里都可以通过网络重新零成本立即获得云计算服务因为资源在云端不在用户端企业搬迁不会影响到IT资源的分布资源可拓展性企业自己建设的IT基础设施的服务能力通常是有上限的当企业业务量突然增加时现有的IT基础设施无法立即满足需求就需要花费时间和金钱购买和安装新设备当业务高峰过去时多余的设备就会闲置造成资源浪费云计算厂商可以为企业提供近乎无限的IT资源存储和计算等资源企业想用多少都可以立即获得当企业不使用时只需退订多余资源几乎不存在资源闲置问题二、云数据库的概念云数据库是部署在云计算环境中的虚拟化数据库。云数据库是在云计算的大背景下发展起来的一种新兴的共享基础架构的方法它极大地增强了数据库的存储能力避免了人员、硬件、软件的重复配置让软、硬件升级变得更加容易同时虚拟化了许多后端功能。云数据库具有高可扩展性、高可用性、采用多租形式和支持资源有效分发等特点。在云数据库中所有数据库功能都是在云端提供的客户端可以通过网络远程使用云数据库提供的服务见图1。客户端不需要了解云数据库的底层细节所有的底层硬件都已经被虚拟化对客户端而言是透明的客户端就像在使用一个运行在单一服务器上的数据库一样非常方便、容易同时可以获得理论上近乎无限的存储和处理能力。需要指出的是有人认为数据库属于应用基础设施即中间件因此把云数据库列入 PaaS 的范畴也有人认为数据库本身也是一种应用软件因此把云数据库划入 SaaS。对于这个问题把云数据库划入 SaaS但同时认为云数据库到底应该被划入 PaaS 还是 SaaS这并不是最重要的。实际上云计算 IaaS、PaaS 和 SaaS 这 3 个层次之间的界限有些时候也不是非常清晰。对于云数据库而言最重要的就是它允许用户以服务的方式通过网络获得云端的数据库功能。图1 云数据库示意三、云数据库的特性一动态可扩展理论上云数据库具有无限可扩展性可以满足不断增加的数据存储需求。在面对不断变化的条件时云数据库可以表现出很好的弹性。例如对于一个从事产品零售的电子商务公司会存在季节性或突发性的产品需求变化或者对于类似 Animoto 的网络社区站点可能会经历一个指数级的用户增长阶段。这时它们就可以分配额外的数据库存储资源来处理增加的需求这个过程只需要几分钟。一旦需求过去以后它们就可以立即释放这些资源。二高可用性云数据库不存在单点失效问题。如果一个节点失效了剩余的节点就会接管未完成的事务。而且在云数据库中数据通常是冗余存储的在地理上也是分散的。诸如 Google、Amazon 和 IBM 等大型云计算供应商具有分布在世界范围内的数据中心通过在不同地理区间内进行数据复制可以提供高水平的容错能力。例如Amazon SimpleDB 会在不同的区域内进行数据复制这样即使某个区域内的云设施失效也可以保证数据继续可用。三较低的使用代价云数据库厂商通常采用多租户Multi-tenancy的形式同时为多个用户提供服务这种共享资源的形式对于用户而言可以节省开销而且用户采用“按需付费”的方式使用云计算环境中的各种软、硬件资源不会产生不必要的资源浪费。另外云数据库底层存储通常采用大量廉价的商业服务器这大大降低了用户开销。腾讯云数据库官方公布的资料显示当实现类似的数据库性能时如果采用自己投资自建 MySQL 的方式则成本为每台服务器每天 50.6 元实现双机容灾需要 2 台服务器即成本为每天 101.2 元平均存储成本是每吉字节每天 0.25 元平均 1 元可获得的每秒查询率Query Per SecondQPS为每秒 24 次而如果采用腾讯云数据库产品企业不需要投入任何初期建设成本每天成本仅为 72 元平均存储成本为每吉字节每天 0.18 元平均 1 元可获得的 QPS 为每秒 83 次相对于自建云数据库平均 1 元获得的 QPS 提高为原来的 346%具有极高的性价比。四易用性使用云数据库的用户不必控制运行原始数据库的机器也不必了解它身在何处。用户只需要一个有效的连接字符串URL就可以开始使用云数据库而且就像使用本地数据库一样。许多基于 MySQL 的云数据库产品如腾讯云数据库、阿里云 RDS 等完全兼容 MySQL 协议用户可通过基于 MySQL 协议的客户端或者 API 访问实例。用户可无缝地将原有 MySQL 应用迁移到云存储平台无须进行任何代码改造。五高性能云数据库采用大型分布式存储服务集群支撑海量数据访问多机房自动冗余备份自动读写分离。六免维护用户不需要关注后端机器及数据库的稳定性、网络问题、机房灾难、单库压力等各种风险云数据库服务商提供“7×24h”的专业服务扩容和迁移对用户透明且不影响服务并且可以提供全方位、全天候立体式监控用户无须半夜去处理数据库故障。七安全云数据库提供数据隔离不同应用的数据会存在于不同的数据库中而不会相互影响提供安全性检查可以及时发现并拒绝恶意攻击性访问提供数据多点备份确保不会发生数据丢失。以腾讯云数据库为例开发者可快速在腾讯云中申请云服务器实例资源通过 IP/PORT 直接访问 MySQL 实例完全无须再安装 MySQL 实例可以一键迁移原有 SQL 应用到腾讯云平台这大大节省了人力成本同时该云数据库完全兼容 MySQL 协议可通过基于 MySQL 协议的客户端或 API 便捷地访问实例。此外腾讯云数据库还采用了大型分布式存储服务集群支撑海量数据访问7×24h 的专业存储服务可以提供高达 99.99%服务可用性的 MySQL 集群服务并且数据可靠性超过 99.999%。自建数据库和腾讯云数据库的比较见表2。表2 自建数据库和腾讯云数据库的比较项目自建数据库腾讯云数据库数据安全性开发者自行解决成本较高昂15 种类型备份数据保证数据安全服务可用性99.99%高可靠性数据备份零花费系统自动多时间点数据备份维护成本零成本专业团队 7×24h 帮助维护实例扩容一键式直接扩容安全可靠资源利用率按需申请资源利用率高达 99.9%技术支持专业团队一对一指导、QQ 远程协助开发者四、云数据库是个性化数据存储需求的理想选择在大数据时代每个企业几乎每天都在产生大量的数据。企业类型不同对于存储的需求也千差万别而云数据库可以很好地满足不同企业的个性化存储需求。首先云数据库可以满足大企业的海量数据存储需求。云数据库在当前数据爆炸的大数据时代具有广阔的应用前景。传统的关系数据库难以横向扩展通常无法存储如此海量的数据。因此具有高可扩展性的云数据库就成为企业海量数据存储管理的很好选择。其次云数据库可以满足中小企业的低成本数据存储需求。中小企业在 IT 基础设施方面的投入比较有限因此非常渴望从第三方方便、快捷、廉价地获得数据库服务。云数据库厂商采用多租户形式同时为多个用户提供服务降低了单个用户的使用成本而且用户使用云数据库服务通常按需付费不会浪费资源造成额外支出。因此云数据库使用成本很低对于中小企业而言可以大大降低企业的信息化门槛让企业在付出较低成本的同时获得优质的专业级数据库服务从而有效提升企业信息化水平。另外云数据库可以满足企业动态变化的数据存储需求。企业在不同时期需要存储的数据量是不断变化的有时增加有时减少。在小规模应用的情况下系统负载的变化可以由系统空闲的多余资源来处理但是在大规模应用的情况下传统的关系数据库由于其伸缩性较差不仅无法满足应用需求而且会给企业带来高昂的存储成本和管理开销。而云数据库的良好伸缩性可以让企业在需求增加时立即获得需要的数据库资源在需求减少时立即释放多余的数据库资源较好地满足企业的动态数据存储需求。当然并不是说云数据库可以满足个性化数据存储需求就意味着企业一定要把数据存放到云数据库中。到底选择自建数据库还是选择云数据库取决于企业自身。对于一些大型企业目前通常采用自建数据库一方面是由于企业财力比较雄厚有内部的 IT 团队负责数据库维护另一方面数据是现代企业的核心资产涉及很多高级商业机密企业出于数据安全考虑不愿意把内部数据保存在公有云的数据库中尽管云数据库供应商也会一直强调数据的安全性但是这依然不能打消企业的顾虑。对于一些财力有限的中小企业而言IT 预算比较有限通常不可能投入大量资金建设和维护数据库企业数据并非特别敏感因此云数据库这种前期零投入、后期免维护的数据库服务可以很好地满足他们的需求。五、云数据库与其他数据库的关系关系数据库采用关系数据模型NoSQL 数据库采用非关系数据模型二者都属于不同的数据库技术。从数据模型的角度来说云数据库并非一种全新的数据库技术而是以服务的方式提供数据库功能的技术。云数据库并没有专属于自己的数据模型云数据库所采用的数据模型可以是关系数据库所使用的关系模型如微软的 SQL Azure 云数据库、阿里云 RDS 都采用了关系模型也可以是 NoSQL 数据库所使用的非关系模型如 Amazon DynamoDB 云数据库采用的是“键值”存储。同一个公司也可能提供采用不同数据模型的多种云数据库服务例如百度云数据库提供了 3 种数据库服务即分布式关系数据库服务基于关系数据库 MySQL、分布式非关系数据库服务基于文档数据库 MongoDB、键值型非关系数据库服务基于键值数据库 Redis。实际上许多公司在开发云数据库时后端数据库都直接使用现有的各种关系数据库或 NoSQL 数据库产品。比如腾讯云数据库采用 MySQL 作为后端数据库微软的 SQL Azure 云数据库采用 SQL Server 作为后端数据库。从市场的整体应用情况来看由于 NoSQL 应用对开发者要求较高而 MySQL 拥有成熟的中间件、运维工具已经形成一个良性的生态系统等特性因此从现阶段来看云数据库的后端数据库以 MySQL 为主、NoSQL 为辅。在云数据库这种 IT 服务模式出现之前企业要使用数据库就需要自建关系数据库或 NoSQL 数据库它们被称为“自建数据库”。云数据库与这些“自建数据库”最本质的区别在于云数据库是部署在云端的数据库采用 SaaS 模式用户可以通过网络租赁使用数据库服务在有网络的地方都可以使用不需要前期投入和后期维护使用价格比较低廉。云数据库对用户而言是完全透明的用户根本不知道自己的数据被保存在哪里。云数据库通常采用多租户模式即多个租户共用一个实例租户的数据既有隔离又有共享从而解决了数据存储的问题同时降低了用户使用数据库的成本。而自建的关系数据库和 NoSQL 数据库本身都没有采用 SaaS 模式需要用户自己搭建 IT 基础设施和配置数据库成本相对而言比较高而且需要自己进行机房维护和数据库故障处理。小结云数据库是部署在云计算环境中的虚拟化数据库依托 IaaS、PaaS、SaaS 等云服务模式允许用户通过网络远程使用数据库功能无需关注底层硬件。其核心特性包括动态可扩展理论上无限存储、高可用性多节点冗余、较低使用代价按需付费、多租户共享、易用性兼容MySQL协议、高性能、免维护、安全可靠。云数据库能很好满足个性化存储需求大企业需要海量数据扩展能力中小企业渴望低成本、零维护方案动态变化的企业也能灵活调整资源。与自建数据库相比云数据库省去前期投入和专业维护但部分大型企业出于数据安全顾虑仍选择自建。云数据库本身不限定数据模型既可采用关系模型如MySQL也可采用非关系模型如键值、文档当前市场以 MySQL 类云数据库为主。欢迎点赞 | 收藏⭐ | 评论✍ | 关注
【大数据存储与管理】云数据库:01 云数据库概述
【作者主页】Francek Chen【专栏介绍】⌈ ⌈⌈大数据技术原理与应用⌋ ⌋⌋专栏系统介绍大数据的相关知识分为大数据基础篇、大数据存储与管理篇、大数据处理与分析篇、大数据应用篇。内容包含大数据概述、大数据处理架构Hadoop、分布式文件系统HDFS、分布式数据库HBase、NoSQL数据库、云数据库、MapReduce、Hadoop再探讨、数据仓库Hive、Spark、流计算、Flink、图计算、数据可视化以及大数据在互联网领域、生物医学领域的应用和大数据的其他应用。【GitCode】专栏资源保存在我的GitCode仓库https://gitcode.com/Morse_Chen/BigData_principle_application。文章目录一、云计算是云数据库兴起的基础二、云数据库的概念三、云数据库的特性一动态可扩展二高可用性三较低的使用代价四易用性五高性能六免维护七安全四、云数据库是个性化数据存储需求的理想选择五、云数据库与其他数据库的关系小结云计算的发展推动了云数据库的兴起本文介绍云数据库的概念、特性以及云数据库与其他数据库的关系。一、云计算是云数据库兴起的基础云计算是分布式计算、并行计算、效用计算、网络存储、虚拟化、负载均衡等计算机和网络技术发展融合的产物。云计算是由一系列可以动态升级和被虚拟化的资源组成的用户无须掌握云计算的技术只要通过网络就可以访问这些资源。云计算主要包括 3 种类型即 IaaSInfrastructure as a Service、PaaSPlatform as a Service和 SaaSSoftware as a Service。以 SaaS 为例它极大地改变了用户使用软件的方式用户不再需要购买软件安装到本地计算机上只要通过网络就可以使用各种软件。SaaS 厂商将应用软件统一部署在自己的服务器上用户可以在线购买、在线使用、按需付费。成立于 1999 年的 Salesforce 公司是 SaaS 厂商的先驱提供 SaaS 云服务并提出了“终结软件”的口号。在该公司的带动下其他 SaaS 厂商如雨后春笋般大量涌现。与传统的软件使用方式相比云计算这种方式具有明显的优势。传统的软件使用方式和云计算方式的比较如表1所示。表1 传统的软件使用方式和云计算方式的比较项目传统的软件使用方式云计算方式获得软件的方式自己投资建设机房搭建硬件平台购买软件在本地安装直接购买云计算厂商的软件服务使用方式本地安装本地使用软件运行在云计算厂商服务器上用户在任何有网络接入的地方都可以通过网络使用软件服务付费方式需要一次性支付较大的初期投入成本包括建设机房、配置硬件、购买各种软件操作系统、杀毒软件、业务软件等零成本投入就可以立即获得所需的IT资源只需要为所使用的资源付费多用多付少用少付极其廉价维护成本需要自己花钱聘请专业技术人员维护零成本所有维护工作由云计算厂商负责获得IT资源的速度需要耗费较长时间建设机房、购买和安装调试设备和系统随时可用购买服务后立即可用共享方式自己建设自给自足云计算厂商建设好云计算服务平台后同时为众多用户提供服务维修速度出现病毒、系统崩溃等问题时需要自己聘请IT人员维护很多普通企业的IT人员技术能力有限碰到一些问题甚至需要寻找外援通常不能立即解决出现任何系统问题时云计算厂商都会凭借其专业化团队给出及时的响应确保云服务的正常使用资源利用率利用率较低投入大量资金建设的IT系统往往只供企业自己使用当企业不需要那么多IT资源时就会产生资源浪费利用率较高每天都可以为大量用户提供服务当存在闲置资源时云计算管理系统会自动关闭和退出多余资源当需要增加资源时又会自动启动和加入相关资源企业搬迁时的成本当企业搬迁时原来的机房设施就要作废需要在新地方重新投入较大成本建设机房企业无论搬迁到哪里都可以通过网络重新零成本立即获得云计算服务因为资源在云端不在用户端企业搬迁不会影响到IT资源的分布资源可拓展性企业自己建设的IT基础设施的服务能力通常是有上限的当企业业务量突然增加时现有的IT基础设施无法立即满足需求就需要花费时间和金钱购买和安装新设备当业务高峰过去时多余的设备就会闲置造成资源浪费云计算厂商可以为企业提供近乎无限的IT资源存储和计算等资源企业想用多少都可以立即获得当企业不使用时只需退订多余资源几乎不存在资源闲置问题二、云数据库的概念云数据库是部署在云计算环境中的虚拟化数据库。云数据库是在云计算的大背景下发展起来的一种新兴的共享基础架构的方法它极大地增强了数据库的存储能力避免了人员、硬件、软件的重复配置让软、硬件升级变得更加容易同时虚拟化了许多后端功能。云数据库具有高可扩展性、高可用性、采用多租形式和支持资源有效分发等特点。在云数据库中所有数据库功能都是在云端提供的客户端可以通过网络远程使用云数据库提供的服务见图1。客户端不需要了解云数据库的底层细节所有的底层硬件都已经被虚拟化对客户端而言是透明的客户端就像在使用一个运行在单一服务器上的数据库一样非常方便、容易同时可以获得理论上近乎无限的存储和处理能力。需要指出的是有人认为数据库属于应用基础设施即中间件因此把云数据库列入 PaaS 的范畴也有人认为数据库本身也是一种应用软件因此把云数据库划入 SaaS。对于这个问题把云数据库划入 SaaS但同时认为云数据库到底应该被划入 PaaS 还是 SaaS这并不是最重要的。实际上云计算 IaaS、PaaS 和 SaaS 这 3 个层次之间的界限有些时候也不是非常清晰。对于云数据库而言最重要的就是它允许用户以服务的方式通过网络获得云端的数据库功能。图1 云数据库示意三、云数据库的特性一动态可扩展理论上云数据库具有无限可扩展性可以满足不断增加的数据存储需求。在面对不断变化的条件时云数据库可以表现出很好的弹性。例如对于一个从事产品零售的电子商务公司会存在季节性或突发性的产品需求变化或者对于类似 Animoto 的网络社区站点可能会经历一个指数级的用户增长阶段。这时它们就可以分配额外的数据库存储资源来处理增加的需求这个过程只需要几分钟。一旦需求过去以后它们就可以立即释放这些资源。二高可用性云数据库不存在单点失效问题。如果一个节点失效了剩余的节点就会接管未完成的事务。而且在云数据库中数据通常是冗余存储的在地理上也是分散的。诸如 Google、Amazon 和 IBM 等大型云计算供应商具有分布在世界范围内的数据中心通过在不同地理区间内进行数据复制可以提供高水平的容错能力。例如Amazon SimpleDB 会在不同的区域内进行数据复制这样即使某个区域内的云设施失效也可以保证数据继续可用。三较低的使用代价云数据库厂商通常采用多租户Multi-tenancy的形式同时为多个用户提供服务这种共享资源的形式对于用户而言可以节省开销而且用户采用“按需付费”的方式使用云计算环境中的各种软、硬件资源不会产生不必要的资源浪费。另外云数据库底层存储通常采用大量廉价的商业服务器这大大降低了用户开销。腾讯云数据库官方公布的资料显示当实现类似的数据库性能时如果采用自己投资自建 MySQL 的方式则成本为每台服务器每天 50.6 元实现双机容灾需要 2 台服务器即成本为每天 101.2 元平均存储成本是每吉字节每天 0.25 元平均 1 元可获得的每秒查询率Query Per SecondQPS为每秒 24 次而如果采用腾讯云数据库产品企业不需要投入任何初期建设成本每天成本仅为 72 元平均存储成本为每吉字节每天 0.18 元平均 1 元可获得的 QPS 为每秒 83 次相对于自建云数据库平均 1 元获得的 QPS 提高为原来的 346%具有极高的性价比。四易用性使用云数据库的用户不必控制运行原始数据库的机器也不必了解它身在何处。用户只需要一个有效的连接字符串URL就可以开始使用云数据库而且就像使用本地数据库一样。许多基于 MySQL 的云数据库产品如腾讯云数据库、阿里云 RDS 等完全兼容 MySQL 协议用户可通过基于 MySQL 协议的客户端或者 API 访问实例。用户可无缝地将原有 MySQL 应用迁移到云存储平台无须进行任何代码改造。五高性能云数据库采用大型分布式存储服务集群支撑海量数据访问多机房自动冗余备份自动读写分离。六免维护用户不需要关注后端机器及数据库的稳定性、网络问题、机房灾难、单库压力等各种风险云数据库服务商提供“7×24h”的专业服务扩容和迁移对用户透明且不影响服务并且可以提供全方位、全天候立体式监控用户无须半夜去处理数据库故障。七安全云数据库提供数据隔离不同应用的数据会存在于不同的数据库中而不会相互影响提供安全性检查可以及时发现并拒绝恶意攻击性访问提供数据多点备份确保不会发生数据丢失。以腾讯云数据库为例开发者可快速在腾讯云中申请云服务器实例资源通过 IP/PORT 直接访问 MySQL 实例完全无须再安装 MySQL 实例可以一键迁移原有 SQL 应用到腾讯云平台这大大节省了人力成本同时该云数据库完全兼容 MySQL 协议可通过基于 MySQL 协议的客户端或 API 便捷地访问实例。此外腾讯云数据库还采用了大型分布式存储服务集群支撑海量数据访问7×24h 的专业存储服务可以提供高达 99.99%服务可用性的 MySQL 集群服务并且数据可靠性超过 99.999%。自建数据库和腾讯云数据库的比较见表2。表2 自建数据库和腾讯云数据库的比较项目自建数据库腾讯云数据库数据安全性开发者自行解决成本较高昂15 种类型备份数据保证数据安全服务可用性99.99%高可靠性数据备份零花费系统自动多时间点数据备份维护成本零成本专业团队 7×24h 帮助维护实例扩容一键式直接扩容安全可靠资源利用率按需申请资源利用率高达 99.9%技术支持专业团队一对一指导、QQ 远程协助开发者四、云数据库是个性化数据存储需求的理想选择在大数据时代每个企业几乎每天都在产生大量的数据。企业类型不同对于存储的需求也千差万别而云数据库可以很好地满足不同企业的个性化存储需求。首先云数据库可以满足大企业的海量数据存储需求。云数据库在当前数据爆炸的大数据时代具有广阔的应用前景。传统的关系数据库难以横向扩展通常无法存储如此海量的数据。因此具有高可扩展性的云数据库就成为企业海量数据存储管理的很好选择。其次云数据库可以满足中小企业的低成本数据存储需求。中小企业在 IT 基础设施方面的投入比较有限因此非常渴望从第三方方便、快捷、廉价地获得数据库服务。云数据库厂商采用多租户形式同时为多个用户提供服务降低了单个用户的使用成本而且用户使用云数据库服务通常按需付费不会浪费资源造成额外支出。因此云数据库使用成本很低对于中小企业而言可以大大降低企业的信息化门槛让企业在付出较低成本的同时获得优质的专业级数据库服务从而有效提升企业信息化水平。另外云数据库可以满足企业动态变化的数据存储需求。企业在不同时期需要存储的数据量是不断变化的有时增加有时减少。在小规模应用的情况下系统负载的变化可以由系统空闲的多余资源来处理但是在大规模应用的情况下传统的关系数据库由于其伸缩性较差不仅无法满足应用需求而且会给企业带来高昂的存储成本和管理开销。而云数据库的良好伸缩性可以让企业在需求增加时立即获得需要的数据库资源在需求减少时立即释放多余的数据库资源较好地满足企业的动态数据存储需求。当然并不是说云数据库可以满足个性化数据存储需求就意味着企业一定要把数据存放到云数据库中。到底选择自建数据库还是选择云数据库取决于企业自身。对于一些大型企业目前通常采用自建数据库一方面是由于企业财力比较雄厚有内部的 IT 团队负责数据库维护另一方面数据是现代企业的核心资产涉及很多高级商业机密企业出于数据安全考虑不愿意把内部数据保存在公有云的数据库中尽管云数据库供应商也会一直强调数据的安全性但是这依然不能打消企业的顾虑。对于一些财力有限的中小企业而言IT 预算比较有限通常不可能投入大量资金建设和维护数据库企业数据并非特别敏感因此云数据库这种前期零投入、后期免维护的数据库服务可以很好地满足他们的需求。五、云数据库与其他数据库的关系关系数据库采用关系数据模型NoSQL 数据库采用非关系数据模型二者都属于不同的数据库技术。从数据模型的角度来说云数据库并非一种全新的数据库技术而是以服务的方式提供数据库功能的技术。云数据库并没有专属于自己的数据模型云数据库所采用的数据模型可以是关系数据库所使用的关系模型如微软的 SQL Azure 云数据库、阿里云 RDS 都采用了关系模型也可以是 NoSQL 数据库所使用的非关系模型如 Amazon DynamoDB 云数据库采用的是“键值”存储。同一个公司也可能提供采用不同数据模型的多种云数据库服务例如百度云数据库提供了 3 种数据库服务即分布式关系数据库服务基于关系数据库 MySQL、分布式非关系数据库服务基于文档数据库 MongoDB、键值型非关系数据库服务基于键值数据库 Redis。实际上许多公司在开发云数据库时后端数据库都直接使用现有的各种关系数据库或 NoSQL 数据库产品。比如腾讯云数据库采用 MySQL 作为后端数据库微软的 SQL Azure 云数据库采用 SQL Server 作为后端数据库。从市场的整体应用情况来看由于 NoSQL 应用对开发者要求较高而 MySQL 拥有成熟的中间件、运维工具已经形成一个良性的生态系统等特性因此从现阶段来看云数据库的后端数据库以 MySQL 为主、NoSQL 为辅。在云数据库这种 IT 服务模式出现之前企业要使用数据库就需要自建关系数据库或 NoSQL 数据库它们被称为“自建数据库”。云数据库与这些“自建数据库”最本质的区别在于云数据库是部署在云端的数据库采用 SaaS 模式用户可以通过网络租赁使用数据库服务在有网络的地方都可以使用不需要前期投入和后期维护使用价格比较低廉。云数据库对用户而言是完全透明的用户根本不知道自己的数据被保存在哪里。云数据库通常采用多租户模式即多个租户共用一个实例租户的数据既有隔离又有共享从而解决了数据存储的问题同时降低了用户使用数据库的成本。而自建的关系数据库和 NoSQL 数据库本身都没有采用 SaaS 模式需要用户自己搭建 IT 基础设施和配置数据库成本相对而言比较高而且需要自己进行机房维护和数据库故障处理。小结云数据库是部署在云计算环境中的虚拟化数据库依托 IaaS、PaaS、SaaS 等云服务模式允许用户通过网络远程使用数据库功能无需关注底层硬件。其核心特性包括动态可扩展理论上无限存储、高可用性多节点冗余、较低使用代价按需付费、多租户共享、易用性兼容MySQL协议、高性能、免维护、安全可靠。云数据库能很好满足个性化存储需求大企业需要海量数据扩展能力中小企业渴望低成本、零维护方案动态变化的企业也能灵活调整资源。与自建数据库相比云数据库省去前期投入和专业维护但部分大型企业出于数据安全顾虑仍选择自建。云数据库本身不限定数据模型既可采用关系模型如MySQL也可采用非关系模型如键值、文档当前市场以 MySQL 类云数据库为主。欢迎点赞 | 收藏⭐ | 评论✍ | 关注