数据库管理系统的主要功能 数据库管理系统 仓库管理系统教程( 三 )


数据库管理系统的主要功能 数据库管理系统 仓库管理系统教程

文章插图
从数据模型的角度上看,云数据库并非一种全新的数据库技术,而只是以服务的方式提供数据库功能,。云数据库并没有自己专属的数据模型,云数据库所采用的数据模型可以是关系型数据库所使用的关系模 式,即关系型数据库服务(Rational Database Service,RDS),也可以是 NoSQL 数据库所采用的非关 系模型 。
行业分析师指出,在全面上云的大背景下,商业数据库因其昂贵、高运维难度、以及低扩展性和可用性 受到挑战 。而云数据库则因天然为云定制,具备云计算的弹性能力,兼具开源数据库的易用、开放特点,及传统数据库的管理和处理性能等优势,成为企业的最佳选择 。
数据库管理系统的主要功能 数据库管理系统 仓库管理系统教程

文章插图
1.6 数据库开源技术之必然博弈
开源数据库是免费的社区数据库,其源代码可供公众使用,并且可以在其原始设计中进行修改或使用 。截至 2020 年 6 月,在全球 356 种数据库中有 50.4%采用商业授权;49.6%使用开源协议 。全球开源数 据库使用较为广泛的包括 MySQL,PostgreSQL 和 MongoDB 等 。
根据 2019 年 DB Engines Ranking 发布的权威数据库排行,公认最为活跃的 10 款典型内存数据库与各 项指标对比如表 3 所示 。在前 10 款活跃度最高的内存数据库中,有 5 款为开源产品 。数据库的数据结 构与 ACID 支持情况如表中所示 。在开源产品中,Redis 和 Memcached 是最受欢迎的两款键值对内存 数据库;而 SQLite 是最受欢迎的关系型内存数据库 。
现今在国际上形成了从商用数据库到开源数据库的发展与迁移趋势 。而在开源使用的过程中,大体企业 利用了多种数据库种类来满足人群的应用程序需求,热门商业数据库与开源数据库一起使用的趋势愈发 明显 。在这一混合使用的过程中,多语言的持久性与商业数据库向开源数据库使用的迁移势头也愈发显 著 。下图为数据库流行度统计图表 。深蓝色代表的商业数据库从 2013 年 65%左右的使用率下降到 2019 年 50%水平,并存在流行度下行可能性;浅蓝色代表的开源数据库经过近年来不断技术更新、综合使用 简易成本低廉等特点,已有追赶、超过商业数据库流行程度的趋势 。时至今日,数据库中 Wide Cloumn 开源占比 81.8%,时序数据库开源占比 80.7%,文档存储类开源占比 80.0%,Key-Value 存储开源占比 72.2%,图数据库开源占比 68.4%,搜索引擎开源占比 65.3%;这些数据库类别均已实现开源数据库使 用度超越商业数据库 。而在传统的关系型数据库中,商业产品仍高达 60.5% 。
数据库管理系统的主要功能 数据库管理系统 仓库管理系统教程

文章插图
全球大型企业商业数据库积极追求开源并行使用的策略为国内开源数据库的发展点亮明灯 。下图表示正 在迁移到开源数据库的商业数据库用户情况 。Oracle 是世界上排名第一的数据库,图表中反映 Oracle 占有超过 2/3 的和开源数据库组合商业数据库的份额;微软 SQL Server 与 IBM Db2 分列第二三位,分 别占与开源相结合的商业数据库使用量的 22%与 11% 。从国际大趋势来看,商业数据库与开源数据库 的结合是主要潮流,无论是甲骨文、微软或是 IBM,用户使用中都在积极追求开源的应用 。在全球市场 上开源数据库的表现为开源国产化发展之路提供前车之鉴 。
数据库管理系统的主要功能 数据库管理系统 仓库管理系统教程

文章插图
在国内,开源人数不断增长,中国持续研发突破走向自主可控 。根据 GitHub 的相关数据显示,从 2017 年到 2018 年开源发生了规模级的攀升,开源人员从 2400 万上升为 3000 万+,企业和组织从 150 万上 升为 200 万+,代码库 6000 万上升为 9600 万+ 。而中国截止 2018 年,成为了 GitHub 贡献排名第二的 国家,排名仅此于美国 。同时,中国自主研发的开源项目也正积极与国际接轨 。目前,国内共有 22 个 项目贡献给了国际顶级基金会,包括 Linux 基金会、Apache 基金会等,目前成功完成的项目有 9 个,包括 Kylin、HAWQ、Eagle、CarbonData、RocketMQ、Griffin、 SOFAStack 、Caliper、TiDB 。
国内开源许可授权模式对开源国产化适宜 。按照开源 License 的授权模式,图 3 中三角形越往下开源管 理越宽松 。图 3 右侧对应各项开源授权要求 。如 MySQL 属于 GPL,在互联网行业用户较多;而 PostgreSQL 属于 BSD 授权;国内有不少数据库公司的产品就是基于 Postgre,开源授权管理宽松,无 开发者声明、授权限制要求 。