mirror of https://github.com/dunwu/db-tutorial.git
docs: 更新文档
parent
48bdd8da1b
commit
626d76398c
95
README.md
95
README.md
|
@ -82,13 +82,19 @@
|
|||
|
||||
> [HBase](https://dunwu.github.io/bigdata-tutorial/hbase) 📚 因为常用于大数据项目,所以将其文档和源码整理在 [bigdata-tutorial](https://dunwu.github.io/bigdata-tutorial/) 项目中。
|
||||
|
||||
- [HBase 应用指南](https://github.com/dunwu/bigdata-tutorial/blob/master/docs/hbase/hbase-quickstart.md) ⚡
|
||||
- [HBase 命令](https://github.com/dunwu/bigdata-tutorial/blob/master/docs/hbase/hbase-cli.md)
|
||||
- [HBase Java API](https://github.com/dunwu/bigdata-tutorial/blob/master/docs/hbase/hbase-api.md)
|
||||
- [HBase 配置](https://github.com/dunwu/bigdata-tutorial/blob/master/docs/hbase/hbase-ops.md)
|
||||
- [HBase 原理](https://github.com/dunwu/bigdata-tutorial/blob/master/docs/hbase/HBase原理.md) ⚡
|
||||
- [HBase 命令](https://github.com/dunwu/bigdata-tutorial/blob/master/docs/hbase/HBase命令.md)
|
||||
- [HBase 应用](https://github.com/dunwu/bigdata-tutorial/blob/master/docs/hbase/HBase应用.md)
|
||||
- [HBase 运维](https://github.com/dunwu/bigdata-tutorial/blob/master/docs/hbase/HBase运维.md)
|
||||
|
||||
#### [MongoDB](docs/nosql/mongodb) 📚
|
||||
|
||||
> MongoDB 是一个基于文档的分布式数据库,由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。
|
||||
>
|
||||
> MongoDB 是一个介于关系型数据库和非关系型数据库之间的产品。它是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似 json 的 bson 格式,因此可以存储比较复杂的数据类型。
|
||||
>
|
||||
> MongoDB 最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
|
||||
|
||||
- [MongoDB 应用指南](docs/nosql/mongodb/mongodb-quickstart.md)
|
||||
- [MongoDB 聚合操作](docs/nosql/mongodb/mongodb-aggregation.md)
|
||||
- [MongoDB 建模](docs/nosql/mongodb/mongodb-model.md)
|
||||
|
@ -105,38 +111,55 @@
|
|||
|
||||
## 📚 资料
|
||||
|
||||
- **Mysql**
|
||||
- **官方**
|
||||
- [Mysql 官网](https://www.mysql.com/)
|
||||
- [Mysql 官方文档](https://dev.mysql.com/doc/refman/8.0/en/)
|
||||
- [Mysql 官方文档之命令行客户端](https://dev.mysql.com/doc/refman/8.0/en/mysql.html)
|
||||
- **书籍**
|
||||
- [《高性能 MySQL》](https://book.douban.com/subject/23008813/) - 经典,适合 DBA 或作为开发者的参考手册
|
||||
- [《MySQL 必知必会》](https://book.douban.com/subject/3354490/) - 适合入门者
|
||||
- **教程**
|
||||
- [runoob.com MySQL 教程](http://www.runoob.com/mysql/mysql-tutorial.html) - 入门级 SQL 教程
|
||||
- [mysql-tutorial](https://github.com/jaywcjlove/mysql-tutorial)
|
||||
- **更多资源**
|
||||
- [awesome-mysql](https://github.com/jobbole/awesome-mysql-cn)
|
||||
- **Redis**
|
||||
- **官网**
|
||||
- [Redis 官网](https://redis.io/)
|
||||
- [Redis github](https://github.com/antirez/redis)
|
||||
- [Redis 官方文档中文版](http://redis.cn/)
|
||||
- [Redis 命令参考](http://redisdoc.com/)
|
||||
- **书籍**
|
||||
- [《Redis 实战》](https://item.jd.com/11791607.html)
|
||||
- [《Redis 设计与实现》](https://item.jd.com/11486101.html)
|
||||
- **源码**
|
||||
- [《Redis 实战》配套 Python 源码](https://github.com/josiahcarlson/redis-in-action)
|
||||
- **资源汇总**
|
||||
- [awesome-redis](https://github.com/JamzyWang/awesome-redis)
|
||||
- **Redis Client**
|
||||
- [spring-data-redis 官方文档](https://docs.spring.io/spring-data/redis/docs/1.8.13.RELEASE/reference/html/)
|
||||
- [redisson 官方文档(中文,略有滞后)](https://github.com/redisson/redisson/wiki/%E7%9B%AE%E5%BD%95)
|
||||
- [redisson 官方文档(英文)](https://github.com/redisson/redisson/wiki/Table-of-Content)
|
||||
- [CRUG | Redisson PRO vs. Jedis: Which Is Faster? 翻译](https://www.jianshu.com/p/82f0d5abb002)
|
||||
- [redis 分布锁 Redisson 性能测试](https://blog.csdn.net/everlasting_188/article/details/51073505)
|
||||
### Mysql 资料
|
||||
|
||||
- **官方**
|
||||
- [Mysql 官网](https://www.mysql.com/)
|
||||
- [Mysql 官方文档](https://dev.mysql.com/doc/refman/8.0/en/)
|
||||
- [Mysql 官方文档之命令行客户端](https://dev.mysql.com/doc/refman/8.0/en/mysql.html)
|
||||
- **书籍**
|
||||
- [《高性能 MySQL》](https://book.douban.com/subject/23008813/) - 经典,适合 DBA 或作为开发者的参考手册
|
||||
- [《MySQL 必知必会》](https://book.douban.com/subject/3354490/) - 适合入门者
|
||||
- **教程**
|
||||
- [runoob.com MySQL 教程](http://www.runoob.com/mysql/mysql-tutorial.html) - 入门级 SQL 教程
|
||||
- [mysql-tutorial](https://github.com/jaywcjlove/mysql-tutorial)
|
||||
- **更多资源**
|
||||
- [awesome-mysql](https://github.com/jobbole/awesome-mysql-cn)
|
||||
|
||||
### Redis 资料
|
||||
|
||||
- **官网**
|
||||
- [Redis 官网](https://redis.io/)
|
||||
- [Redis github](https://github.com/antirez/redis)
|
||||
- [Redis 官方文档中文版](http://redis.cn/)
|
||||
- [Redis 命令参考](http://redisdoc.com/)
|
||||
- **书籍**
|
||||
- [《Redis 实战》](https://item.jd.com/11791607.html)
|
||||
- [《Redis 设计与实现》](https://item.jd.com/11486101.html)
|
||||
- **源码**
|
||||
- [《Redis 实战》配套 Python 源码](https://github.com/josiahcarlson/redis-in-action)
|
||||
- **资源汇总**
|
||||
- [awesome-redis](https://github.com/JamzyWang/awesome-redis)
|
||||
- **Redis Client**
|
||||
- [spring-data-redis 官方文档](https://docs.spring.io/spring-data/redis/docs/1.8.13.RELEASE/reference/html/)
|
||||
- [redisson 官方文档(中文,略有滞后)](https://github.com/redisson/redisson/wiki/%E7%9B%AE%E5%BD%95)
|
||||
- [redisson 官方文档(英文)](https://github.com/redisson/redisson/wiki/Table-of-Content)
|
||||
- [CRUG | Redisson PRO vs. Jedis: Which Is Faster? 翻译](https://www.jianshu.com/p/82f0d5abb002)
|
||||
- [redis 分布锁 Redisson 性能测试](https://blog.csdn.net/everlasting_188/article/details/51073505)
|
||||
|
||||
### MongoDB 资料
|
||||
|
||||
- **官方**
|
||||
- [MongoDB 官网](https://www.mongodb.com/)
|
||||
- [MongoDB Github](https://github.com/mongodb/mongo)
|
||||
- [MongoDB 官方免费教程](https://university.mongodb.com/)
|
||||
- **教程**
|
||||
- [MongoDB 教程](https://www.runoob.com/mongodb/mongodb-tutorial.html)
|
||||
- [MongoDB 高手课](https://time.geekbang.org/course/intro/100040001)
|
||||
- **数据**
|
||||
- [mongodb-json-files](https://github.com/ozlerhakan/mongodb-json-files)
|
||||
- **文章**
|
||||
- [Introduction to MongoDB](https://www.slideshare.net/mdirolf/introduction-to-mongodb)
|
||||
|
||||
## 🚪 传送
|
||||
|
||||
|
|
Binary file not shown.
|
@ -81,10 +81,10 @@ footer: CC-BY-SA-4.0 Licensed | Copyright © 2018-Now Dunwu
|
|||
|
||||
> [HBase](https://dunwu.github.io/bigdata-tutorial/hbase) 📚 因为常用于大数据项目,所以将其文档和源码整理在 [bigdata-tutorial](https://dunwu.github.io/bigdata-tutorial/) 项目中。
|
||||
|
||||
- [HBase 应用指南](https://github.com/dunwu/bigdata-tutorial/blob/master/docs/hbase/hbase-quickstart.md) ⚡
|
||||
- [HBase 命令](https://github.com/dunwu/bigdata-tutorial/blob/master/docs/hbase/hbase-cli.md)
|
||||
- [HBase Java API](https://github.com/dunwu/bigdata-tutorial/blob/master/docs/hbase/hbase-api.md)
|
||||
- [HBase 配置](https://github.com/dunwu/bigdata-tutorial/blob/master/docs/hbase/hbase-ops.md)
|
||||
- [HBase 原理](https://github.com/dunwu/bigdata-tutorial/blob/master/docs/hbase/HBase原理.md) ⚡
|
||||
- [HBase 命令](https://github.com/dunwu/bigdata-tutorial/blob/master/docs/hbase/HBase命令.md)
|
||||
- [HBase 应用](https://github.com/dunwu/bigdata-tutorial/blob/master/docs/hbase/HBase应用.md)
|
||||
- [HBase 运维](https://github.com/dunwu/bigdata-tutorial/blob/master/docs/hbase/HBase运维.md)
|
||||
|
||||
#### MongoDB
|
||||
|
||||
|
|
|
@ -100,14 +100,14 @@ Document 使用 JSON 格式表示,下面是一个例子。
|
|||
- 实际的 node 上的 `primary shard` 处理请求,然后将数据同步到 `replica node`。
|
||||
- `coordinating node` 如果发现 `primary node` 和所有 `replica node` 都搞定之后,就返回响应结果给客户端。
|
||||
|
||||
[![es-write](https://github.com/doocs/advanced-java/raw/master/docs/high-concurrency/images/es-write.png)](https://github.com/doocs/advanced-java/blob/master/docs/high-concurrency/images/es-write.png)
|
||||
![](https://raw.githubusercontent.com/dunwu/images/dev/snap/20210712104055.png)
|
||||
|
||||
### ES 读数据过程
|
||||
|
||||
可以通过 `doc id` 来查询,会根据 `doc id` 进行 hash,判断出来当时把 `doc id` 分配到了哪个 shard 上面去,从那个 shard 去查询。
|
||||
|
||||
- 客户端发送请求到**任意**一个 node,成为 `coordinate node`。
|
||||
- `coordinate node` 对 `doc id` 进行哈希路由,将请求转发到对应的 node,此时会使用 `round-robin` **随机轮询算法**,在 `primary shard` 以及其所有 replica 中随机选择一个,让读请求负载均衡。
|
||||
- `coordinate node` 对 `doc id` 进行哈希路由,将请求转发到对应的 node,此时会使用 `round-robin` **轮询算法**,在 `primary shard` 以及其所有 replica 中随机选择一个,让读请求负载均衡。
|
||||
- 接收请求的 node 返回 document 给 `coordinate node`。
|
||||
- `coordinate node` 返回 document 给客户端。
|
||||
|
||||
|
|
|
@ -30,7 +30,7 @@ HBase 适用场景:实时地随机访问超大数据集。
|
|||
|
||||
## 基础
|
||||
|
||||
[HBase 维护](hbase-ops.md)
|
||||
[HBase 维护](HBase运维.md)
|
||||
|
||||
## 原理
|
||||
|
||||
|
@ -113,20 +113,20 @@ HBase 使用 ZooKeeper 作为分布式协调服务来维护集群中的服务器
|
|||
|
||||
## API
|
||||
|
||||
Java API 归纳总结在这里:[Hbase Java API](hbase-api-java.md)
|
||||
Java API 归纳总结在这里:[HBase 应用](hbase-api-java.md)
|
||||
|
||||
## 附录
|
||||
|
||||
### 命令行
|
||||
|
||||
HBase 命令行可以参考这里:[HBase 命令行](hbase-cli.md)
|
||||
HBase 命令行可以参考这里:[HBase 命令行](HBase命令.md)
|
||||
|
||||
## 更多内容
|
||||
|
||||
### 扩展阅读
|
||||
|
||||
- [HBase 命令](hbase-cli.md)
|
||||
- [HBase 配置](hbase-ops.md)
|
||||
- [HBase 命令](HBase命令.md)
|
||||
- [HBase 运维](HBase运维.md)
|
||||
|
||||
### 参考资料
|
||||
|
||||
|
|
|
@ -37,6 +37,8 @@
|
|||
- [MongoDB 高手课](https://time.geekbang.org/course/intro/100040001)
|
||||
- **数据**
|
||||
- [mongodb-json-files](https://github.com/ozlerhakan/mongodb-json-files)
|
||||
- **文章**
|
||||
- [Introduction to MongoDB](https://www.slideshare.net/mdirolf/introduction-to-mongodb)
|
||||
|
||||
## 🚪 传送
|
||||
|
||||
|
|
|
@ -70,6 +70,7 @@
|
|||
- **教程**
|
||||
- [Redis 命令参考](http://redisdoc.com/)
|
||||
- **文章**
|
||||
- [Introduction to Redis](https://www.slideshare.net/dvirsky/introduction-to-redis)
|
||||
- [《我们一起进大厂》系列- Redis 基础](https://juejin.im/post/5db66ed9e51d452a2f15d833)
|
||||
- **源码**
|
||||
- [《Redis 实战》配套 Python 源码](https://github.com/josiahcarlson/redis-in-action)
|
||||
|
|
|
@ -371,7 +371,7 @@ WHERE prod_name LIKE '__ inch teddy bear';
|
|||
`JOIN` 有两种连接类型:内连接和外连接。
|
||||
|
||||
<div align="center">
|
||||
<img src="https://raw.githubusercontent.com/dunwu/images/dev/cs/database/mysql/sql-join.png!zp" alt="sql-join">
|
||||
<img src="https://raw.githubusercontent.com/dunwu/images/dev/cs/database/mysql/sql-join.png" alt="sql-join">
|
||||
</div>
|
||||
|
||||
#### 内连接(INNER JOIN)
|
||||
|
|
|
@ -16,6 +16,7 @@ cd ${ROOT_DIR}/docs
|
|||
|
||||
# 生成静态文件
|
||||
npm install
|
||||
npm audit fix
|
||||
npm run build
|
||||
|
||||
# 进入生成的文件夹
|
||||
|
|
Loading…
Reference in New Issue