[CMU51445] 01-Relation Model & Relation Algebra
1 DATA MODELs
- Relational
- NoSQL:Key/Value、Graph、Document/Object、Wide-Column/Column-family
- usally used in ML:Array/Matrix/Vectors、
- Obsolete:Hierarchical、Network、Multi-Value
~~视频里面他提到一个很有趣的点,关于blockchain,He thinks everything else is all a scam and a waste of time ~~
2 Relation Model
2.1 关系模型中的概念
n-relation = n attribute columns table 关系就是表
-
一行是一个记录or tuple,一列是属性
-
Primary Key: uniquely identifies a single tuple
如果一个表没有显式定义一个主键,那么有些DBMS会自动生成一个主键,比如
MySQL
的AUTO_INCREAMENT
会为每一条记录添加一个类似ID的属性(这个好像叫做SQL 标准?) -
Foreign key:specifies that a attribute from one relation has to map to a tuple in another relation
3 DATA MANIPULATION LANGUAGES(DML)
Methods to store and retrieve information from a database
在关系模型中的DML一般就是☞关系代数
DML 分为Procedural和Non-Procedural的,前者的每次查询都会指定一个高级的策略,供你去寻找你想要的结果。后者只给出了想要的值,并不给出搜索策略(不讨论这种做法)
比如说关系代数中,你会写出一个关系表达式去查找你的result
3.1 RELATION ALGEBRA
包含:Selcet/Projecion/Union/Intersection/Difference/production/join等
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步