一.数据库基础
1.什么是数据库
数据库是一个长期存储在计算机内的,有组织,有共享的,统一管理的数据集合。它是一个按数据结构来存储和管理数据的软件系统。
是用户存放数据,查询数据,操作数据的存储仓库,用户的各项数据被有组织的存放在数据库中。可以随时被有权限的用户查询,统计,添加,删除和修改
2.表
数据库是一系列二维数组的集合,用来存储数据和操作数据的逻辑结构。行被称为记录,是数据的单位;列被称为字段,每一列表示记录的属性。
数据库:存储数据,以便自己或者其他应用程序调运(mysql,mariadb,Oracle,postgreSQL,QSL server ,SQLite)
缓存: 记住开销昂贵的操作结果,加快读取速率 (redis,memcached,Hbase,rabbitMQ,mongoDB)
搜索索引:允许用户根据关键字做全文索引,或者以各种方式对数据进程过滤 (ElasticSearch --> 分片)
流处理:向其他进程发送消息,进行一步处理。(kafka,flink,storm)
批处理:定期处理积累的大批量数据。(Hadoop)
架构师-----> “了解组件特性
了解组件应用场景”
二.数据库技术构成
1.数据库系统
数据库:用来存放数据的地方
数据库管理系统:用于管理数据库的软件,授权,提供数据的操作机制,维护数据的安全性,完整性和可靠性。
数据库应用程序:为了提高数据库系统的处理能力所使用的管理数据库的软件补充。
数据库具有较高的数据独立性,既不依赖特定的数据库应用程序;
数据库系统的数据冗余小,可以节省数据的存储空间。
另外数据库系统还很容易实现多个用户的数据共享。
2.SQL 语言
数据定义语言(DDL):DROP, CREATE, ALTER等
数据操作语言(DML):INSERT(插入), UPDATE(修改),DELETE(删除)等
数据查询语言(DQL):SELECT语句
数据控制语言(DCL):GRANT, REVOKE, COMMIT, ROLLBACK等语句