各种数据处理方案(SQL,NoSQL,其他)的应用场景
- 线上业务,读写的高性能要求
- 非海量数据(单机GB级别)
- 多机共享型操作,如session
- 支持事务(但并没有想像中的那么好用,逻辑上容易出问题)
- 优秀的原生数据结构
- 小型原子操作(如计数器)
- 不适用于N层结构的数据处理,或者说可以用于存储但是最好不要更新,以hash为例,包括redis实例(一个实例也等于是key-value字典)自己在内,只有两层结构,再多就不能使用原子操作命令,内容也只能存储成json之类的结构,不方便修改。
- 相对较少的数据(相对而言,千万级以上数据量可以处理但并不推荐)
- insert/update/select不能同时都很频繁(基本上只有多读少写是比较能接受的应用范围)
- 对应可靠性要求比较高的业务
- 单次业务操作要求复杂,变更频繁,但是操作频率并不高。(比如运营管理平台之类)
- BI型业务,要求高度优化的查询方式,ES之类也许可以得到相同的结果,但效率上还做不到这一点
- 海量数据(单机和普通机群无法处理时适用)
- 高扩展性
- 数据最好能整理成比较规则的行列形式
- 有比较多的join/group类操作/集合操作,或者更复杂的计算需求(相比之下,可以比ES之类的搜索查询复杂得多,脚本可能写得很复杂)。
- 即时性上要求不高,主要用于离线分析和处理
- 搭建和管理相对麻烦(如redis和mysql可以很简单的由普通技术人员单人搭建和维护)
- 它首先是一个搜索引擎而不是数据存储(其实也可以用做存储,只是说没有很多专门的存储那么好,但是可能对中小企业来说足够了)
- 是一个高效的数据分析引擎,自带分析用语法,比其他的工具强大
- 并不是一个全能的数据分析工具,如join之类的查询支持的并不好
- 分析的主要目标是数据列
- 数据量很大,列不定,所有列都有可能有查询需求(区别于mangodb)
- 大量新数据insert,大量search,少量update(频繁update会导致索引频繁变化,IO等都会受比较大影响)
- 有历史快照版本,可以找到已经删除掉的老数据(当然也会占用更多的空间)
- 键值型文档存储
景 - 不要求列相同(和ES差不多)
- 分析的操作的主要目标是数据行
- 存储量大但是价值比较低的数据
- 存储json型和对象型数据
- 少量索引,如果索引太多会有内存和性能瓶颈
- 大量高性能要求的在线业务并不适合

各种数据处理方案(SQL,NoSQL,其他)的应用场景的更多相关文章
- SQL,NoSQL和NewSQL的区别
SQL(Structured Query Language):数据库,指关系型数据库.主要代表:SQL Server.Oracle.MySQL.PostgreSQL. NoSQL(Not Only S ...
- 【转】Redis学习---NoSQL和SQL的区别及使用场景
什么是NoSQL NoSQL,指的是非关系型的数据库.NoSQL有时也称作Not Only SQL的缩写,是对不同于传统的关系型数据库的数据库管理系统的统称,它具有非关系型.分布式.不提供ACID的数 ...
- 数据库SQL,NoSQL之小感悟
遇到1000万数据表 最近遇到一个问题,就是单表数据过的存储及查询问题.举个例子:1000万的数据存在一个表中,字段4-5个样子,日常 开发中难免要做过滤.排序.分页.如果把这几个放在一起即要过滤又要 ...
- NoSQL 数据库的使用场景
摘要:对比传统关系型数据库,NoSQL有着更为复杂的分类——键值.面向文档.列存储.图数据库.这里就带你一览NoSQL各种类型的适用场景及一些知名公司的方案选择. 在过去几年,关系型数据库一直是数据持 ...
- 【数据处理】SQL Server高效大数据量存储方案SqlBulkCopy
要求将Excel数据,大批量的导入到数据库中,尽量少的访问数据库,高性能的对数据库进行存储. 一个比较好的解决方案,就是采用SqlBulkCopy来处理存储数据. SqlBulkCopy存储大批量的数 ...
- sql,nosql
1. 关系型数据库 关系型数据库,是指采用了关系模型来组织数据的数据库. 关系模型是在1970年由IBM的研究员E.F.Codd博士首先提出的,在之后的几十年中,关系模型的概念得到了充分的发展并逐渐成 ...
- 大约SQL/NoSQL数据库搜索/思考查询
转载请注明出处:jiq•钦's technical Blog Hbase特征: 近期在学习Hbase.Hbase基于行健是建立了索引的,查询速度会很快,全然实时. 可是Hbase要基于行健之外的字段进 ...
- Bank方案SQL
用于演示的Bank方案对应的SQL: /* 1.branch 开展银行交易业务的场所 */ DROP TABLE IF EXISTS branch; CREATE TABLE branch -- 开展 ...
- [转]基于Storm的实时数据处理方案
1 文档说明 该文档描述的是以storm为主体的实时处理架构,该架构包括了数据收集部分,实时处理部分,及数据落地部分. 关于不同部分的技术选型与业务需求及个人对相关技术的熟悉度有关,会一一进行分析. ...
随机推荐
- Oracle中增加,修改,删除表中的列
有些时候,当一个表已经建好,并且已经使用后,发现需要对表结构进行修改,这个时候就要对表中的列进行增删查改操作. 为表增加新列: ALTER TABLE table_name ADD ( column_ ...
- Grid++Report的几点总结
一.同事解决方案: 1.在View文件夹下建立报表文件A,用来作为报表呈现的载体.这个页面负责加载报表模板与加载数据源.其中报表模板由于后缀名为grf,在MVC中不做任何修改的情况下,系统会做路由处理 ...
- 错误 1 Files 的值“ < < < < < < < .mine”无效。路径中具有非法字符。
错误 1 Files 的值“ < < < < < < < .mine”无效.路径中具有非法字符. 今天使用SVN进行更新的时候,出现了如上问题,想起卓 ...
- 阿里RDS备份恢复
未使用root用户操作: 数据库版本要一致 数据目录:/data/mysqlbak/ 先按阿里给的步骤操作,最后出现一步出现,无法找到back_xxx.conf,但该文件已经存在.解决方法: sudo ...
- java的String类(一)
final类,无子类. 类内定义了char数组value[],私有,不可修改. String的长度,length(). 判空,isEmpty(). 索引index处的字符,charAt(index). ...
- Redis多机功能之Sentinel
Sentinel的目的:监视主从服务器,并在主服务器下线时自动进行故障转移 启动Sentinel 通过执行Redis安装文件中的redis-sentinel程序,可以启动一个Sentinel实例: r ...
- win8 C 盘 突然少了 十几G 空间 原因,解决方法
原因: win8 默认最大虚拟内存为 16G多,但现在电脑本身内存就大,所以应该不用了.我现在电脑本身内存是16G. 如果C盘空间大,这个无所谓了,如果C盘空间小可以按以下操作,拿回16G空间: 解决 ...
- Xcode entitlement 问题定位和解决指南
背景故事 前两天,本来一个运行正常.打包测试都没问题的XCode工程突然爆出各种奇怪的Entitlement错误: 什么签名的内容跟配置文件的不一致. 又或者 无法安装,因为签名或者配置文件的配置错误 ...
- Flash图表控件FusionCharts如何在图表中显示标识和图片
在FusionCharts的图表中显示外部商标 使用FusionCharts之后,用户可以在运行时加载需要在图表中显示的外部标识/图片/图像.这个标识可以GIF / JPEG / PNG或SWF文件格 ...
- 关于 mysql 2003 客户端连接报错的处理方法
在连接到 mysql 数据库服务器时,有时会在客户端报出 2003 的错误代码,并提示: 无法连接到服务器,但服务器却可以 ping 通,可能的原因如下: 1.网络不通.检查能不能ping通. 2.防 ...