当前位置:网站首页>数据库概论 - 数据库的介绍
数据库概论 - 数据库的介绍
2022-07-27 01:39:00 【加勒比海涛】
数据库相关基础概论
大家好,这次给大家带来的是我的新的专栏:数据库,数据库相对来说难度不是那么高,大家只要勤加练习、熟记语法,我相信学好数据库不是什么问题,博主会从0剖析,逐步讲解数据库的知识点,并且会举很多实例。最重要的是,博主不会采用软件,使用最原始的方式 -> 命令行来讲解,这样讲解的好处是逐个语句进行书写,不会造成读者思路跟不上的问题!
QQ:162196770
微信:PRIDE_Xu_
Gitee:https://gitee.com/jialebihaitao
下一篇博客传送门:
文章专栏:
数据库的介绍
1、数据库的介绍
1.1 数据库学啥?
- 数据库的基本操作(以
SQL语句为核心),SQL是一门编程语言,使用比较简单 - 数据库的底层原理(主要针对常见面试题)
- 数据库编程(使用Java语言操作数据库)
1.2 数据库到底是啥?
数据库是一个软件(一类软件),这一类软件功能就是”管理数据”,也就是组织并存储数据的软件
1.3 与数据结构的关系
数据库:软件
数据结构:学科
数据库软件在实现过程中,是非常依赖数据结构的,实现数据库软件的内部,会广泛的使用到各种数据结构~
数据结构这门学科就是在讨论具体如何组织和管理数据~ 管理的目的就是为了进行”增删改查”
1.4 分类
1.4.1 关系型数据库
定义:数据的组织形式使用“表”作为结构,类似于
excel。首先得有⼀个表头,表头中约定了有很多列,以及每⼀列的类型,插入的数据就是表中的一行。这一行里的每⼀列都需要和表头结构对应。
对于数据的“约束”(对于数据合法性的校验)比较强
适用于大部分场景
MySQL,Oracle,SQL Server,SQLite
1.4.2 非关系型数据库
- 非关系型数据库(也叫
NoSQL):数据的组织形式使用“键值对”作为结构。类似于Map - 存储的时候都是需要制定
key和value,每组数据的value中都需要包含哪些字段,没有明确要求,对于数据的约束更低 - 相比于关系数据库,牺牲了⼀部分的功能,但是换来了更高的效率以及更强的水平扩展能力 更适用于分布式系统中
1.5 一个电脑的基本组成(题外话)

外存:分为软盘、硬盘、光盘、硬盘、U盘(flash),其中现在最常用的就是硬盘以及U盘
内存和外存的区别:
内存的存储空间较小(8G,16G),外存的存储空间较大(512G,1T)
内存的访问速度快,外存的访问速度慢(大概要差3-4个数量级)
这里的外存特指机械硬盘,硬盘也有机械硬盘和
SSD,机械硬盘它受限于机械硬盘的物理结构,导致他的存储速度,已经快十年没有发展了。但是SSD固态硬盘访问速度很快,比机械硬盘快很多,最好的固态硬盘,快赶上最垃圾的内存了~不过一般的SSD还是会比内存慢上许多的内存成本高,外存成本低
内存中的数据断电后消失,外存中的数据断电后还在
也不是绝对的.只不过一般机械硬盘存储数据的保存时间是几年~十几年之间
当前世界上的绝大部分计算机(99%以上)都是按照上述结构来进行构建的~
1.6 祖师爷:冯诺依曼以及图灵(题外话)
给大家讲讲两位祖师爷的光辉历史
Part I:冯诺依曼
冯诺依曼体系结构,叫做“冯诺依曼”大佬提出来的,可以说是20世纪最
NB的全才,它是一个数学家,还是物理学家,还是化学家,计算机之父,在二战中,还参与了曼哈顿计划,他们一起来研究原子弹。那年,有一天,冯诺依曼大佬,去坐火车~(绿皮车),对面有个小伙是 “普林斯顿大学的研究员”,研究一个用来”计算的机器“,但是遇到一些瓶颈,搞不下来了~~~冯诺依曼大佬去溜达溜达,研究了一段时间,就牵头把第一代计算机给研究出来了!
计算机使用二进制,也是冯大佬提出来的~
Part II:图灵
图灵奠定了计算机的理论基础
图灵也参与了二战~最大的贡献,破解了德军的电报加密系统,这直接促进了诺曼底登陆
但是遗憾的是英年早逝~据说是收到了英国皇室的迫害~
1.7 存储位置
一般情况下,MySQL的数据是保存在硬盘上的~ (”持久化存储的“方式),但是也有少数数据库,是把数据存在内存上的(比如:Redis,Tair…)
所以在实际的大型开发中,最容易出现问题的,就是数据库.
相比之下,咱们之前学习的数据结构~尤其是之前写的代码,数据基本都是在内存中保存的~(代码中创建的变量,就保存到对应内存空间)
1.8 常用数据库软件介绍
Oracle:最好的数据库,毋庸置疑最好的数据库 就是
Oracle,不⽤他的理由:贵!普通学生用不起,⼀些中小型公司也用不起,甚至一些大厂也不太用得起,真正用得起的都是财大气粗的金主,比如银行。银行的特点:
- 数据特别重要
- 不差钱
贵主要不是贵在软件使用上,而是花钱买的是⼀份平安,放心,更是⼀个背锅侠(出问题了有人赖),出了问题
Oracle的技支持会上门服务,所以花钱买的是服务。
相比之下
MySQL比较适合咱们使用,开源免费,白嫖⼀时爽,一直白嫖⼀直爽~而且,
Oracle基本都需要在配置超高的计算机上运行!(夸张的说,国家级的计算机才适合用)MySQL:开源免费,使用体验感也十分不错国内,最开始的时候,
MySQL的市场份额很低,还是以Oracle为主阿里牵头,掀起⼀场“去Oracle”的革命。当时
MySQL是⼀个备选,阿里那时候也在自研数据库最开始替换的时候,问题很多,好在无数大佬们前仆后继,去踩坑去填坑,
MySQL也经历了⼀段快速发展过程。最终MySQL也就相对稳定搞笑了,就称为了当前非常主流的数据库。但是
MySQL的高速发展,也抢占了不少Oracle的市场份额。Oracle为了遏制MySQL的发展,釜底抽薪,给MySQL买下了,买完之后立刻MySQL就不开源了(虽然暂时还是免费)同时
Oracle也是Java的爸爸Oracle这个公司特别爱搞事情~Google当年整Android,本来是想用Python。正好那个时候Python之父从谷歌离职了,谷歌就把语言切换到了Java。随着
Android风生水起,大家都眼红的不要不要的了,Oracle这时候灵机一动,就把Java给买下来了,然后Oracle就把谷歌上了法庭,你要想用
Java开发安卓,你得给钱(讹人!)谷歌败诉,只能赔钱于是谷歌一气之下准备发展下⼀代移动端系统,搭载的开发语⾔
Dart(谷歌自研的语⾔),搭载的框架Flutter等。此时
MySQL作者也生气了,Oracle公司抠抠搜搜,落井下石。所以他在原来MySQL的开源版本基础上又搞了⼀条分支,叫Mariadb,仍然是开源免费的。Mariadb和原来的MySQL之间都是兼容的,当前学习的时候用哪个都行SQL Server:也不错,营销策略害了他SQL Server微软出品的数据库
其实是⼀个很好的很强大的数据库,然而没人用
最主要的原因:- 收费的,而且也不太便宜
- 早期的
SQL Server和Windows平台是捆绑的,但是那时候主流服务器系统都是Linux
正因为这样的营销错略,导致错失市场份额SQL Server的市场份额被MySQL抢占了C#的市场份额也被Java抢占了
后来微软反应过来了,也做出了调整,让SQL Server和C#都能⽀持跨平台,但是为时已晚
SQLite:世界上装机量最大的数据库安卓手机自带的数据库,小巧轻量
还有其他数据库,比如SQLite,HBase,MongoDB,Redis等等
以后在实际工作中,数据库用得最多的,还是MySQL,各个数据库之间,差别也不大,“一通百通”
边栏推荐
- 水仙花数(DAY 78)
- 排列与二进制(吉,大)(DAY 84)
- Idea 中添加支持@Data 插件
- [learn FPGA programming from scratch -54]: high level chapter - FPGA development based on IP core - principle and configuration of PLL PLL IP core (Altera)
- 【1206. 设计跳表】
- spark学习笔记(六)——sparkcore核心编程-RDD行动算子
- Fastboot刷机
- “date: write error: No space left on device”解决
- The diagram of user login verification process is well written!
- 客户案例 | 关注老年用户体验,银行APP适老化改造要避虚就实
猜你喜欢

FactoryBean的getObject调用时机

图解用户登录验证流程,写得太好了!

Functions that should be selected for URL encoding and decoding

Portraiture5全新升级版磨皮滤镜插件神器

易灵思T35 FPGA驱动LVDS显示屏

JMeter distributed pressure measurement

1.28亿美元!芬兰量子计算公司IQM获世界基金支持

C语言const用法详解
![[learning notes, dog learning C] string + memory function](/img/53/86e529dcc8a5a6b682e9485e7c152a.png)
[learning notes, dog learning C] string + memory function

Boom 3D new 2022 audio enhancement app
随机推荐
Message rejected MQ
JMeter distributed pressure measurement
shell awk
window对象的常见事件
Hcip 13th day notes
常见弱口令大全
175. Combine two tables (very simple)
A test class understands beanutils.copyproperties
图解用户登录验证流程,写得太好了!
“date: write error: No space left on device”解决
impala 执行计划详解
A math problem cost the chip giant $500million!
Docker creates MySQL 8.x container and supports Mac and arm architecture chips
Plato farm has a new way of playing, and the arbitrage eplato has secured super high returns
Database usage security policy
AcWing 2074. 倒计数 模拟
队列达到最大长度代码实战
图解 SQL,这也太形象了吧!
消息被拒MQ
HCIP第十四天笔记
