一、简介 redis是一个基于网络的、高性能的key-value内存数据库 redis跟memcached类似,不过数据可以持久化,支持的数据类型丰富 redis有以下几个特点 高性能 低时延 丰富数据结构存取 支持持久化 二、应用场景 取最新N个数据的操作,例如博客网站获取最近的文章 排行榜取TOP N,上面得需求以时间为权重,这里取TOP N以条件为权重 设置精确过期时间得应用,如用户会话信息 计数器应用,比如记录用户访问网站次数 缓存,如缓存系统中经常访问的数据 发布/订阅功能 手机验证码,使用expire设置过期时间 二、业务流程 2.1 redis架构 无中心自组织的架构,节点之间使用Gossip协议来交换节点状态信息 各节点维护key->server得映射关系 Client节点可以向任意节点发起请求,节点不会转发请求,只是重定向client 如果client在第一次请求和重定向之间,cluster拓扑发生变化,则第二次重定向将被再次重定向,直到找到正确的server 如下图所示,在第一次请求时,如果请求的数据不在节点中,redis会要求客户端重定向到正确节点,如果在.... 有更新! 大数据基础--redis 程序人生
一、简介 1.1 基本概念 1.1.1 MapReduce(MR) MapReduce基于分而治之得思想,用于大规模数据集(大于1TB)得并行计算和离线计算,具有如下特点 高度抽象的编程思想 良好的扩展性 可通过添加节点扩展集群能力 高容错性 通过计算迁移或数据迁移等策略提高集群的可用性与容错性 1.1.2 Yarn Apache Hadoop Yarn(Yet Another Resource Negotiator)是一个通用的资源管理系统,可为上层应用提供统一的资源管理和调度,提高了集群资源利用率,将资源统一管理、数据共享。 1.2 资源调度与分配 hadoopp1.0中,只有HDFS和MapReduce,资源调度通过MRv1进行,存在很多缺陷: master是单点,故障恢复依赖于周期性的checkpoint,不保证可靠性,发生故障时通知用户,由用户决定是否重新计算 没有区分作业调度与资源调度 没有处理资源隔离与安全性 Hadoop2.0引入了yarn框架,以便更好的管理集群的资源调度与分配 二、功能架构 2.1 MapReduce 2.1.1 MapReduce过程 MapRed.... 有更新! 大数据基础--MapReduce和Yarn 大数据
一、下载hadoop Index of /hadoop/common (apache.org) 在这个地址中下载hadoop安装包,选择一个稳定版或者自己需要的版本下载即可 我下载了稳定版的hadoop,链接如下 https://dlcdn.apache.org/hadoop/common/stable/hadoop-3.3.6.tar.gz 二、下载对应版本的jdk Hadoop Java Versions - Hadoop - Apache Software Foundation 注意里面标注了有几个版本的java8,与hadoop可能存在一些兼容问题 这是我下载的版本 https://download.oracle.com/otn/java/jdk/8u391-b13/b291ca3e0c8548b5a51d5a5f50063037/jdk-8u391-linux-x64.tar.gz?AuthParam=1697686185_1fd488f4fad7ef4e80082165a49c9f3e 三、服务器配置 配置ssh免密登录,参考SSH免密登录 - 问尤龙の时光 (wenyou.... 有更新! 大数据基础--Hadoop环境搭建 大数据
一、概述 Zookeeper分布式服务框架是一个分布式应用程序协调服务,提供分布式、高可用性的协调服务能力; 安全模式下Zookeeper依赖Kerberos和LdapServer进行安全认证,非安全模式则不依赖于Kerberos和LdapServer。Zookeeper作为底层组件被上层组件使用并依赖,如Kafka,HDFS,HBase,Storm等 二、体系结构 2.1 服务架构 zookeeper集群是由一组server节点组成,这一组server节点中只有一个leader节点,其他节点都是follower 启动时选举出leader,各个节点互相投票,票数最多的节点选举为leader zookeeper使用自定义的原子消息协议,保证了整个系统中的节点数据得一致性 leader节点在接收到数据变更请求后,先写磁盘再写内存 2.2 容灾能力 Zookeeper完成选举就可以对外提供服务 对n个实例得服务 n为奇数时,假定n=2x+1,则成为leader得节点需要获得x+1票,容灾能力为x n为偶数时,假定n=2x+2,则成为leader得节点需要获得x+2票(大于一半),容灾能力为.... 大数据基础--Zookeeper 大数据
一、简介 HDFS(Hadoop Distributed File System)是Hadoop下的分布式文件系统具有高容错、高吞吐量等特性,可以部署在低成本的硬件上。 二、架构 HDFS架构如下所示,主要包含Namenode、client、datanode三个部分,一个HDFS系统,可以有多个client和datanode但是namenode只能有一个 client客户端包含HDFS的接口,用于访问HDFS的文件 namenode存储文件名,文件元数据,文件与数据块的对应关系 datanode是用于存储数据的节点 三、HDFS相关概念 3.1 block-块 HDFS默认一个块是128M,一个文件可以分为多个块 块的大小远远大于普通文件的大小,可以起到最小化寻址开销的作用 块的好处 支持大规模文件存储,将文件分成多个块,存储在不同节点上 简化系统设计,块的大小是固定的,可以快速查询有多少个块 适合数据备份 3.2 namenode和datanode namenodedatanode 存储元数据存储文件内容 数据保存在内存中数据保存在磁盘中 保存文件、block,datanode之间的.... 有更新! 大数据基础--HDFS 大数据
一、流程 大数据处理的基本流程如下 1.1 数据采集 通过各种形式将数据收集并聚合在一起 常见的数据类型: 结构化数据:mysql、oracle中存储的数据 半结构化数据:redis、xml等,需要对具体的值进行解析转化为结构化数据 非结构化数据:pdf、word、语音等数据 1.2 数据分析 批处理 对一段时间内的离线数据统一进行处理 流处理 实时处理数据 1.3 数据运用 处理完的数据可以提供个业务系统满足业务系统的数据需求,也有可鞥提供给机器学习算法使用。 1.4 常用框架 数据采集工具 结构化数据 kettle、datax、streamsets 日志采集 flume 分布式计算框架 批处理 map reduce 流处理 storm 混合处理 flink、spark 分布式文件系统 HDFS 分布式数据存储 MongoDB、HBase 查询分析框架 Hive、spark sql、flink sql 集群资源管理 hadoop yarn 分布式协调工具 zookeeper 数据迁移工具 Sqooq 有更新! 大数据基础--简介 大数据