关闭

查看修复HDFS中丢失的块

检测缺失块 1 hdfs fsck -list-corruptfileblocks 1 hdfs fsck / | egrep -v '^\.+$' | grep -v eplica 查看上面某一个文件的情况 1 hdfs fsck /path/to/corrupt/file -locations -blocks -files 解决方法 如果文件不重...
阅读(328) 评论(0)

HDFS文件写入与读取

HDFS文件写入与读写 副本(3个)选择策略说明: 1. 若client为DataNode节点,那存储block时,规则为:副本1,同client的节点上;副本2,不同机架节点上;副本3,同第二个副本机架的另一个节点上;其他副本随机挑选。 2. 若client不为DataNode节点,那存储block时,规则为:副本1,随机选择一个节点上;副本2,不同副本1,...
阅读(310) 评论(0)

CDH-LZO配置

下载和CDH版本对应的hadoop-lzo版本 如下:   下载地址:http://archive.cloudera.com/gplextras5/parcels/ 需要下载如下三个文件: GPLEXTRAS-5.4.0-1.cdh5.4.0.p0.27-el6.parcel GPLEXTRAS-5.4.0-1.cdh5.4.0.p0.27-el6.parcel...
阅读(227) 评论(0)

Spark Streaming 数据产生与导入相关的内存分析及优化

http://spark.apache.org/docs/latest/streaming-programming-guide.html 数据接受流程 启动Spark Streaming(后续缩写为SS)后,SS 会选择一台Executor 启动ReceiverSupervisor,并且标记为Active状态。接着按如下步骤处理: ReceiverSupe...
阅读(192) 评论(0)

ElasticSearch 的 聚合(Aggregations)

Elasticsearch有一个功能叫做 聚合(aggregations) ,它允许你在数据上生成复杂的分析统计。它很像SQL中的 GROUP BY 但是功能更强大。 Aggregations种类分为: Metrics, Metrics 是简单的对过滤出来的数据集进行avg,max等操作,是一个单一的数值。Bucket, Bucket 你则可以理解为将过滤出来的数据集按条件分成多个...
阅读(782) 评论(0)

图解Elasticsearch中的_source、_all、store和index属性

Elasticsearch中有几个关键属性容易混淆,很多人搞不清楚_source字段里存储的是什么?store属性的true或false和_source字段有什么关系?store属性设置为true和_all有什么关系?index属性又起到什么作用?什么时候设置store属性为true?什么时候应该开启_all字段?本文通过图解的方式,深入理解Elasticsearch中的_source、_all、...
阅读(213) 评论(0)

剖析Elasticsearch集群系列之三:近实时搜索、深层分页问题和搜索相关性权衡之道

转载:http://www.infoq.com/cn/articles/anatomy-of-an-elasticsearch-cluster-part03 近实时搜索 虽然Elasticsearch中的变更不能立即可见,它还是提供了一个近实时的搜索引擎。如前一篇中所述,提交Lucene的变更到磁盘是一个代价昂贵的操作。为了避免在文档对查询依然有效的时候,提交变更到磁盘,Elastic...
阅读(225) 评论(0)

剖析Elasticsearch集群系列之二:分布式的三个C、translog和Lucene段

转载:http://www.infoq.com/cn/articles/anatomy-of-an-elasticsearch-cluster-part02 共识——裂脑问题及法定票数的重要性 共识是分布式系统的一项基本挑战。它要求系统中的所有进程/节点必须对给定数据的值/状态达成共识。已经有很多共识算法诸如Raft、Paxos等,从数学上的证明了是行得通的。但是,Elasticsea...
阅读(196) 评论(0)

剖析Elasticsearch集群系列之一:Elasticsearch的存储模型和读写操作

转载:http://www.infoq.com/cn/articles/analysis-of-elasticsearch-cluster-part01 1.辨析Elasticsearch的索引与Lucene的索引 Elasticsearch中的索引是组织数据的逻辑空间(就好比数据库)。1个Elasticsearch的索引有1个或者多个分片(默认是5个)。分片对应实际存储数据的Luce...
阅读(213) 评论(0)

Spark编写UDAF自定义函数

package main.scalaimport org.apache.spark.SparkContext import org.apache.spark.SparkConf import org.apache.spark.sql.hive.HiveContext import org.apache.spark.sql.Row import org.apache.spark.sql.types.S...
阅读(514) 评论(0)

查缺补漏--性能troubleshooting

调节reduce端缓冲区大小避免OOM异常  1.1 为什么要调节reduce端缓冲区大小    对于map端不断产生的数据,reduce端会不断拉取一部分数据放入到缓冲区,进行聚合处理;    当map端数据特别大时,reduce端的task拉取数据是可能全部的缓冲区都满了,此时进行reduce聚合处理时创建大量的对象,导致OOM异常;  1.2 如何调节reduce端缓冲区大小    当由于以上...
阅读(181) 评论(0)

查缺补漏--性能算子

MapPartitions提升Map类操作性能spark中,最基本的原则,就是每个task处理一个RDD的partition。 MapPartitions操作的优点:如果是普通的map,比如一个partition中有1万条数据;ok,那么你的function要执行和计算1万次。但是,使用MapPartitions操作之后,一个task仅仅会执行一次function,function一次接收所有的p...
阅读(147) 评论(0)

查缺补漏--性能shuffle

合并map端输出文件第一个stage,每个task,都会给第二个stage的每个task创建一份map端的输出文件第二个stage,每个task,会到各个节点上面去,拉取第一个stage每个task输出的,属于自己的那一份文件。 题来了:默认的这种shuffle行为,对性能有什么样的恶劣影响呢?实际生产环境的条件: 100个节点(每个节点一个executor):100个executor 每个e...
阅读(127) 评论(0)

查缺补漏--性能JVM

JVM调优之原理概述以及降低cache操作的内存占比 每一次放对象的时候,都是放入eden区域,和其中一个survivor区域;另外一个survivor区域是空闲的。当eden区域和一个survivor区域放满了以后(spark运行过程中,产生的对象实在太多了),就会触发minor gc,小型垃圾回收。把不再使用的对象,从内存中清空,给后面新创建的对象腾出来点儿地方。清理掉了不再使用的对象之后,那...
阅读(157) 评论(0)

查缺补漏--性能资源

1:资源...
阅读(274) 评论(0)

基于Kafka 0.9版本 使用ACL进行权限控制

一.官网内容 kafka附带一个可插拔的认证,并使用zookeeper来存储所有的acl。kafka的acl在一般格式定义"Principal P is [Allowed/Denied] Operation O From Host H On Resource R”,你可以阅读更多关于KIP-11的结构,为了添加,删除或列表,你可以使用kafka认证CLI。默认情况下,如果资源...
阅读(403) 评论(0)

CDH5.X安装配置kerberos认证过程

https://www.cloudera.com/documentation/enterprise/latest/topics/cm_sg_kdc_def_domain_s2.html  安装过程(需要如下8个步骤) Configuring a Kerberos 5 Server When setting up Kerberos, install the KDC first. I...
阅读(281) 评论(0)

Hive 中的复合数据结构简介以及一些函数的用法说明

目前 hive 支持的复合数据类型有以下几种:arrays: ARRAY (Note: negative values and non-constant expressions are allowed as of Hive 0.14.) maps: MAP1、Array的使用创建数据库表,以array作为数据类型create table person(name string,work_locat...
阅读(396) 评论(0)

ELK logstash 处理多行事件(25th)

有些日志是分多行输出的,为了能正确的处理这些多行的事件,logstash必须哪些行是单一事件的一部分。多行事件处理是比较复杂的,需依赖正确的事件顺序。最佳方法是尽早的在管道中处理以保证日志有序。这就是本文要说到的logstash管道multiline codec,专门来处理合并多行事件的。 multiline插件最重要的方面:  pattern 选项指定一个正则表达式。 事件匹配指...
阅读(288) 评论(0)

内存池设计与实现

1. 内存池设计 1.1 目的 在给定的内存buffer上建立内存管理机制,根据用户需求从该buffer上分配内存或者将已经分配的内存释放回buffer中。 1.2 要求 尽量减少内存碎片,平均效率高于C语言的malloc和free。 1.3 设计思路 将buffer分为四部分,第1部分是mem_pool结构体;第2部分是内存映射表;第3部分是内存chunk结构...
阅读(105) 评论(0)
267条 共14页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:139699次
    • 积分:2458
    • 等级:
    • 排名:第16590名
    • 原创:114篇
    • 转载:153篇
    • 译文:0篇
    • 评论:20条
    博客位置
    http://www.bygc945.com/
    文章分类