sql与各个nosql数据库使用场景的示例分析

发布时间:2021-08-08 19:37 来源:亿速云 阅读:0 作者:小新 栏目: Mysql 欢迎投稿:712375056

这篇文章主要介绍了sql与各个使用场景的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

sql为主干为什么我这样理解:

单从技术角度来说

  • 关系型网格 充分的体现了现实事务

  • 对事务,审计,闪存等等对数据的重视所以如何一些特别主要的数据,一定要放到sql里面。一个系统里面至少有用户信息是重要的数据。

  • 所以sql必须有,而且数据存储的主干

什么时候引入

先看看sql - > sql + nosql的过程。

https://www.jb51.net/article/79236.htm 为什么要使用NoSQL

这些nosql?

对java语言而言:

  • :用于缓存 - 读速度极快(内存中)

  • - 读写事务都是均衡的.node.js开发的json

  • Neo4j - .java的的比较像SQL但查询更快,可惜高级功能收费… - 社交(图像数据库

  • Cassandra - 写数据比读快.-用于日志的存放。

  • HBase 离线分析

我的设想:

java语言而言:

  • - redis用于缓存(值里面存javabean)和不需要存储的热数据

  • - mongoDb用于不太重要的但要储的内容.

  • - Cassandra 用于管理 日志强烈建议(把日志放到数据库里面。)

  • - HBASE 离线分析,大数据

  • - solr,ES - 站内搜索和代替里面的SQL等

  • - 或者用neo4j代替sql数据库 , 有对事务要求的时候,单独起一个优先级为2的线程存到sql里面.

NoSQL纪元

当下已经存在很多的NoSQL数据库,比如MongoDB、Redis、Riak、HBase、Cassandra等等。每一个都拥有以下几个特性中的一个:

  • 不再使用SQL语言,比如MongoDB、Cassandra就有自己的查询语言

  • 通常是开源项目

  • 为集群运行而生

  • 弱结构化——不会严格的限制数据结构类型

适用的场景

储存用户信息,比如会话、配置文件、参数、购物车等等。这些信息一般都和ID(键)挂钩,这种情景下键值数据库是个很好的选择。

不适用场景

1)取代通过键查询,而是通过值来查询。Key-Value数据库中根本没有通过值查询的途径。

2)需要储存数据之间的关系。在Key-Value数据库中不能通过两个或以上的键来关联数据。

3)事务的支持。在Key-Value数据库中故障产生时不可以进行回滚。

免责声明:本站发布的内容(图片、视频和文字)以原创、来自本网站内容采集于网络互联网转载等其它媒体和分享为主,内容观点不代表本网站立场,如侵犯了原作者的版权,请告知一经查实,将立刻删除涉嫌侵权内容,联系我们QQ:712375056,同时欢迎投稿传递力量。