主页 > 新闻中心 > 课程咨询 >

带你认识数据库

来源:南京北大青鸟 作者:南京北大青鸟 发布时间:2020-01-02 10:10

因为使用io流文件存储数据有很多弊端:1、文件存储数据存储效率低;2、不管存还取操作比较麻烦3、一般只能保存小量字符串数据等。

  为什么要使用数据库

  因为使用io流文件存储数据有很多弊端:1、文件存储数据存储效率低;2、不管存还取操作比较麻烦3、一般只能保存小量字符串数据等。为了解决这些弊端,才有数据库的出现,使用数据库存储数据就可以很好的解决这些弊端。

  什么是DB

  DB的全称是data base,即数据库的意思。数据库实际上就是一个文件集合,是一个存储数据的仓库,本质就是一个文件系统,数据库是按照特定的格式把数据存储起来,用户可以对存储的数据进行增删改查操作;

  什么是DBMS

  DBMS的全称是Database Management System,即数据库管理系统的意思,是一个软件,用来管理数据库文件的软件,用户可以访问DBMS对数据进行增删改查操作,常见DBMS有: MySQL、oracle、DB2、sqlite、sqlserver等

  数据库的分类

  关系型数据库: 经过数学理论验证 可以保存现实生活中的各种关系数据, 数据库中存储数据以表为单位;

  非关系型数据库:通常用来解决某些特定的需求如:数据缓存,高并发访问。 存储数据的形式有多种,举例:Redis数据库:通过键值对的形式存储数据;

  主流关系型数据库简介

  MySQL: 08年被sun公司收购09年sun被oracle收购,开源免费,到oracle发布了5.0版本(使用了oracle核心技术 性能提高30%),因为Oracle数据库地位受到威胁,计划把mysql闭源,原mysql作者们不干了,原程序员出去单干,发布了MariaDB数据库、名字是因为作者女儿叫Maria ,市场排名第一;

  Oracle:闭源、最贵、性能最高,市场排名第二;

  SQLServer:微软公司的产品,市场排名第三,主要应用在.net(C#)开发的网站中;

  DB2:IBM公司有做网站的完整解决方案(操作系统,we服务器(如tomcat),数据库等)主要应用在银行等国有大型企业中;

  sqlite:轻量级数据库,只有几十k,一般应用在嵌入式和移动设备中;

  开源和闭源的区别

  开源:开发源代码,盈利方式靠卖服务,赚钱慢少),用户群大,大牛程序员会无偿帮着升级维护;

  闭源:不开放源代码,盈利方式卖产品+服务,赚钱快多,大牛们各种攻击找漏洞;

什么样的数据库测试才更具参考价值

数据库性能评测不能“跑偏”。

以TPC-C测试为例,国际数据库巨头Oracle的测试成绩停留在九年前,之后并无再参与到TPC-C的测试之中。这不禁让人思考,什么样的数据库测试才更会更具实际参考价值?

显然,对于各个行业用户而言,更加重视的是一些贴近行业真实业务场景的性能和功能测试,而不是各种刷榜的评测。以金融行业为例,金融行业最为苛刻的业务需求,决定了数据库产品需要在功能、性能、高可靠性、安全性、兼容性、生态等方面需要有足够的支撑能力,针对包括金融行业在内的数据库测试显然容易更加获得用户的认可。

在国内金融行业的数据库相关测试里,中金国盛的金融行业标准符合性试点测评是金融行业中当之无愧的权威评测。中金国盛认证中心是经国家认证认可监督管理委员会批准,国内首家从事境内金融业服务和产品的质量安全管理的专业认证机构,其相关评测结果和认证获得了国际互认协议集团成员国家和地区的广泛认可。中金国盛金融行业标准符合性试点测评涵盖了数据库环境搭建、环境监测、语法支持、安全支持、扩展、性能,容灾等金融级数据库要求的关键能力项目。

例如,中金国盛金融行业标准符合性试点测评会针对关系型分布式数据库在金融行业业务特点下的基本功能进行测试,包括分布式下存取事务脚本,满足对数据操作的原子性、数据对象的隔离性、过程的一致性、全局一致性;测试是否满足ANSI SQL 99/2003,支持复杂SQL,函数索引,视图,存储过程,序列,字符集,模式管理,主键约束,触发器,分区表,JAVA/C UDF,死锁,故障诊断,灾难恢复,闪回数据,数据安全,加密,用户权限管理等金融核心交易型数据库应该具备的功能等。

此外,该测评还会针对金融行业最为看重的可靠性进行评测,包括在线备份、离线备份、全量和增量备份、磁盘备份、数据定期自动备份等备份功能,同城双活,两地三中心等最高等级容灾的测试。而针对国内金融机构用户量普遍达到千万级的情况,中金国盛认证中心重要会针对数据库的性能进行重点测试,包括数据库的单机内核能力是否足够强劲;分布式环境下,数据库的线性扩展能力和性能扩展比,针对数据库在高并发评测,对于金融行业秒杀、抢购等业务场景的数据访问极具参考价值。

带你认识数据库

针对目前国内金融机构因为历史原因普遍存在多数据库品牌的情况,中金国盛认证中心还会针对数据库的异构数据库兼容和迁移能力进行测试,设置被测对象数据库与异构数据库的同步关系,然后在被测对象中执行数据的修改、插入操作,验证了相关操作可自动同步至其他异构数据库的功能。

在最近一期的评测里,华为GaussDB成为中国数据库品牌的突出代表。经中金国盛认证中心检测, 根据金融行业标准《分布式数据库技术金融应用规范(草案稿)》、中金国盛企业标准《分布式数据库技术金融应用检测规范(试行)》,基于华为鲲鹏处理器和通用CPU的华为GaussDB数据库率先通过本次检测,82个检测项全部为“符合”,在功能性、性能、安全性、可靠性、稳定性等方面都符合金融行业的规范要求。

具体到详细的测试结果,GaussDB在功能性、安全性、灾难恢复及性能方面均符合检测规范要求。在银行批量结息业务测试中,GaussDB功能性、稳定性等均满足银行批量结息业务需求,性能甚至优于业界领先数据库30%以上。在银行信用卡代授权业务测试中,GaussDB的功能性、稳定性同样满足要求,其单节点的性能与业界领先数据库持平,分布式环境下,GaussDB性能扩展比超过0.8。

实际上,在性能评测方面,目前国内一些银行及华为分别进行基于TaiShan服务器和通用CPU服务器的TPC-C比拼测试,证明GaussDB在TaiShan服务器上性能表现较同等通用CPU服务器提高约20%。在华为基于TaiShan服务器16节点的TPC-C标准测试,性能达到千万级tpmC。

这个数据说明GaussDB平均的单机内核性能足够强劲,具备线性扩展突破最高TPC-C成绩的潜力。

而在中国信通院最新的分布式分析型数据库测试中,华为GaussDB分析型数据库同样是率先完成了在512节点集群规模下的包括基础能力、运维能力、兼容性、安全性、高可用以及扩展能力等六项指标、51项测试项的能力测试要求。

毫无疑问,以华为为代表的中国数据库品牌越来越敢在各种行业评测机构亮成绩,让行业用户看到中国数据库品牌与产品的实际参考价值,也成为用户所欣喜看到的趋势。

数据库发展没有捷径,业务场景实践是唯一出路

事实上,数据库作为技术含量高、难度巨大的IT基础产品,往往需要大量的人才、资金进行长期耐心投入。与此同时,数据库又是一个竞争门槛特别高的领域。国外数据库巨头们已经将竞争门槛构筑的足够高,中国的数据库品牌往往需要为之付出更大的努力,才能达到同样的高度。

尤其是在像金融、电信、制造、交通、能源等商用市场,国际数据库已经具备了足够的产品能力、品牌能力和生态能力。某位数据库专家就向笔者坦言:“打造一款通用型数据库绝非易事,除了性能之外,易用性、可靠性和可恢复性是背后隐藏的能力,这绝非一朝一夕所能做到的。”因此,中国数据库品牌的发展并没有任何捷径,需要牢牢中国各个行业加速数字化转型的窗口期,从实际业务场景中的实践中不断摸索与成长,加速迭代和改进,走出自身的价值之路。

比如在对于数据库产品最为苛刻的金融行业,据笔者所了解的情况,到今年为止,国内大部分金融行业客户依然以采用国际数据库巨头产品为主,不过出于未来长远发展考虑,很多金融机构都在尝试在业务中使用中国的数据库品牌。但是以银行、保险等为代表的传统金融机构,其业务复杂性远不是互联网金融公司单一业务所能比拟的,往往需要中国数据库产品在多个方面具备足够的实力。

以招商银行为例,截止2018年底,光APP注册用户就达到1.4亿、月活用户达到8000万以上,从总行到分行、再到支行几乎每天都通过APP进行各色各样的个性化推荐、抢购、秒杀等促销活动,在其向金融科技的转型过程中,海量、复杂的核心业务场景使得招商银行仔细评估了开源数据库和商用数据产品,对数据库有着明确和清晰的需求:高性能、高扩展、高可用、对业务开发友好、容易管理运维的金融分布式数据库产品。

为此,招商银行与华为进行联合创新,招商银行方面提供先进的金融业务场景,根据多年数据库使用和运维经验提出分布式数据的具体要求,以及深入参与到数据库核心内核和架构的设计、编码、测试和投产阶段。经过双方联合创新,华为GaussDB已经拥有高性能的数据库内核、性能与容量的高可扩展能力、数据的两地多中心高可用、故障快速切换、支持高性能分布式事务、易开发、易运维与管理等七大特性,并且在招商银行实际业务场景中得到充分的验证与落地。(相关推荐:南京云计算基础培训机构

例如,在数据库的可扩展能力方面,招商银行可以在实际业务中做到扩展比不低于0.8的准线性扩展,节点扩展采用全量+增量的方式,实现对业务无感知的扩容,可以支持8000个以上的数据库并发连接,很好地应对了招商银行秒杀、抢购场景下突增的数据库访问请求。又比如在数据库的主备切换阶段,GaussDB实现了关键故障恢复指标上的大幅领先,RTO<1s ,而其他商业数据库产品通常需要30s以上,这让招商银行的AZ内故障恢复速度提升30倍。


(责任编辑:南京北大青鸟中博学院)