Redis :间值数据库,适合缓存用户Session会话与经常需要查的数据
1.Redis集群,为什么在项目中使用集群
  1.持久化,持久化是最简单的高可用方法(有时甚至不被归为高可用的手段),主要左右是数据备份,即将数据存储在硬盘,保证数据不会因进程退出而丢失;
2、复制:主从复制是高可用Redis的基础,哨兵和集群都是在复制基础上实现高可用的。复制主要实现了数据的多机备份,以及对于读操作的负载均衡和简单的故障恢复。缺陷:故障恢复无法自动化;写操作无法负载均衡;存储能力受到单机的限制。
3、哨兵:在复制的基础上,哨兵实现了自动化的故障恢复。缺陷:写操作无法负载均衡;存储能力受到单机的限制。
4、集群:通过集群,Redis解决了写操作无法负载均衡,以及存储能力受到单机限制的问题,实现了较为完善的高可用方案。

MongDB:是一个高性能,开源,无模式的文档型数据库,京东用它保存商品数据。
MongDB可以通过副本集、分片来扩展数据库性能;传统的关系型数据库一般是与数据库、表、记录三个层次概念组成,MongDB是由数据库、集合、文档对象三个层次组成。数据库对于关系型数据库里的表,但是集合中没有列、行和关系概念,这体现了模式自由的特点。
MongDB主要解决的是海量数据的访问效率问题。因为MongDB主要支持海量数据存储的,所以MongDB自带了了一个出色的分布式文件系统GridFS,可以支持海量数据的存储。
但是它不支持事务,没有SQL系统

MPP架构分布式数据库,主机、操作系统、内存、存储都是自我控制的,不存在共享。也就是每个节点都是一个独立的数据库。节点之间的信息交互是通过节点互联网络实现。
通过将数据分布到多个节点上来实现规模数据的存储,通过并行查询处理来提高查询性能。把小数据库组织起来形成一个大数据库。各个节点不共享资源,每个executor可以独自完成数据的读取和计算。
(这里,我看到一个“木桶短板”原理,我们这边应用场景是抽取各业务系统的数据,那是不是能够把各个业务系统理解为每个节点;但是木桶短板原理,如果出现一个业务系统出现问题,是不是全盘崩溃)
底层的实例是postgresql;实际用的是greenplum (Greenplum是一种基于PostgreSQL的分布式数据库)
MPP是将任务并行的分散到多个服务器和节点上,在每个节点上计算完成后,将各自部分的结果汇总在一起得到的最终的结果。
MPP架构特征:
 任务并行执行;
 数据分布式存储(本地化)
 分布式计算
 私有资源:每个节点只能访问自己本地的资源
 横向扩展
 Shared Nothing架构 (无共享结构)

kafka  是一个分布式流媒体平台:
    发布和订阅消息流,这个功能类似于消息队列;
    以容错的方式记录消息流,kafka以文件的方式来存储消息流
    可以在消息发布的时候进行处理
主要应用场景:
  在系统或应用程序之间构建可靠的用于传输实时数据的管道,消息队列功能
  构建实时的流数据处理程序来变换或处理数据流,数据处理功能
 通过对消息指定主题可以将消息分类,消费者可以只关注自己需要的topic中的消息
消费者是通过与kafka集群简历长连接的方式,不断从集群中拉取消息,然后对消息进行处理;同一个主题下,消费者和生产这的数量并不是对应的,
短连接,是值通讯双方在有数据交互时,就建立一个连接,数据发送完成后,则断开此连接,即每次连接只完成一项业务的发送。

Redis、MPP、kafka 、MongDB简介的更多相关文章

  1. Redis Cluster搭建方法简介22211111

    Redis Cluster搭建方法简介 (2013-05-29 17:08:57) 转载▼       Redis Cluster即Redis的分布式版本,将是Redis继支持Lua脚本之后的又一重磅 ...

  2. kafka原理简介并且与RabbitMQ的选择

    kafka原理简介并且与RabbitMQ的选择 kafka原理简介,rabbitMQ介绍,大致说一下区别 Kafka是由LinkedIn开发的一个分布式的消息系统,使用Scala编写,它以可水平扩展和 ...

  3. redis、kafka、rabittMQ对比

    本文不对三者之间的性能进行对比,只是从三者的特性上区分他们,并指出三者的不用应用场景. 1.publish/subscribe 发布订阅模式如下图所示可以具有多个生产者和发布者,redis.kafka ...

  4. redis、kafka、rabittMQ对比 (转)

    本文不对三者之间的性能进行对比,只是从三者的特性上区分他们,并指出三者的不用应用场景. 1.publish/subscribe 发布订阅模式如下图所示可以具有多个生产者和发布者,redis.kafka ...

  5. 替代Flume——Kafka Connect简介

    我们知道过去对于Kafka的定义是分布式,分区化的,带备份机制的日志提交服务.也就是一个分布式的消息队列,这也是他最常见的用法.但是Kafka不止于此,打开最新的官网. 我们看到Kafka最新的定义是 ...

  6. 最简单流处理引擎——Kafka Streaming简介

    Kafka在0.10.0.0版本以前的定位是分布式,分区化的,带备份机制的日志提交服务.而kafka在这之前也没有提供数据处理的顾服务.大家的流处理计算主要是还是依赖于Storm,Spark Stre ...

  7. Kafka Connect简介

    Kafka Connect简介 http://colobu.com/2016/02/24/kafka-connect/#more Kafka 0.9+增加了一个新的特性Kafka Connect,可以 ...

  8. Kafka学习之路 (一)Kafka的简介

    一.简介 1.1 概述 Kafka是最初由Linkedin公司开发,是一个分布式.分区的.多副本的.多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),常见可以用于web/ng ...

  9. Kafka(一)Kafka的简介与架构

    一.简介 1.1 概述 Kafka是最初由Linkedin公司开发,是一个分布式.分区的.多副本的.多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),常见可以用于web/ng ...

随机推荐

  1. Angular本地数据存储LocalStorage

    //本地存储数据===================================.factory('locals',['$window',function($window){ return{ / ...

  2. C++和G++手工开栈的=_=

    微软的编译器(C++) #pragma comment(linker, "/STACK:102400000,102400000") G++ << ; // 256MB ...

  3. NSIS语法解析

    注释.!define.变量.!include.常量 ; Script generated by the HM NIS Edit Script Wizard. ; HM NIS Edit Wizard ...

  4. DVWA 之medium级别sql注入

    中级注入的提交方式从get请求改为post请求,可以用burp抓包注入或抓注入点 1 .  判断是否有注入 sqlmap -u "http://192.168.242.1/dvw/vulne ...

  5. 转载 Python 安装setuptools和pip工具操作方法(必看)

    本文章转载自 脚本之家 http://www.jb51.net  感谢! setuptools模块和pip模块是python进行第三方库扩展的极重要工具,例如我们在需要安装一些爬虫或者数据分析的包时就 ...

  6. Django--csrf跨站请求伪造、Auth认证模块

    form表单中使用跨站请求伪造 { % csrf_token % } 会动态生成一个input框,内部的value是随机刷新的 如果不想校验csrf from django.views.decorat ...

  7. leetcode 847. Shortest Path Visiting All Nodes 无向连通图遍历最短路径

    设计最短路径 用bfs 天然带最短路径 每一个状态是 当前的阶段 和已经访问过的节点 下面是正确但是超时的代码 class Solution: def shortestPathLength(self, ...

  8. js中的自执行匿名函数 (function(){})()

    JS函数有两种命名方式 1.声明式 声明式会导致函数提升,function会被解释器优先编译.即我们用声明式写函数,可以在任何区域声明,不会影响我们调用. function XXX(){} 2.函数表 ...

  9. DAO设计模式总结

    1.DAO(Data Access Object,数据访问对象),主要的功能是用于进行数据操作的,在程序的标准开发框架中属于数据层的操作. 数据开发结构流程: 资源层是数据库的操作层,里面可以进行各种 ...

  10. HDFS体系结构概述