在Flink任务中,需要加载外置配置参数到任务中,在Flink的开发文档中介绍了,Flink提供了一个名为 ParameterTool 的工具来解决这个问题
Flink开发文档:
1 | https://github.com/apache/flink/blob/master/docs/dev/application_parameters.zh.md |
其引入配置的方式有3种:
1.
在Flink任务中,需要加载外置配置参数到任务中,在Flink的开发文档中介绍了,Flink提供了一个名为 ParameterTool 的工具来解决这个问题
Flink开发文档:
1 | https://github.com/apache/flink/blob/master/docs/dev/application_parameters.zh.md |
其引入配置的方式有3种:
1.
Twitter关于日志系统的论文有如下2篇,分别是
《The Unified Logging Infrastructure for Data Analytics at Twitter》和《Scaling Big Data Mining Infrastructure: The Twitter Experience》
1 | https://vldb.org/pvldb/vol5/p1771_georgelee_vldb2012.pdf |
相关PPT
1 | https://www.slideshare.net/Hadoop_Summit/scaling-big-data-mining-infrastructure-twitter-experience |
其中《The Unified Logging Infrastructure for Data Analytics at Twitter》这篇Twitter12年的论文中介绍了Twitter的产品日志基础架构以及从应用特定日志到统一的“客户端事件”日志格式的演进,其中message都是Thrift message。
Springboot可以通过redis template和redis进行交互,使用方法如下
下载hadoop的原生版本,版本选择2.6.0,下载地址
1 | https://archive.apache.org/dist/hadoop/common/hadoop-2.6.0/hadoop-2.6.0.tar.gz |
解压后可以看到
其中配置文件在 /etc/hadoop目录下
SerDe 是Serializer 和 Deserializer 的简称,它提供了Hive和各种数据格式交互的方式。
Amazon的Athena可以理解是Amazon对标hive的一款产品,其中对SerDe的介绍如下
1 | https://docs.aws.amazon.com/zh_cn/athena/latest/ug/serde-about.html |
对于Hive中经常使用的SerDe如下,参考了
Hive_10. Hive中常用的 SerDe 和 当前社区的状态
1.LazySimpleSerDe,用来处理文本格式文件:TEXTFILE
OutputFormat在hadoop源码中是一个抽象类 public abstract class OutputFormat<K, V>,其定义了reduce任务的输出格式
1 | https://github.com/apache/hadoop/blob/master/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapreduce/OutputFormat.java |
可以参考文章
Filebeat的input终于支持了http,可以使用post请求向filebeat的input传输数据,不过现在还是处于beta版本
在 scala和java混合编程的时候,需要添加一些额外的配置到pom中,才能将scala文件的class加到最终的jar中
1 | <build> |
参考:Thrift 连接 Java 与 Python,附 Java 通用工厂方法
上面这篇文章的例子是使用java client调用python server中的helloString方法来打印client传输过去的字符串
thrift文件,hello.thrift
1 | service Hello { |
Server端
生成Python server端代码
1 | thrift --gen py hello.thrift |
InputFormat在hadoop源码中是一个抽象类 public abstract class InputFormat<K, V>
1 | https://github.com/apache/hadoop/blob/master/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapreduce/InputFormat.java |
可以参考文章
1 | https://cloud.tencent.com/developer/article/1043622 |
其中有两个抽象方法
1 | public abstract |
和
1 | public abstract |
InputFormat做的事情就是将inputfile使用getSplits方法切分成List