关系型数据库与非关系型数据库
我们都会先学习mysql pgsql mssql oracle 这类关系型数据库 ,
然后才会接触到 nosql非关系型数据库
非关系数据库主要是 mongodb elasticsearch redis
非关系型和关系型的区别是
关系型数据库 是表格形状 每一行都是一条记录,每一列都是一个字段
非关系型数据库是 树状的 ,数据可以一层包裹着一层,也可以并列,类似json
几种种常见的 非关系型分布式数据库 hadoop mongodb elasticsearch redis区别?
- MongoDB很适合那些表结构经常改变,数据量又比较大的应用场景。例如,游戏应用等。
- elasticsearch 适合数据不会进场改变, 字段类型不变的,数据量较大的应用场景.例如 数据分析.
- redis 因为高速的读写性能和搜索定位能力比较适合做临时数据缓存,消息队列缓存等引用场景
- hadoop 数据库是最早的分布式数据存储数据库,不用几百万的商用服务器,只用民用终端就可以实现大数据的安全存储
elasticsearch是什么?
elasticsearch 是一种非关系型nosql数据库,用于存储和操作json结构的数据
elasticsearch比传统数据有什么好处呢?
- 你可以直接提交json 不需要拆解成行记录
- 可以实现快速查找
- 可以分布式存储
- 支持复杂的聚合查询
缺点:
ES需要在创建字段前要预先建立Mapping,Mapping中包含每个字段的类型信息,
ES需要根据Mapping为字段建立合适的索引。
由于这个Mapping的存在,ES中的字段一但建立就不能再修改类型了。如果要修改必须重建
es经历了好几个版本, 5,6,7,8几个版本的最主要区别?
es5之前支持多个type
从es6开始不支持多个type ,只支持1个type
在es7中使用默认的_doc作为type,
在es8中 会放弃type
es指令与sql 指令有什么区别?
sql 必须终端连接数据库服务器后,提交sql语言进行增删改查操作
而es规定是通过http restful 的4种提交方式GET POST DELETE PUT实现增删改查操作
elasticsearch怎么用?
1我们先建一个库 (es中叫索引)
2然后插入一条记录,到es表中(es叫做document 缩写成 _doc)
同时es会自动创建记录新字段类型结构 (es中叫mapping)
3 接下来就可以随意增删改查了
es 命令采用http四种提交方式
POST /url #创建
DELETE /url #删除
PUT /url/xxx 更新或创建
GET /url/xxx 查看
版权声明:本文为zdyah原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。