- 博客(22)
- 收藏
- 关注
原创 SparkRDD
目录一、RDD的概述 1.1 什么是RDD? 1.2 RDD的属性 1.3 WordCount粗图解RDD 二、RDD的创建方式 2.1 通过读取文件生成的 2.2 通过并行化的方式创建RDD 2.3 其他方式 三、RDD编程API 3.1 Transformation 3.2 Action 3.3 Spark WordCount代码编写 3.4 WordCount执行过程图 四、RDD的宽依赖和窄依赖 4.1 RDD依赖关系的本质内幕 4.2
2021-08-09 09:46:11
236
原创 Scala
Scala// 重点讲述的是与java不同的地方。一.基本介绍1.第一个Scala程序1:object:关键字,声明一个单利对象(伴生对象,跟自己的同名类相伴相生),解决静态功能。 2.变量和数据类型2.1 常量和变量 // 类型可以推断的时候可以省略,声明的时候就要有初始值。var 变量名[:变量类型] = 初始值 //可变val 常量名[:常量类型] = 初始值 //不可变 2.2 标识符命名规范// Scal
2021-06-29 11:47:17
748
1
原创 Flume组件的常见类型及拓扑结构
学习Flume就是学习Flume组件的如何使用,整理FLume常见组件类型如下:下面是FLume常见的拓扑结构:复制:负载均衡:聚合:多路:多路需要配合拦截器使用。
2021-06-22 08:29:06
760
55
原创 Kafka的文件存储机制
kafka的文件存储机制:Kafka中消息是以topic进行分类的,生产者生产消息,消费者消费消息,都是面向topic的。topic是逻辑上的概念,而partition是物理上的概念,每个partition对应于一个log文件,该log文件中存储的就是producer生产的数据。Producer生产的数据会被不断追加到该log文件末端,且每条数据都有自己的offset。消费者组中的每个消费者,都会实时记录自己消费到了哪个offset (group +topic + partition),以便出错恢
2021-06-21 15:35:01
889
75
原创 Flume中的事务(图解)
直接进入主题: FLume事务包括Put事务和Take事务。Flume事务保证了数据在Flume中传输的时候不会丢失,需要注意的是,Take事务可能导致数据重复。
2021-06-21 14:42:03
2061
4
原创 ZooKeeper选举机制图解
1.为什么要选举?z1.总原则:分布式集群中的每台机器都参与投票,通过交换选票得到每台机器的最终得票。一旦出现票数超过机器总数的一半以上数量,当前机器就是Leader。
2021-06-18 20:36:41
1345
29
原创 Zookeeper监听器原理图解
一、Zookeeper的监听器原理理解(1)在Zookeeper的API操作中,创建main()主方法即主线程;(2)在main线程中创建Zookeeper客户端(zkClient),这时会创建两个线程:线程connet负责网络通信连接,连接服务器;线程Listener负责监听;(3)客户端通过connet线程连接服务器;图中getChildren("/" , true) ," / "表示监听的是根目录,true表示监听,不监听...
2021-06-18 19:53:54
1285
2
原创 细的不能再细的HDFS客户端写数据流程(图+流程)
step1:client ----> NN 客户端(你可以理解为shell命令行、java上调用API等等)调用抽象类FileSystem的get( )获取一个DistributedFileSystem对象, 然后调用DistributedFileSystem的create()方法该方法在底层会调用clientProtocol.create()方法,发起对namenode的RPC连接,通知namenode在HDFS文件系统中创建一个新的空文件。step2: NN----> c...
2021-06-18 18:24:07
1068
2
原创 Leetcode 509 斐波那契数 (图解)
暴力递归/* 斐波那契数,通常用 F(n) 表示,形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。给出n求F(n).*/// 严格来讲,并不是一个正宗的动态规划问题,但是可以帮助我们理解动态规划的特性。 // 这题可以显示出一个动态规划问题的优化解题步骤:/*暴力递归(自顶向下递,自下向上归) ----> 带备忘录的递归(自顶向下递,自下向上归) .
2021-06-17 14:46:41
1127
1
原创 Paxos算法
Paxos是一个基于消息传递的解决分布式数据一致性的算法。Paxos算法中共有三种角色: Proposer:向集群提出议案。 Acceptor:对提议进行投票,只有在达到多数派时提议才会被接收。 Learner:提议接受者,对集群的一致性没有什么影响,单纯的记录人员。 另外,client也是一个重要组成部分,是请求Proposer发起提议的。Proposal:proposer提出的议案或者建议,编号为n和内容为...
2021-06-17 13:56:12
989
2
原创 Hadoop集群快速搭建
一、hadoop开发环境搭建shell连接,以root用户登录。1.准备一台虚拟机① 最小化安装2.hadoop101(模板机)① 修改hostname vi /etc/hostname② 固定IP vi /etc/sysconfig/network-scripts/ifcfg-ens33③ 修改hosts 在windows上,cmd,管理员模式进入,cd /windows/system32/d
2021-06-16 21:35:33
1230
2
原创 CAP原则图解
CAP原则又称CAP定理,指的是在一个分布式系统中,一致性(Consistency)、可用性(Availability)、分区容错性(Partition tolerance)。CAP 原则指的是,这三个要素最多只能同时实现两点,不可能三者兼顾。...
2021-06-16 15:02:31
2001
39
原创 归并排序算法
归并排序是现在经常会遇到的面试题,代码放在下边。public class MergeSort{ public static void main(String[]args){ //测试代码 不写了。 } // 归并排序 public static void mergeSort(int[] arr,int low,int high){ // 递归结束条件 if(low < high){...
2021-06-16 09:55:01
975
原创 HBase布隆过滤器简介
上面是一个布隆过滤器的简略工作图。布隆过滤器的特点:--能判断一定没有,但不能判断有。每一个HFile都有一个布隆过滤器。原理:会维护一个数组,一开始数组元素都是0。 当put数据时,HBase会拿上RowKey经过几个hash算法进行计算,计算出几个位置,把相应的位置改成1,已经是1了就继续保持1。 当get数据时,HBase会拿上RowKey经过几个hash算法进行计算,计算出相应位置,查看这些位置上数值是否都是1,如果满足,则该HFile可能存在要读取的数据...
2021-06-16 09:11:07
1107
原创 Kafka之零拷贝技术
零拷贝技术(zero-copy)是指将数据直接才从磁盘文件复制到网卡设备中,不需要经过应用程序,减少了内核态和用户态的切换。jav
2021-06-15 08:51:29
2597
2
原创 MySQL命令执行顺序的理解
我觉得设计sql的人真是一个天才,我充满了敬佩。(说不定也是一个斗地主的好手)记得以前老师教SQL语言的时候,总是从说规则要求如下的执行顺序:1. FROM 标识了这条语句要查询的数据源。 读取命令:inner join 计算笛卡尔乘积/on过滤/外加列 2. WHERE 对临时表进行过滤,满足where子句的列,生成新表。 能优先在这里筛选,就尽量在这里筛选,考虑到性能。 3. GROUP BY 拿到上表,看groupby后面的列是什么,然后查看...
2021-06-14 18:00:07
1416
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人