自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

菜菜的大数据开发の路

java后端&&大数据开发,菜,尚在不断学习中!

  • 博客(11)
  • 资源 (1)
  • 收藏
  • 关注

原创 四, Zookeeper分布式锁机制及其Java API 原生实现, Curator框架实现

四, Zookeeper 分布式锁机制和代码实现4.1 Zookeeper 分布式锁机制分布式锁主要用于在分布式环境中保护跨进程、跨主机、跨网络的共享资源实现互斥访问,以达到保证数据的一致性。[为什么Zookeeper可以实现分布式锁?][分布式锁实现原理]对实现过程的解读:zookeeper会在它的集群内维护一个永久根节点, 我们可以命名为/locks, 这个根节点的每个子节点维护着每台客户端向zookeeper申请的锁;代表这个锁的节点,是一个临时节点并且带有序号, 客户端

2021-07-30 16:21:15 155

原创 三, 利用Zookeeper实现 服务器动态上下线

三, 利用Zookeeper实现 服务器动态上下线3.1 需求在某分布式系统中, 主节点可以有多台, 可以动态上下线, 任意一台客户端都能实时感知到主节点服务器的上下线.3.2 需求分析3.3 具体实现先在集群上创建/servers 节点[zk: localhost:2181(CONNECTED) 0] create /servers "servers"Created /serversIDEA中创建包名cn.qsc.zkcase1新建java类, DistributeS

2021-07-29 11:18:00 466

原创 二, 对Zookeeper集群的 命令行操作, API操作 以及 Zookeeper选举机制

文章目录三, Zookeeper集群操作3.1 集群操作3.1.1 Zookeeper在集群上的安装步骤1. 集群内单主机安装步骤2. 配置服务器编号步骤3. 配置zoo.cfg步骤4. 集群操作Zookeeper 启/停/状态脚本3.1.2 ZooKeeper选举机制选举机制一, 初次启动时选举机制二, 非初次启动时(待理解)3.2 客户端 命令行 操作3.2.1 命令行语法3.2.2 znode 节点数据信息1. 查看当前znode节点所包含的内容2. 查看当前znode节点的详细数据3.2.3 zno

2021-07-28 16:44:19 367

原创 一, Zookeeper 简单入门和本地安装

一, Zookeeper入门1.1 概述Zookeeper 是一个开源的,分布式的, 为分布式框架提供协调服务的Apache项目.它是集群的管理者,监视着集群中各个节点的状态根据节点提交的反馈进行下一步合理操作。因为使用分布式系统就无法避免对节点管理的问题(需要实时感知节点的状态、对节点进行统一管理等等),而由于这些问题处理起来可能相对麻烦和提高了系统的复杂性,ZooKeeper作为一个能够通用解决这些问题的中间件就应运而生了。[Zookeeper工作机制]Zookeeper=文件系统+通

2021-07-27 11:40:59 223

原创 三-下-1, 数据清洗(ETL)和计数器浅析及案例实操

三, 数据清洗(ETL)和计数器 浅析 及案例实操ETL“ETL,是英文 Extract-Transform-Load 的缩写,用来描述将数据从来源端经过抽取(Extract)、转换(Transform)、加载(Load)至目的端的过程。ETL 一词较常用在数据仓库,但其对象并不限于数据仓库在运行核心业务 MapReduce 程序之前,往往要先对数据进行清洗,清理掉不符合用户要求的数据。清理的过程往往只需要运行 Mapper 程序,不需要运行 Reduce 程序。计数器3.1 数据

2021-07-21 10:36:18 381

原创 三-下-0, MapReduce Join 浅析及案例实操

三-下-0, MapReduce Join 浅析及案例实操MapReduce能执行大型数据集间的"连接"(join)操作.连接操作的具体实现技术取决于数据集的规模及区分方式.如果一个数据集很大(例如天气记录), 而另外一个集合很小(例如气象站元数据), 小到以至于可以分发到集群中的每一个节点之中.则可以执行一个MapReduce作业,将各个气象站的天气记录放到一块(例如, 根据气象站ID执行部分排序), 从而实现连接. Mapper或Reducer根据各气象站ID从较小的数据集合中找到气象站元数据,使

2021-07-20 21:24:30 410 1

原创 三-中下, 大数据基础架构Hadoop- MapReduce框架原理和工作流程剖析

文章目录3.1 InputFormat 数据输入3.1.0 切片与MapTask并行度决定机制3.1.1 Job提交流程源码和切片源码详解3.1.2 FileInputFormat 切片机制3.1.2.1 FileInputFormat类的切片过程3.1.2.2 FileInputFormat 切片大小的参数配置3.1.5 结构梳理: InputFormat 接口和它的各种实现类3.1.5.1 TextInputFormat3.1.5.2 CombineTextInputFormat3.1.5.2.1 Co

2021-07-13 21:36:02 632 4

原创 三-中下-0, MapReduce - Job提交和切片流程源码详解

3.1.2 Job提交流程源码和切片源码详解3.1.2.1 Job提交流程源码详解1. waitForCompletion()我们从Driver类, job.waitForCompletion处打断点进入方法内. public boolean waitForCompletion(boolean verbose) throws IOException, InterruptedException, ClassNotFoundException { ////判断状态是否为`DEFI

2021-07-11 21:02:57 629 2

原创 三-中上, 大数据基础架构Hadoop- Hadoop序列化概述和案例实操 hf

文章目录二, Hadoop序列化2.1 序列化概述2.2 自定义bean对象实现序列化接口(Writable)2.3 序列化案例实操二, Hadoop序列化2.1 序列化概述[什么是序列化 ?]序列化 就是把内存中的对象, 转换为字节序列(或其他数据传输协议)以便于存储到磁盘(持久化)和网络存储.反序列化 就是将收到的字节序列(或其他数据传输协议)或者是磁盘的持久化数据, 转换为内存中的对象.简而言之就是, 序列化是把对象转化为可传输的字节序列, 反序列化是把可传输的字节序列转化为

2021-07-08 08:08:02 350 1

原创 三-上, 大数据基础架构Hadoop- Mapreduce概述以及经典WordCount案例实操 hf

一, MapReduce概述1.1 MapReduce定义MapReduce是一个分布式程序的编程框架, 使用户开发"基于Hadoop的数据分析应用"的核心框架.MapReduce 核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完成的分布式运算程序, 并发运行在Hadoop集群上.1.2 MapReduce优缺点优点缺点易于编程(只需实现一些接口, 就能完成分布式程序)不擅长实时性计算(做不到秒回计算结果)良好的扩展性(简单的增加机器来提升算力)不擅长

2021-07-05 16:55:22 386 2

原创 ?- LeeCode 53, 最大子序和(Easy)(暴力法, 分治法, 动态规划法)

2.x LeeCode 53, 最大子序和(Easy)(暴力法, 分治法, 动态规划法)[案例需求]Category Difficulty Likes Dislikesalgorithms Easy (54.28%) 3276 -Tagsarray | divide-and-conquer | dynamic-programming给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例 1:输入:nums = [-2,1,-3,4,-1

2021-07-01 16:36:44 172

20分钟学会用IDEA_DEBUG调试JAVA, 笔记源文件和实例DEMO

20分钟学会用IDEA_DEBUG调试JAVA, 笔记源文件和实例DEMO

2021-04-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除