org.apache.flume.sink.AvroSink是用来通过网络来传输数据的,可以将event发送到RPC服务器(比如AvroSource),使用AvroSink和AvroSource可以组成分层结构。它继承自AbstractRpcSink
extends AbstractSinkim.....
分类:
其他好文 时间:
2014-06-29 14:29:54
阅读次数:
392
要在一个Flume Agent中定义数据流,你需要通过一个Channel将Source和Sink连接起来。你需要列出给定Agent的Source、Sink和Channel。一个Source可以指定多个Channel,但是一个Sink只能指定一个Channel。...
分类:
其他好文 时间:
2014-06-18 06:30:34
阅读次数:
306
最初的代码源自free2000fly的一个标准的 COM 连接点接收器(Sink)的实现,
使用相当简单!!!,作者封装了不少工作,但调用时的代码还可以再封装一下,最后只要拷贝并修改Sink实现类的Invoke就好了。以下是这个代码的头文件
"sinkimpl.h",比free2000fly的"si...
分类:
其他好文 时间:
2014-06-11 09:38:08
阅读次数:
264
按理说,应该在sink端限制数据的发送速度,但flume-ng提供了非常便利的interceptor模式,因此本文,就只是在source端简单的实现了对数据发送速度的限制。...
分类:
其他好文 时间:
2014-06-10 18:01:51
阅读次数:
1183
之前在借助模板类自动实现COM连接点接收器(Sink)中对原作者的代码进一步封装,弄清了连接点使用的原理,在看ATL代码的过程中,发现ATL本身就提供了AtlAdvise/AtlUnadvise这样的机制来简化连接点的使用,CComPtrBase中也有Advise这个成员函数,它是对AtlAdvis...
分类:
其他好文 时间:
2014-06-10 13:24:09
阅读次数:
311
堆排的灵感源自于堆的数据结构。它是一种原地排序算法,不需要额外的临时数组。
基本思想
堆排的基本思想是:
先建立一个最大堆
将最大的元素移动到数组末尾,减小堆的大小,调整最大堆使其符合最大堆的性质
重复第二步,直到最大堆耗尽为止
第一个步骤建立最大堆的代码非常简单,只要对每个节点执行sink操作即可。
...
分类:
其他好文 时间:
2014-06-10 06:55:08
阅读次数:
295
当两台蓝牙设备建立连接时,它们会获取对应设备提供的协议。
只有使用相同协议的设备才能交换数据,就像两个人要使用相同的语言才能进行有意义的对话一样。当蓝牙定义设备之间的物理无线连接时,蓝牙规格会建立这些设备能够使用蓝牙技术交换的命令和功能。HSP和HFP蓝牙规格是典型单声道蓝牙耳机操作所需的规...
分类:
其他好文 时间:
2014-05-28 03:16:49
阅读次数:
574
SinkRunner.java 开启线程调用相应的Processor(Policy) , 根据
Policy调用process的返回值来决定线程睡眠时间,每次默认延后1s,最大默认为5s。public class SinkRunner implements
LifecycleAware { pri....
分类:
其他好文 时间:
2014-05-28 02:14:36
阅读次数:
524
在AbstractConfigurationProvider类中loadSinks方法会调用loadSinkGroups方法将所有的sink和sinkgroup放到了Map
sinkRunnerMap之中。 SinkRunner可能对应一个sink也可能对应一个sinkgroup。因为如果配置...
分类:
其他好文 时间:
2014-05-25 22:05:04
阅读次数:
398
swim() 表示上浮:作者将其比喻为黑帮新人(插入的新元素),能力高(值大的)的被提升,将能力不够的前辈踩在脚下,直到遇到一个更强的领导。sink ()表示下沉:比喻为黑帮领导,能力不行的或退休的(删除)就被下属取代。每次帮派有新人加入,或有领到退休,帮内都必须重新论资排辈。这个比喻还是挺有意思的。...
分类:
其他好文 时间:
2014-05-12 23:37:49
阅读次数:
379