1.RangeAssignor
按照 Topic 的维度进行分配的
按照Topic对应的每个分区平均的按照范围区段分配给Consumer实例
大数据/java开发记录
1 | yum -y install lzo-devel zlib-devel gcc autoconf automake libtool |
本案例基于flume版本:apache-flume-1.6.0-cdh5.15.1
taildir-memory-log.conf
1 | # 定义agent |
1 | flume-ng agent \ |
此时记录读取文件的位置信息的json文件已经生成,不过现在还没有开始读取数据,所以仅仅是一个空文件
1 | [hadoop@hadoop000 pos]$ pwd |
测试非指定后缀文件
1 | [hadoop@hadoop000 data]$ touch 1.txt |
注意*: echo 111 >> 1.txt
是追加到文件中,echo 111 > 1.txt
是覆盖文件中的内容
此时控制台是没有任何信息打印的,且taildir_position.json文件也没有任何信息
因为flume监控的是.log结尾的文件,所以其他结尾的文件不在监控范围内
在制定文件夹中创建指定后缀文件
1 | # 在制定文件夹中 新建.log后缀文件 |
新增数据
1 | # 填充数据到监控文件中 |
场景 正常运行的flume,突然挂掉了
此时kill flume,然后继续往1.log文件中新增数据,最后再启动flume
1 | # kill flume |
由此实现了 断点续传
1、RDD、DataFrame、Dataset全都是spark平台下的分布式弹性数据集
2、三者都有惰性机制(lazy),在进行创建、转换(transformation),不会立即执行,只有在遇到Action算子时,三者才会开始运算。
3、三者都会根据spark的内存情况自动缓存运算,这样即使数据量很大,也不用担心会内存溢出
4、三者都有partition的概念。
1 | [hadoop@hadoop000 logs]$ ls -lh |
master/slave 主从架构
NameNode1(nn1) active
NameNode2(nn2) standby
命名空间:挂载着nn1 nn2,读写操作是直接通过命名空间操作的 hdfs://nameservice1/…
缺失模块。
1、请确保node版本大于6.2
2、在博客根目录(注意不是yilia-plus根目录)执行以下命令:
npm i hexo-generator-json-content --save
3、在根目录_config.yml里添加配置:
jsonContent: meta: false pages: false posts: title: true date: true path: true text: false raw: false content: false slug: false updated: false comments: false link: false permalink: false excerpt: false categories: false tags: true