数据库知识普及
【摘要】 什么是数据库?MySQL是什么?SQL是什么?数据库,用来存储数据。由表组成,可以有0到n张表,表就像是Excel,它适合存放一些简单的文字信息——一个人的身份证号码电话号码姓名Excel不适合存放什么信息呢?照片电影小说这些单个 大体量的文件对象,不会放在数据库里。比如说,淘宝上所有的商品,背后的商品信息、店铺信息、销量等数据,就躺在数据库中的表格中,但是店铺上的宣传视频、图片、音乐,不会...
什么是数据库?MySQL是什么?SQL是什么?
数据库,用来存储数据。由表组成,可以有0到n张表,
表就像是Excel,它适合存放一些简单的文字信息——
- 一个人的身份证号码
- 电话号码
- 姓名
Excel不适合存放什么信息呢?
- 照片
- 电影
- 小说
这些单个 大体量的文件对象,不会放在数据库里。
比如说,淘宝上所有的商品,背后的商品信息、店铺信息、销量等数据,就躺在数据库中的表格中,但是店铺上的宣传视频、图片、音乐,不会放在数据库中。
世界上有各种各样的数据库,但幸运的是,你只需要学会MySQL基本使用方法,就可以应对绝大多数的场景。
MySQL是什么?
MySQL是一种数据库软件,数据库和MySQL的关系,就像是聊天软件与QQ、微信的关系。世界上有各种各样的数据库,比如Oracle、MySQL、SQL Server等等,一般互联网公司都会用MySQL,因为它是开源、免费、使用范围最广。
SQL是什么?SQL是什么?
是一种编程语言,就像Java、C++、Python,但是它特别简单。
SQL是用来操纵数据库的一种语言。它只需要上百个英文单词,SQL就可以对数据进行让人眼花缭乱的操作,非常容易上手。
总结:数据库是一种数据存储系统,其中最有代表性的是MySQL,它是使用最广泛的数据库,我们使用SQL语言对他进行操作。
为什么要有数据库?
因为Excel不能供一个大型系统使用,它的性能不够好。我们需要一个可以供多人同时访问、操纵、安全的数据存储系统。
通俗来说,数据库是“按照数据结构来组织、存储和管理数据的仓库”,可以多人同时地进行访问、更改数据。在数据量很大(0~300G)的时候,数据库的性能将会非常地好。
关系型数据库服务
是一种即开即用、稳定可靠、可弹性伸缩的在线数据库服务。具有多重安全防护措施和完善的性能监控体系,并提供专业的数据库备份、恢复及优化方案,使您能专注于应用开发和业务发展。主流商业及开源数据库: Oralce、Microsoft SQL Server、DB2、 MySQL 、PostgreSQL等。
关系型数据库:是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据,关系型数据库这一系列的行和列被称为表,一组表组成了数据库。关系型数据库的最大特点就是事务的原子性、一致性、隔离性和持久性(ACID)
缺点:读写性能比较差,像微博、facebook这类SNS的应用,对并发读写能力要求极高,关系型数据库已经无法应付
什么是结构化数据?
使用关系型数据库表示和存储、表现为二维形式的数据。一般特点:数据以行为单位,一行数据表示一个实体的信息,每一行数据的属性是相同的。
什么是什么是非结构化数据?
没有固定结构的数据。各种文档、图片、视频、音频等都属于非结构化数据。对于这类数据,我们一般直接整体进行存储,而且一般存储为二进制的数据格式。
关系型数据库
特点:
1、基于单一关系模型,结构化存储,有完整性约束
2、通过二维表建立数据之间的联系
3、采用结构化查询语言(SQL)做数据读写
4、操作保存数据的一致性
优点:
通过事务处理保持数据的一致性,数据更新的开销很小,可以进行Join等复杂查询,20多年的技术历程,技术成熟
缺点:
数据读写必须经过sql解析,大量数据、高并发下读写性能不足,为保证数据一致性,需要加锁,影响并发操作。无法适应非结构化的存储,大量数据集中到一台服务区处理,使服务器不堪重负。“阻抗失谐”,即数据库中存储的对象与实际的对象实体有一定的差别,扩展困难,数据库庞大,价格昂贵。
NOSql数据库
特点
非结构化的存储,基于多维关系模型,部署容易,开源免费,成本低
优点
处理高并发、大批量数据的能力强,支持分布式集群,负载均衡,性能高,解决“阻抗失谐”问题,内存级数据库,查询速度快。存储格式多,支持key-value形式、文档形式、图片形式,没有多表连接查询机制的限制,扩展性高
缺点
技术起步晚,维护工具以及技术资料有限,不支持sql工业标准。没有join等复杂的连接操作,事务处理能力弱,没有完整性约束,对于复杂业务场景支持较差
总结一下:
关系型数据库——代表:MySQL——可扩展性,高并发,高性能
非关系型数据库——代表:NoSQL——易扩展,数据类型更加灵活,高可用
分布式数据库——代表:NewSQL——相当于关系型+非关系型,既有NoSQL数据库对于海量数据的存储管理能力,又有传统数据库支持ACID和SQL等特性
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)