- 博客(89)
- 收藏
- 关注
原创 Kafka的消息格式和存储机制
存储机制kafka的数据存储:每个topic的分区对应一个文件夹,用来保存一个分区的数据。这个文件夹下分为多个segment,将分区数据分为多个片段。每个segment有index和log两个文件。[hadoop@hadoop000 topic_test-0]$ ls00000000000000000099.index 00000000000000000099.logindex文件内容:[hadoop@hadoop000 kafka_2.11-2.2.1]$ bin/kafka-run-c
2021-01-27 17:59:56
1050
原创 从kafka的acks参数来理解:回调函数
一般情况下,producer在发送一条数据时就会登记回调函数(回调函数暂时不运行,由于是异步,主程序会继续发送其他数据),数据到达服务器broker上指定分区时,服务器会通知producer已经发送成功。producer收到消息后就会触发回调函数,可以显示这条数据在服务器端的一些信息(偏移量,分区等)。Kafka的producer:public static void producerSendWithCallback(){ Properties properties = new Prop
2021-01-27 00:42:45
1878
1
原创 Flume的容错性测试和双层Flume架构
目录一.Failover Sink Processor测试一.Failover Sink Processor测试官网解释Failover Sink Processor:Failover Sink Processor维护一个按优先级排列的sink列表,确保只要有一个sink可用,事件就会被处理(交付)。Failover机制的工作原理是将失败的接收转移到池中,在池中为它们分配一个冷却期,在重新尝试它们之前,随着顺序故障的增加而增加。一旦接收器成功地发送了一个事件,它就会被恢复到活动池。sink有一个与它
2021-01-25 23:50:10
1900
4
原创 Flume拦截器自定义开发
目录一.流程图二.拦截器开发三.配置文件四.运行结果一.流程图二.拦截器开发添加依赖:<dependency> <groupId>org.apache.flume</groupId> <artifactId>flume-ng-core</artifactId> <version>1.6.0-cdh5.15.1</version></dependency>开始网不好,下载的依赖总是爆红。也可
2021-01-25 16:03:59
615
2
原创 分布式日志收集——Flume学习笔记
目录一.Flume架构二.通过netcat写入到控制台三.通过exec写入到hdfs四.Spooling Directory Source五.Taildir Source(非常重要)一.Flume架构执行流程:概念event:event将传输的数据进行封装,是flume传输数据的基本单位,如果是文本文件,通常是一行记录,event也是事务的基本单位。event从source,流向channel,再到sink,本身为一个字节数组,并可携带headers(头信息)信息。event代表着一个数据的最小完
2021-01-24 17:42:09
652
1
原创 Hadoop3.1.4(apache发行版)HA搭建时遇到的问题及解决方案
目录一.端口占用问题二.权限问题三.缺包或找不到主类问题四.目录变文件问题五.java空指针问题主要参照的两篇博客:Hadoop3.2.0使用详解.hadoop3.1.0 HA高可用完全分布式集群的安装部署(详细教程).一.端口占用问题2021-01-02 19:16:35,007 INFO org.apache.hadoop.metrics2.impl.MetricsSystemImpl: Stopping JournalNode metrics system...2021-01-02 19:
2021-01-03 16:17:52
1198
原创 玩转算法(八)——查找表(数字之和)
目录数字之和类型1. 两数之和(简单)15. 三数之和(中等)18. 四数之和(中等)16. 最接近的三数之和(中等)数字之和类型1. 两数之和(简单)思路一:先排序再使用双指针。时间复杂度为O(nlogn)。但是本题,排序后索引改变了,会有点麻烦。leetcode中167题,可直接用双指针进行求解。思路二:使用哈希表,需要注意的是,不能先把数组中所有数据都放入哈希表,因为重复的数会被覆盖,需要建立一个指针从第一个数往后移动,指针之前的数放入哈希表 ,指针的数和之前的哈希表进行计算。时间复杂度为O
2020-11-28 17:12:23
251
原创 玩转算法(七)——查找表(简单应用)
目录242. 有效的字母异位词202. 快乐数290. 单词规律205. 同构字符串451. 根据字符出现频率排序242. 有效的字母异位词242. 有效的字母异位词202. 快乐数202. 快乐数290. 单词规律290. 单词规律205. 同构字符串205. 同构字符串451. 根据字符出现频率排序451. 根据字符出现频率排序...
2020-11-23 19:39:47
347
原创 玩转算法(六)——查找表(查找交集及进阶)
目录查找表介绍查找表相关题目349. 两个数组的交集(简单)350. 两个数组的交集 II(简单)查找表介绍查找表的底层结构:TreeMap和TreeSet的底层用的平衡二叉树。HashMap和HashSet的底层用的哈希表(数组+链表)。如果只需要简单的进行插入和查找,使用HashMap和HashSet效率会更高。但是会使查找表失去顺序性,求解下面问题适合用TreeMap和TreeSet。查找表相关题目349. 两个数组的交集(简单)349. 两个数组的交集public int[]
2020-11-20 18:33:56
241
原创 玩转算法(五)——数组(滑动窗口)
目录209. 长度最小的子数组(中等)3. 无重复字符的最长子串(中等)438. 找到字符串中所有字母异位词(中等)76. 最小覆盖子串(困难)209. 长度最小的子数组(中等)209. 长度最小的子数组3. 无重复字符的最长子串(中等)3. 无重复字符的最长子串438. 找到字符串中所有字母异位词(中等)438. 找到字符串中所有字母异位词76. 最小覆盖子串(困难)76. 最小覆盖子串...
2020-11-18 21:27:03
792
原创 玩转算法(四)——数组(指针碰撞)
目录字符串回文或反转344. 反转字符串345. 反转字符串中的元音字母125. 验证回文串到达目标值或最大值167. 两数之和 II - 输入有序数组11. 盛最多水的容器字符串回文或反转344. 反转字符串344. 反转字符串345. 反转字符串中的元音字母345. 反转字符串中的元音字母125. 验证回文串125. 验证回文串到达目标值或最大值167. 两数之和 II - 输入有序数组167. 两数之和 II - 输入有序数组11. 盛最多水的容器11. 盛最多
2020-11-16 10:56:37
336
原创 玩转算法(一)——时间复杂度
目录数据规模递归算法的时间复杂度均摊时间复杂度数据规模public class NumScale { public static void main(String[] args) { for(int x = 0; x < 10; x++) { double n = Math.pow(10, x); long startTime = System.currentTimeMillis(); int sum
2020-11-08 11:49:52
297
原创 数据结构之树(红黑树)
目录2-3树的定义2-3树保持平衡红黑树和2-3树2-3树的定义2-3树保持平衡插入3-节点:插入3-节点,父节点为2-节点:插入3-节点,父节点为3-节点:红黑树和2-3树3节点的左节点是红节点。
2020-11-04 13:46:56
164
原创 数据结构之树(并查集)
目录Quick-FindQuick-Union基于size的优化基于rank的优化Quick-Find0,2,4,6,8的标签为0。1,3,5,7,9的标签为1。标签为0和1表示两个不同的集合。查找元素p所对应的集合编号,O(1)复杂度private int find(int p) { if(p < 0 || p >= id.length) throw new IllegalArgumentException("p is out of bound.");
2020-10-31 12:07:54
369
原创 PyTorch深度神经网络及训练入门
目录图片数据预处理torchvision中datasets的数据文件夹中的数据图片数据预处理torchvision中datasets的数据import torchimport torch.utils.data as Datafrom torchvision.datasets import FashionMNISTimport torchvision.transforms as transformsfrom torchvision.datasets import ImageFolder##
2020-10-16 19:31:57
698
原创 机器学习入门(三)——PCA(主成分分析)
目录一.什么是PCA二.使用梯度上升法求解PCA问题一.什么是PCA使均值等于0,demean=0二.使用梯度上升法求解PCA问题通过向量的运算计算:def f(w, X): return np.sum((X.dot(w)**2)) / len(X) def df_math(w, X): return X.T.dot(X.dot(w)) * 2. / len(X) def df_debug(w, X, epsilon=0.0001): res = np.
2020-09-27 11:33:32
666
原创 安装kafka eagle时踩的一个大坑
根据网上的教程kafka eagle的配置文件配好后,启动kafka eagle,kafka eagle的面板却显示不了kafka的任何信息。我的配置:kafka.eagle.zk.cluster.alias=cluster1cluster1.zk.list=hadoop000:2181cluster1.kafka.eagle.broker.size=20kafka.zk.limit.size=25kafka.eagle.webui.port=8048cluster1.kafka.ea
2020-09-22 15:36:53
6757
2
原创 Kafka吞吐量大的原因
目录概念及优劣势分析kafka为什么吞吐量大日志检索:概念及优劣势分析与其他mq的区别:kafka其实是个流处理平台,只是提供了发布订阅和topic支持的功能吞吐量高,单区有序,但整体不保证有序能够通过历史日志消费历史数据kafka为什么吞吐量大主要以下四个原因:日志检索:每条消息的组成:...
2020-09-21 14:20:56
1093
原创 Kafka学习(二)——消费者Consumer
目录手动提交offset单Partition提交offset手动控制一到多个分区多线程并发处理控制offset起始位置Consumer限流Consumer Rebalance解析手动提交offset单Partition提交offset手动控制一到多个分区多线程并发处理控制offset起始位置Consumer限流Consumer Rebalance解析...
2020-09-18 17:17:13
1161
1
原创 机器学习入门(二)——梯度下降法
目录一.梯度下降法概述二.多元线性回归中使用梯度下降法三.梯度下降法的优势四.随机梯度下降法五.如何确定梯度计算的准确性 调试梯度下降法六.sklearn中的梯度下降的方法一.梯度下降法概述η为固定值,dJ/dθ为导数,导数为负,说明向右递减,需要向右寻找导数为0的点,则需要前面加个负号,代表正方向,导数负的越大,则需要向右移动更长的距离,负的越小,则移动的越短,直到趋近于0,则找到了局部内最小的点。//损失函数def J(theta): return (theta-2.5)**2-1
2020-09-17 02:00:48
475
原创 机器学习入门(一)——简单线性回归
目录一.简单线性回归二.多元线性回归三.总结一.简单线性回归下方图片所用方法为使偏导数等于0(最小二乘法):核心代码:x_mean = np.mean(x_train)y_mean = np.mean(y_train) self.a_ = (x_train - x_mean).dot(y_train - y_mean) / (x_train - x_mean).dot(x_train - x_mean)self.b_ = y_mean - self.a_ * x_mean算
2020-09-16 00:34:05
447
原创 记一次想把自己打一巴掌的坑(字符串变量)
Kafka的客户端API操作错误代码public static final String TOPIC_NAME = "topic_test2";public static void delTopic() throws Exception{ AdminClient adminClient = adminClient(); DeleteTopicsResult deleteTopicsResult = adminClient.deleteTopics(Arrays.asL
2020-09-14 01:28:09
313
原创 Spark学习案例——SparkSQL结合Kudu实现广告业务分析
下方有数据可免费下载目录原始数据项目架构ETL处理业务一代码重构打包定时运行原始数据下载数据: 请点击我.提取码:3bm9有两个文件,一个广告业务的data-test.json,一个ip.txt文件项目架构ETL处理data-test.json文件中每行有ip地址,需通过ip.txt文件进行解析,解析出地名,运营商等信息。但是data-test.json中的ip格式为123.23.3.11,而ip.txt中的ip格式为16777472——16778239十进制的形式,需将ip转化为十进制.
2020-09-04 20:17:43
2334
原创 条件字段有索引但查询过程没使用索引的情况总结
来自慕课网专栏《一线数据库工程师带你深入理解MySQL》目录创建测试表1 函数操作2 隐式转换3 模糊查询4 范围查询5 计算操作创建测试表CREATE TABLE `t1` ( /* 创建表t1 */ `id` int(11) NOT NULL AUTO_INCREMENT, `a` varchar(20) DEFAULT NULL, `b` int(20) DEFAULT NULL, `c` datetime NOT NULL DEFAULT CURRE.
2020-09-02 21:27:51
1091
原创 使用typesafe报错:No configuration setting found for key ‘...‘
导入的包<dependency> <groupId>com.typesafe</groupId> <artifactId>config</artifactId> <version>1.3.3</version></dependency>测试代码import com.typesafe.config.{ConfigFactory,Config}object Config
2020-08-28 21:45:07
2481
原创 SparkSQL中DataFrame的getAs和getString函数解析
JSON数据{"name":"Michael","age":10, "adress": "beijin"}{"name":"Andy", "age":30, "adress": "beijin"}{"name":"Justin", "age":19, "adress": "beijin"}getAs函数peopleDF.map(x => x.getAs[String]("adress")).show()//运行结果+------+| value|+------+|beijin|
2020-08-28 01:48:19
4833
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅