数据库这门课程的知识点很多,也很零散,作为初学者,我们可以从2方面进行基础学习:! ~$ b- K- I7 ?2 d
1、对数据库有基本的了解
9 t5 s0 D' u6 V0 Y2 C# p2、掌握SQL语言及数据库软件的使用 一、对数据库有基本的了解
% P, n! Q+ W- m3 o5 C6 r8 A4 ?- V7 G' Z: d+ f
理论知识是学好数据库的基础,首先要对数据库的有一个初步的了解,这些概念性的东西我们不用记,只是留下一个大的印象就行。
& G$ y3 u! x5 u8 t( @1、了解数据库4要素,知道他们指的的什么,有什么特点:1 ?3 J& o) s2 `9 _% o, _* m
) X' J+ r# @; [7 S& q数据(Data)数据库(Database,DB)数据库管理系统(Database Management System,DBMS)数据库系统
3 ^% P0 ~9 m9 ~8 {( f 1.数据(Data)
" j' y) [1 [0 Y6 Y7 r. R数据(Data)是描述事物的符号记录,是数据库中存储的基本对象。数据在大多数人头脑中的第一个反应就是数字。其实从广义上说,数据的种类很多,文字、图形、图像、声音、语言、学生的档案记录、货物的运输情况等都是数据。( L- W: J% _7 g! W; t3 ?
2.数据库(Database,DB)
' N% @* @ }: f数据库(Database, DB)是存放数据的仓库。只不过这个仓库位于计算机存储设备上,而且数据是按一定的格式存放的。
, U0 W! z0 {/ q. s' S" o! l数据库本身不是独立存在的,它是组成数据库系统的一部分,在实际应用中,人们面对的是数据库系统(Database System, DBS)。
* I4 T$ H7 B, `3.数据库管理系统(Database Management System,DBMS)
2 T3 ]2 l6 U8 \数据库管理系统(DBMS)是我们熟悉的Accessk、MySQL、Oracle等数据库的统称。用户通过DBMS访问数据库中的数据,数据库管理员也通过DBMS进行数据库的维护工作。& d8 E( `4 p! L- \1 o& R/ K: a5 s* N3 A
4.数据库系统(Database System)
+ e" A% B8 t" l$ |. \. B数据库系统一般由数据库、数据库管理系统(及开发工具)、应用系统、数据库管理员和用户构成。# D: X, L6 y2 T! o
其中数据库管理员(Database Administrator, DBA)是负责数据库的建立、使用和维护等工作的专门人员。- p9 z6 U8 m3 x$ ]
2、了解数据模型的概及常用几种数据库模型9 s3 W+ r0 e, Y: e& l& E3 n% S
7 Q1 Q6 _' @! `5 E
1、数据模型" u- V8 X; J" L4 |/ M9 D
数据不能直接从现实世界存放到数据库中,它需要经过人们的认识、理解、整理、规范和加工。而数据模型就是对现实世界的数据特征的抽象,数据模型要满足三个方面的要求:
. c% s, X* Q+ f% H2 [能比较真实的模拟世界容易被人理解便于在计算机上实现8 ^1 `9 x G7 ^
不同的数据模型具有不同的数据结构形式。目前常用的数据模型有3种:层次模型、网状模型和关系模型。其中层次模型和网状模型统称为非关系模型。
( L3 `$ v' {- p/ j由于采用的数据模型不同,相应的数据库管理系统(DBMS)也不同。) K4 B& r( S# C. |1 j6 C- S2 e; z
在当今的互联网中,最常用的数据库模型主要是两种,即关系型数据库和非关系型数据库,这两类最重要的也是目前实际使用最多的数据库种类。
3 Y5 ^' L5 g! e: l+ Y2 m关系型数据库 关系型数据库,是基于表结构的数据库,其利用SQL语言来对数据进行定义和操作。
/ g+ `# ^' X+ w8 |, B; m8 M* d关系型数据库存储的数据往往是简单且静态的,比如我们常见的excel表格,这种数据库具有结构化程度高,独立性强,冗余度低等等优点。
& X( @# P1 H- y2 F7 d7 w. J- O5 ]现在市面上,比较常见的关系型数据库软件有MySQL、MSSQL、Oracle等等。+ V8 J6 R+ ?) B' |; T8 l) V# k
非关系性数据库 非关系型数据库一般指NoSQL,可以为我们提供动态的Schema来对非结构化数据进行存储。
+ L+ \2 j) J6 h8 ]1 R# s8 e在NoSQL中数据可以以多种方式存储,例如:列存储、文档存储、图存储或键值对存储等等等等。市面上比较常见的NoSQL有MongoDB、Cassandra等等。
1 y; b$ u- d* O- ~说到这,可能就有同学要问了?有没有一种数据库,是集百家所长,介于关系型数据库与NoSQL之间呢?
3 |' {5 f: b+ O3 N; ~, q2 v8 E答案是肯定的, PostgresSQL就是一个很好的例子。PostgresSQL是一款对象导向的数据库系统,适用于大量的半结构化数据的存储。PostgreSQL也是如今市面上使用最广的一款数据库软件之一
8 L5 m r+ B4 k我们该怎么从关系型数据库和NoSQL中进行选择呢?
& b4 x- O7 E9 D% Z* g# w这个问题的答案就要取决于我们的应用场景。% `* c, V1 _( l% E+ J) }6 K: |6 r
一般来讲,关系型数据库是垂直可扩展的,这就意味着我们可以通过在一台数据库服务器上对CPU,RAM等硬件进行提升,以提升关系型数据库的负载能力。2 C; _3 z% z9 u
而另一方面,NoSQL是横向可扩展的,也就意味着我们可以通过在我们的NoSQL中加入更多的服务器来对其进行扩展。' g' T9 R V4 _4 H; t- t
所以,关系型数据库更适合于存储大规模的,具有简单并且相对静态结构的数据。而当我们需要存储的数据是复杂的,一直在变的,需要我们的数据模型变得更灵活的时候,NoSQL就是一个很好的选择了。
1 F8 L% f6 ?- \& b) U2 Q8 ~( ^' ]进一步来讲,当我们的数据只有一定的个体或者应用来访问时,关系型数据库仍然是一个很好的选择。- _9 V1 \) e" l5 F& V8 ^2 k
而如果说我们的数据的访问个体数或者应用数会快速增长时,就可以用NoSQL,因为这意味着我们可能会接收到更多的半结构化或者非结构化的复杂数据。同时NoSQL的横向扩展特性也使得它的扩展比关系型数据库要更加便宜。0 k! F. \. I5 v/ U
二、SQL语言及数据库软件的使用0 u, D) X2 c! N( d
4 \% w6 k( Y! ?% o* L N @4 `+ Z
SQL是一种结构化查询语言,也是一种专门用来与数据库沟通的语言,学会了SQL语言,我们就可以愉快的从数据库管理系统中查找、编辑数据。
' f2 G8 o7 d# r" n! T) b学习SQL语言最大的难点不是找资源,也不是入门难,最难的是如何找到一个适合自己的系统的学习路径,并坚持。
7 ~0 y) W M# x0 t4 F我们可以从以下几个步骤开始学习:# u( o9 j5 u) ^! J0 U7 s: T" \5 [
1、看书了解SQL语法 " c6 y9 D' Q$ n3 k' M" H
看系统的书或者视频,比如《sql必知必会》或《sql基础教程》,这一步主要是让自己对SQL语言的语法有个大概的框架。
' A0 L" I G$ k& _0 ~/ f遇到看不懂的东西,直接先略过,完成比完美更重要。这样看完后,我们可能只懂了少部分,更多的是云里雾里。
" P9 A C2 }) e. J不过,没关系,因为这个状态才是正常的,学任何东西想要一部到位都是不可能的,千万不要以天才的标准来要求自己。" e9 C |8 g; C: P T' g5 c2 j
2、跟着敲例题2 y7 T; H2 C' ?3 {. o# q3 d1 h
我们学习的SQL最后还是要上级操作的,所以第二步就是选择一个线上编编辑器来练习教程中的例题或习题,动手做过后,会记得更清楚。
; h& z! `3 q4 d3 m在这个过程中,如果有不能实现的code,直接百度就能找到答案。! q5 k( x5 k3 ]" S2 J# A
3、刷题库题, D% E; S$ E" @( Q; M5 q, Q c' D. k$ g
刷完例题或习题后,我们对SQL语言语法这一部分就了解得差不多了,接下来就是大量刷题库进行巩固,经过这一步,我们就能轻松应对考试或面试的习题。
: I# }: f7 x2 y9 G- y& T* `4、选1种数据库软件开始实践8 ^5 D" _; ^0 y9 _1 K( @- q+ F% r
掌握了SQL语法后,我们就要选择一个具体的数据库产品去掌握它,入门推荐Mysql。9 A: B7 I5 Y! J, o
这里的学习方法又要重复前面的三步:6 F8 T9 F+ u' F7 {, p9 t" U
看书了解:推荐《MySQL必知必会》跟着敲例题:在电脑上安装MySQL库,把例题、习题都做一遍刷题库:网上资源太多,这里不在赘述。
7 G0 _! c( M- h8 O6 B# B$ N$ i 以上就是数据库的入门学习方法。也欢迎访问友盟学院《数据行业必备知识大词典》的相关课程,带你深度解析大数据相关的概念、术语、流程、选型与应用场景,简单易懂,快速掌握!
# S7 J, _5 a, S/ [( D! ]友盟学院 - 数据行业必备知识大词典更多数据分析相关干货,还可以看看这些问答。↓↓↓
/ [8 ^) R4 t8 M5 ~- ^用户画像:什么是用户画像,一般用户画像的作用是什么?数据埋点:数据埋点是什么?设置埋点的意义是什么?数据分析:数据分析中,你认为用户行为分析最重要的3个点是什么?数据运营:数据运营的具体工作内容是什么?) _4 I, Q$ K/ a
❤看后三件事❤5 ]5 E H0 ]# U! G1 J
如果你觉得这篇文章对你挺有启发,希望你可以帮我三个小忙:! |" w1 i7 ^) R( f
1、关注 @友盟全域数据 让我们成为长期关系;( Z% C( i/ Z% r* n% M Q: A
2、点赞,让更多的人也能看到这篇内容(收藏不点赞,都是耍流氓 -_-);
$ u4 H8 X4 K, f% j4 ~3、评论,让我第一时间了解你的真实想法;
+ n! }/ e2 L; o) o4 z感谢你的支持!/ T7 l3 r, z0 M
|