Apahce Thrift是FaceBook实现的一种高效的、支持多种语言的远程服务调用的框架。Source是负责接收数据到Flume Agent的组件,可以从其他系统中接收数据。Flume有Java Thrift RPC客户端,是FLume SDK的一部分,Thrift Source是多线程,高性能的Thrift服务器,Flume的Thrift接口定义(IDL)语言如下:
namespace java org.apache.flume.thrift
struct ThriftFlumeEvent {
1: required map <string, string> headers,
2: required binary body,
}
enum Status {
OK,
FAILED,
ERROR,
UNKNOWN
}
service ThriftSourceProtocol {
Status append(1: ThriftFlumeEvent event),
Status appendBatch(1: list<ThriftFlumeEvent> events),
}
存放在在flume源码包apache-flume-1.7.0-src\flume-ng-sdk\src\main\thrift\flume.thrift
首先使用thrift文件生成客户端模块基础代码

Apache Thrift是一种跨语言的服务框架,本文介绍了如何利用Python通过Thrift与Flume进行数据交互。首先,详细阐述了Thrift在Flume中的作用,特别是Thrift Source的特性。接着,讲解了如何生成Thrift客户端代码,并提到了Thrift IDL文件的位置。安装Thrift相关库时,分别指出了apt-get、pip和easy_install安装的包路径。最后,给出了启动Flume并配置Thrift Source的步骤,以及运行Python脚本`flume.py`后在Flume端的预期输出。
最低0.47元/天 解锁文章
1732

被折叠的 条评论
为什么被折叠?



