- 浏览: 1397623 次
- 性别:
- 来自: 北京
最新评论
-
guokaiwhu:
赞啊!今晚遇到相同的问题,正追根溯源,就找到了博主!
hbase 报错gc wal.FSHLog: Error while AsyncSyncer sync, request close of hlog YouAr -
喁喁不止:
很清楚,有帮助。
hive常用函数 -
dsxwjhf:
Good job !!
kafka获得最新partition offset -
Locker.Xai:
参考了
freemaker教程 -
maoweiwer:
为啥EPHEMERAL_SEQUENTIAL类型的节点并没有自 ...
zookeeper 入门讲解实例 转
文章列表
KNN k临近算法
遍历所有训练样本,求距离最近的点的结论,作为最后的预测结果
MR版:map求样本距离(key:样本,value:距离),combine求的最小值,是过滤功能,reduce就有一个求得距离最小值
贝叶斯:
贝叶斯定理公式:P(A|B)=P(B|A)*P(A)/P(B)
贝叶斯将在属性条件下的结论的概率转为:在结论条件下属性的概率的乘积*结论的概率
求得样本属性的在结论上的出现次数,样本结论的次数,商就是P(B|A)
MR版:map求拼接keyvalue(key:属性-结论 |结论,value:1)
combine 求和(k ...
HBaseFsck类的hbase hbck流程;hbck是一个很重的管理工具,他会访问所有rs,扫描整个meta表,以及读取所有table region里的regioninfo,所以不要频繁使用hbck,会给hbase带来压力
/**
* This repair method requires the cluster to be online since it contacts
* region servers and the masters. It makes each region's state in HDFS, in
* hbase:meta, ...
spark1.5.1 支持 tachyon0.7.1
jdk需要1.7
1.spark
下载spark source
http://spark.apache.org/downloads.html
编译spark
export MAVEN_OPTS="-Xmx1024m -XX:MaxPermSize=256m"
mvn -Dhadoop.version=2.3.0 -DskipTests clean package
spark-env.sh
因为需要访问hdfs,hive,所以需要压缩lzo,和mysql
expor ...
转:http://mxsfengg.iteye.com/blog/975393
jmap 能查看jvm内存中,对象占用内存的情况,还提供非常方便的命令将jvm的内存信息导出的文件。
Shell代码
jmap -dump:format=b,file=heap.bin <pid>
命令jhat 能够解析 java内存堆的文件,生成相关信息,并启动webServer提供查询。 也就说,我们可以通过浏览器来看这些内存信息。jhat还提供了一个类sql的查询语言---OQL来给我们使用。
执行一下
问题:
<Failed to update metadata after 3000 ms.>
sender类的发送数据时候,会
List<ClientResponse> responses = this.client.poll(requests, pollTimeout, now);//nio 发送数据
NetworkClient类,方法poll,检查metadata是否需要更新
方法:
/**
* Add a metadata request to the list of sends if we can make one
...
Balancing leadership
Whenever a broker stops or crashes leadership for that broker's partitions transfers to other replicas. This means that by default when the broker is restarted it will only be a follower for all its partitions, meaning it will not be used for client reads and writes.
To a ...
broker change是由BrokerChangeListener监听类,监听/brokers/ids下得brokerid
BrokerChangeListener的handleChildChange
将新的死的broker交由controller管理
class BrokerChangeListener() extends IZkChildListener with Logging {
this.logIdent = "[BrokerChangeListener on Controller " + controller.config.broke ...
var 可变,可重新赋值,赋值为"_"表示缺省值(0, false, null),例如:
var d:Double = _ // d = 0.0
var i:Int = _ // i = 0
var s:String = _ // s = null
val不可变
val (x,y) = (10, "hello")
def 实时返回结果变量,可作为方法返回结果,方便使用
def t = System. currentT ...
scala函数:
1.正常函数
def normalReturn(x:Int,y:Int):Double ={
return x*y*0.1;
}
2.没有返回值,不要等号,或是返回值为Unit
def noRetrun():Unit = {
println("1000")
}
def noRetrun2(x:Any) {
println("no return")
return x
}
3 映射式定义 从int到double
def f:I ...
producer服务端:
1.nio接受请求 http://blackproof.iteye.com/blog/2239949
2.handler从请求队列中获取,调用KafkaApis http://blackproof.iteye.com/blog/2239953
3.KafkaApis类,调用handleProducerOrOffsetCommitRequest方法:
def handle(request: RequestChannel.Request) {
try{
trace("Handling request: &q ...
KafkaRequestHandlerPool是KafkaRequestHandler的handler池,处理所有请求队列
具体的处理,会交由KafkaApis类
for(i <- 0 until numThreads) {
runnables(i) = new KafkaRequestHandler(i, brokerId, aggregateIdleMeter, numThreads, requestChannel, apis)
threads(i) = Utils.daemonThread("kafka-request-handler-& ...
SocketServer是kafka nio,包含一个accept线程,接受socket连接,并把连接(平均)放入processors中,多个processor线程接受nio的处理请求和相应
processor请求只是将request放入requestchannel queue中(由KafkaRequestHandlerPool中handler完成)
processor响应是在requestchannel上注册对应的processor,processor将response发送给client
/**
* Start the socket server
*/ ...
topicconfigManager类
主要流程为
1.监控config/change节点,那个topic的config变化了
2.从zk上的topic的config目录,获取最新config信息
3.更新logmanager里指定topic的tplog(每个topic每个partition对应一个log)配置
/**
* 注册config change的listener
* Begin watching for config changes
*/
def startup() {
ZkUtils.makeSurePersistentPath ...
logManager类:管理kafka数据log的类,包括数据clean,flush等操作
Log类:每个tplog的对象
logSegment:每个tplog目录下的文件对象
filemessageSet:每个log file的管道类
base offset:在topic中的绝对offset值
offsetindex:每个log index的管道map类,存储相对offset值和文件position
按照partition分区topic,分发到各个机子上
partition上有 ...
Java NIO中的FileChannel是一个连接到文件的通道。可以通过文件通道读写文件。
FileChannel无法设置为非阻塞模式,它总是运行在阻塞模式下。
filechannel map方法 ,kafka里的index用的mbb实现,文件与内存同步
public static MappedByteBuffer generateChannelMap(String filepath) throws IOException{
File f = new File(filepath);
boolean isnew = f.createNewFile();
Sys ...