python 操作三大主流数据库 第一课
tags:
categories:
第一节 数据库简介
1. python操作三大主流数据库导学篇-mysql
1.关系型数据库和非关系型数据库的差异和适用场景
2.Mysql基础知识
2.新闻表设计小练习
3.使用Python操作Mysql
4.ORM
2. python操作三大主流数据库导学篇-MongoDB
1. 数据库介绍(文档、集合、数据库)
2. Mongo Shell
3. 学生信息数据库小练习
4. python操作MongoDB
5. ODM
3. python操作三大主流数据库导学篇-Redis
1. Redis的安装和使用
2. 常用数据类型(String,Set,List,Hash)
3. Redis-cli
4. 使用Python进行操作
第二节 数据库简介
1. 数据库分类
1. 关系型数据库
2. MySQL MariaDB(MySQL的分支) SQLite(小,嵌入式数据库) ORACLE SQL Server PostgreSQL
3. 非关系型数据库(Not Only SQL)
4. mongoDB redis HBASE Neo4j Cassandra CouchDB
2. 非关系数据库分类
- 非关系型数据库可以分为以下几类:
- 文档型
- key-value 型
- 列式数据库
- 图形数据库
3. 文档型非关系数据库举例
举例 | CouchDB, MongoDb |
---|
典型应用场景 | Web应用(与Key-Value类似,Value是结构化的,不同的是数据库能够了解Value的内容) |
数据模型 | Key-Value对应的键值对,Value为结构化数据 |
强项 | 数据结构要求不严格,表结构可变,不需要像关系型数据库一样需要预先定 义表结构 |
弱项 | 查询性能不高,而且缺乏统一的查询语法。 |
4. key-value 型非关系数据库举例
举例 | Redis, Voldemort, Oracle BDB |
---|
典型应用场景 | 内容缓存,主要用于处理大量数据的高访问负载用于一-些日志系统等等。 |
数据模型 | Key指向Value的键值对,通常用hash table来实现 |
强项 | 查找速度快 |
弱项 | 数据无结构化,通常只被当作字符串或者二进制数据 |
5. 列式数据库非关系数据库举例
举例 | Cassandra, HBase, Riak |
---|
典型应用场景 | 分布式的文件系统 |
数据模型 | 以列簇式存储,将同一-列数据存在一起 |
强项 | 查找速度快,可扩展性强,更容易进行分布式扩展 |
弱项 | 功能相对局限 |
5. 图形数据库非关系数据库举例
举例 | Neo4J, InfoGrid, Infinite Graph |
---|
典型应用场景 | 社交网络,推荐系统等。专注于构建关系图谱 |
数据模型 | 图结构 |
强项 | 利用图结构相关算法。比如最短路径寻址, N度关系查 |
弱项 | 很多时候需要对整个图做计算才能得出需要的信息,而且这种结构不太好做分布式的集群方案。 |