数据库,作为基础软件产品,其研发资源及成熟应用,需要较大投入和较长周期。开源作为一种新的软件开发协作模式,可大大加速这一过程。从上世纪九十年代,以 MySQL 和 PostgreSQL 为代表的开源数据库兴起;到近些年来国内数据库也纷纷走向开源道路。的确,开源能为企业及产品带来很大的收益,如加快研发周期、加速产品成熟、促进生态建设等。当然,出于商业化诉求,企业也纷纷摸索在开源条件下的商业模式,大部分企业在开源的同时也提供了商业版本。作为最终用户,是选择社区开源版本还是商业闭源版本,是个值得思考的问题。本文收集数据库领域几家代表性企业开源(社区)版本与商业(企业)版本产品功能及差异,并对这一差异背后的原因加以思考。本文部分资料来自阿里云、甲骨文、PingCAP、OceanBase 公司朋友提供,特表示感谢。
1. 常见数据库开源商业差异
MySQL 作为最为流行的一款开源数据库,其社区版是完全免费的;企业版则需要支付许可证费用且提供了更强功能。针对社区版本,功能大家已经比较熟悉了,下面重点说明下企业版的增强功能。总体来说,MySQL 企业版的功能比社区版更丰富,而且有更高的安全性、可管理性及配套服务等。其具体增强功能如下:
TiDB 是 PingCAP 公司自主设计、研发的开源分布式关系型数据库,是一款同时支持在线事务处理与在线分析处理 (HTAP) 的融合型分布式数据库产品,具备水平扩容或者缩容、金融级高可用、实时 HTAP、云原生的分布式数据库、兼容 MySQL 5.7 协议和 MySQL 生态等重要特性,支持在本地和云上部署。其产品在诞生之初,就秉承开源理念,其核心多款开源项目合计 Star 数突破50K。其企业版和社区版产品差异如下:
3).OceanBase
OceanBase 一款开源分布式 HTAP 数据库管理系统,具有原生分布式架构,支持金融级高可用、透明水平扩展、分布式事务、多租户和语法兼容等企业级特性。自2021年6月开源以来,秉承内核完全开放的原则,已开源超 300 万行代码。其希望通过开源让更多的上下游厂商、伙伴和开发者参与进来了解和使用产品,使产品发展的更快、更好、更普及,旨在共同将OceanBase打造成全球最具竞争力的分布式数据库。其提供企业版和社区版两种形态:
4).PolarDB-X
阿里云,近些年来非常重视开源生态建设。在数据库领域开源了多款产品,以 PolarDB-X 产品为例,是在2021年的云栖大会正式开源。其负责人表示“我们将阿里最核心的云原生数据库技术进行开源,希望开发者和客户通过开源版本快速使用阿里云数据库产品技术,并参与到技术产品的迭代过程中来,共建云原生分布式数据库生态。”PolarDB-X是由阿里自主研发的原生MySQL分布式数据库,兼容MySQL协议与客户端,具备自动负载均衡、高可用、HTAP混合负载、支持分布式事务、全局二级索引等重要特性,专注解决超高并发吞吐、海量数据存储、大表瓶颈等数据库瓶颈难题,历经各届天猫双11及全行业客户业务的考验。从范围上看,PolarDB-X 开源较为彻底,开发的新功能在经过三个月的线上试用后,就会合入到开源分支中。除了阿里系其他生态工具类产品外,其自身功能全部实现了开源。其主要功能包括:
2. 数据库商业化功能思考
从上面几款数据库产品可见,开源产品与商业产品在大体功能上相差不大,重点是在部分企业级功能和服务上面。这其中主要包括几个方面:
1).安全
安全功能,是企业选择一款产品的重点考虑要素之一,特别是数据库这种承载数据,担负企业核心业务的基础平台。关于安全还可细分为三类功能:一是访问行为类,如审计、白名单、防火墙;二是数据存储展示类,如加密、脱敏、签名;三是安全扩展类,如对接第三方安全系统。上述三类功能,重点是解决数据库平稳运行、数据合规使用及管理便利性问题。企业版可以很好地满足此类需求,如用户使用社区版本则需通过外购第三方或自研的方式解决。
2).运维
运维能力,是企业能否用好产品的关键因素之一。好的产品,还需要好的运维支撑能力来辅助。企业版软件在这部分功能上主要是提供可视化、便捷的运维方式为主,包括常见的安装部署、备份恢复、监控告警、异常诊断、性能优化等。重点是解决数据库的运维效能问题。这部分相对难度不大,如用户使用社区版本可通过自研方式去解决;而且对于中大型企业来说,往往都有一套成熟运维体系,即使企业版提供也许融入自有体系中,因而相对不是很刚需。
3).生态
生态功能,主要是指企业的上下游及关联方使用好此产品所需要的功能。这其中可细分为几种情况:一是开发者生态,提供好的设计、开发平台供开发者使用,方便开发者快速上手;二是数据生态,即数据如何流入、流出此平台,企业内往往不止一种数据库,需要数据在多平台间流动;三是兼容生态,即为了充分享受其他产品的生态能力二提供的兼容性功能,如协议、语法、工具等方面的兼容。上述功能是重点解决企业使用数据库开发好系统的问题。这部分相对难度较大,但有些功能属于非刚需。特别在兼容性上做的很好的产品,通常可利用原有生态上的部分能力,可解决一定问题。
4).服务
只有好的产品,没有好的服务,是无法保证能够使用好的。特别是对于承载企业关键业务的数据库,是不允许出现任何闪失的。这也是很多用户考虑购买企业版,希望能得到的“兜底”服务效果。企业版提供的服务,不仅在范围上、时效性、预防类等多方面比社区版本更有保障,而且有公司能够担责对用户也是一种解脱。当然现在也有一种”开源商业服务”的形式,即提供对开源产品的商业服务,能在一定程度上解决企业使用开源的问题。这种情况,则需重点考虑服务企业的资质能力(特别在此开源项目上)。

MS SQL Server,unix,linux各是什么
SQL是英文Structured Query Language的缩写,意思为结构化查询语言。 SQL语言的主要功能就是同各种数据库建立联系,进行沟通。 按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。 SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。 目前,绝大多数流行的关系型数据库管理系统,如Oracle, Sybase, Microsoft SQL Server, Access等都采用了SQL语言标准。 虽然很多数据库都对SQL语句进行了再开发和扩展,但是包括Select, Insert, Update, Delete, Create,以及Drop在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作。 SQL ServerSQL Server 是一个关系数据库管理系统。 它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2 版本。 在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了,Microsoft 将SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本。 Sybase 则较专注于SQL Server在UNIX 操作系统上的应用。 SQL Server 2000 是Microsoft 公司推出的SQL Server 数据库管理系统的最新版本,该版本继承了SQL Server 7.0 版本的优点,同时又比它增加了许多更先进的功能。 具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2000 的大型多处理器的服务器等多种平台使用。 unix,linux 是两款操作系统 目前全球最出名的三款OS(操作系统)是 微软的WINDOWS系统 和 苹果的APPLE系统 以及 unix,linuxunix,linux 属于同一种 很复杂 一般用在ATM上 是一种开放式系统 有很多张版本 安全性很高 一般很难搞懂
oracles标准版和oracle企业版有什么区别?
相对于标准版,Oracle9iAS企业版的Oracle8i Cache组件能够将数据库中经常被客户访问的数据缓存在中间件服务器,即9iAS中,这样在客户请求频繁时极大的提高了系统的效率,大量客户请求不需发往数据库服务器,iAS企业版即可返回结果,且企业版可作为From和report程序的服务器。 标准版标准版包含下列组件:基于 apache 的 Oracle HTTP ServerApache JServPerl InterpterOracle Portal Service(以前的 WebDB)Oracle JSPOracle PL/SQL Server PagesOracle8i JVMOracle BC4JOracle Database Client Developers KitOracle XML Developers KitOracle LDAP Developers KitOracle Advanced SecurityOracle Enterprise Manager (只有控制台)企业版企业版包括标准版中所有组件,并且还含有下列额外的组件:Oracle8i PL/SQLOracle8i CacheOracle Forms ServicesOracle Reports ServicesOracle Discoverer ViewerOracle Enterprise Manager (控制台和 Management Server)Oracle9i数据库的企业版和标准版最主要的区别在于企业版有更强大的并行和分布式处理能力,标准版是专为开发、部署和管理部门级 InterNET 应用程序而设计的数据库管理系统,是用于传统的部门级应用程序的一流数据库。 而应用超出部门级标准或访问数据库的人较多时,则应当选用企业版。 标准版标准版包含下列组件:Jserver Enterprise Edition• InterMedia• Enterprise Manager• Workflow Standard Edition• Standard Management Pack• Object Option• Networking kit• Object for OLE• Distributed Option• 64 bit Option• ODBC Driver• Sql*Plus• OCI企业版企业版包括标准版中所有组件,并且还含有下列额外的组件:• Jserver Enterprise Edition• InterMedia• Object Option• Networking kit• Object for OLE• Advance Replication Option• Distributed Option• Parallel Query Option• SQL*Plus• VIR• Workflow Enterprise Edition• Advanced backup & recovery• Connection Pool• 64 bit Option• ODBC Driver• OCI• Enterprise Manager• Enterprise Backup Utility
发表评论