大数据
文章平均质量分 86
Jacob_llz
这个作者很懒,什么都没留下…
展开
-
spark streaming从指定offset处消费Kafka数据
原文地址:http://blog.csdn.net/high2011/article/details/53706446 首先很感谢原文作者,看到这篇文章我少走了很多弯路,转载此文章是为了保留一份供复习用,请大家支持原作者,移步到上面的连接去看,谢谢一、情景:当Spark streaming程序意外退出时,数据仍然再往Kafka中转载 2017-10-29 14:56:45 · 3697 阅读 · 1 评论 -
Kafka踩坑 - Couldn't find leaders for Set
报错信息如下:查看kafka相关的主题信息:[java] view plain copy[root@slave10 bin]# kafka-topics --describe --zookeeper 10.2.20.39:2181,10.2.20.40:2181,10.2.20.41:2181 --topic h5MarkData Topic:h5MarkData PartitionCou...转载 2017-11-07 09:43:07 · 983 阅读 · 0 评论 -
Spark Streaming 'numRecords must not be negative'问题解决
问题描述笔者使用spark streaming读取Kakfa中的数据,做进一步处理,用到了KafkaUtil的createDirectStream()方法;该方法不会自动保存topic partition的offset到zk,需要在代码中编写提交逻辑,此处介绍了保存offset的方法。 当删除已经使用过的kafka topic,然后新建同名topic,使用该方式时出现了"numReco转载 2017-10-20 18:14:57 · 574 阅读 · 0 评论 -
彻底删除kafka的topic方法
1、删除kafka存储目录(server.properties文件log.dirs配置,默认为"/tmp/kafka-logs")相关topic目录2、Kafka 删除topic的命令是:kafka/bin/kafka-topics.sh --delete --zookeeper Zookeeper地址 --topic 主题名称如果kafaka启动时加载的配置文件中server.p转载 2017-10-20 17:53:48 · 930 阅读 · 0 评论 -
apache kafka系列之在zookeeper中存储结构
目录(?)[-]1topic注册信息2partition状态信息Broker注册信息4 Controller epoch 5 Controller注册信息6 Consumer注册信息7 Consumer owner8 Consumer offset1.topic注册信息/brokers/topics/[topic] :存储某个topi转载 2017-10-20 16:40:52 · 253 阅读 · 0 评论 -
spark接收kafka的数据运行spark程序节点的task数据倾斜
这是因为你的spark的slave节点和kafka的broker节点重合时,kafka的topic分区不均衡,没有分布在不同节点上,spark拉取数据就近原则,在那里拉取就在该节点计算,你可以建立多个分区均衡在各个节点上。导致这个原因是你的createDirectStream方法导致的,因为这个方法会自己映射你的kafka分区对应spark的分区,如果分区过少就会不均衡。原文:http转载 2017-10-20 16:36:58 · 279 阅读 · 0 评论 -
Spark Shuffle原理、Shuffle操作问题解决和参数调优
摘要: 1 shuffle原理 1.1 mapreduce的shuffle原理 1.1.1 map task端操作 1.1.2 reduce task端操作 1.2 spark现在的SortShuffleManager 2 Shuffle操作问题解决 2.1 数据倾斜原理 2.2 数据倾斜问题发现与解决转载 2017-10-19 13:44:00 · 425 阅读 · 0 评论 -
spark submit参数调优
在开发完Spark作业之后,就该为作业配置合适的资源了。Spark的资源参数,基本都可以在spark-submit命令中作为参数设置。很多Spark初学者,通常不知道该设置哪些必要的参数,以及如何设置这些参数,最后就只能胡乱设置,甚至压根儿不设置。资源参数设置的不合理,可能会导致没有充分利用集群资源,作业运行会极其缓慢;或者设置的资源过大,队列没有足够的资源来提供,进而导致各种异常。总之,无论是哪转载 2017-10-19 11:40:05 · 239 阅读 · 0 评论 -
基于Spark平台的电影推荐系统实现
博主一年前写过一个这样的文章,电影推荐也是博主一年前就学习过的,温故而知新,重新拿出来好好重新研究一番。这时以前的文章链接:如何使用Spark ALS实现协同过滤http://www.aboutyun.com/forum.PHP?mod=viewthread&tid=13620(出处: about云开发),基于spark0.9官网当时给的例子,与本文有有所不同,本文最后也有经过修改的相转载 2017-08-09 22:15:17 · 9234 阅读 · 0 评论 -
基于Spark Mllib,SparkSQL的电影推荐系统
本文测试的Spark版本是1.3.1本文将在Spark集群上搭建一个简单的小型的电影推荐系统,以为之后的完整项目做铺垫和知识积累整个系统的工作流程描述如下: 1.某电影网站拥有可观的电影资源和用户数,通过各个用户对各个电影的评分,汇总得到了海量的用户-电影-评分数据 2.我在一个电影网站上看了几部电影,并都为其做了评分操作(0-5分) 3.该电影网站的推荐系统根据我对那转载 2017-08-09 18:02:33 · 713 阅读 · 0 评论 -
SparkStreaming的log4j日志记录
博客前言为什么我们要写日志 基本上每个程序都要有日志记录的功能,日志的记录最重要的用处就是监控程序的运行状态和错误查找。如果程序没有写日志,那程序就像瞎子一样,瞎跑,你都不知道为什么数据不对,为什么程序报错,程序运行成功还是失败。在流式计算Sparkstreaming中,日志的记录是非常重要的;因为流式计算是需要7*24小时一直运行的,你不记日志你根本不知道程序运行成功还是错误(当转载 2017-11-07 18:38:32 · 1680 阅读 · 0 评论 -
Spark面对OOM问题的解决方法及优化总结
转载请保持完整性并注明来源链接: http://blog.csdn.net/yhb315279058/article/details/51035631 Spark中的OOM问题不外乎以下两种情况map执行中内存溢出shuffle后内存溢出 map执行中内存溢出代表了所有map类型的操作,包括:flatMap,filter,mapPatitions等。shuffle后内存溢出的shuff转载 2018-01-19 17:42:42 · 703 阅读 · 1 评论 -
Azkaban-2.5及Plugins的安装配置
Azkaban是由LinkedIn开发的调度工具,可以用于调度Hadoop中的相互依赖的Job。有时候,在Hadoop集群中运行的Job是相互依赖的,某些任务需要顺序的执行,这种场景下使用Azkaban能够很好的解决问题。 Azkaban有三个重要的组件构成:关系型数据库(MySQL)AzkabanWebServerAzkabanExecutorServer 这三个组件的关系如下: ...转载 2018-04-20 20:41:01 · 615 阅读 · 0 评论 -
HBase在滴滴出行的应用场景和最佳实践
引用作者简介:李扬,滴滴出行资深软件开发工程师。2015年加入滴滴出行基础平台部,主要负责HBase和Phoenix以及相关分布式存储技术。在滴滴之前,曾在新浪担任数据工程师,专注于分布式计算和存储。 责编:郭芮([email protected]),关注大数据领域。 本文为《程序员》原创文章,未经允许不得转载,更多精彩文章请订阅2017年《程序员》背景 对接业务类型 HBase是建立在Hadoop生...转载 2018-04-12 20:18:40 · 473 阅读 · 0 评论 -
使用累加器配合广播变量做码表动态更新
广播变量简单介绍广播变量是允许程序员缓存一个只读的变量在每个节点上,而不是每个任务保存一份拷贝。例如,利用广播变量,我们能够将配置、较小数据量的码表分发到每个节点上,以减少通信的成本。 一个广播变量可以通过调用SparkContext.broadcast(v)方法从一个初始变量v中创建。广播变量是v的一个包装变量,它的值可以通过value方法访问,下面的代码说明了这个过程:scala> va...转载 2018-04-03 14:04:24 · 513 阅读 · 1 评论 -
sparkstreaming日志切分配置
在Spark Standalone模式下,spark默认使用org/apache/spark/log4j-defaults.properties配置,所有的日志都记录在stderr里面,由于Spark Streaming应用程序是一直运行的,时间长了以后stderr文件会非常大,占用空间的同时难以让我们调试和定位问题,所以我们需要切分日志,spark原生提供了对Executor日志的切分,Driv...转载 2018-04-02 15:38:03 · 1279 阅读 · 0 评论 -
Spark Shuffle原理、Shuffle操作问题解决和参数调优
摘要: 1 shuffle原理 1.1 mapreduce的shuffle原理 1.1.1 map task端操作 1.1.2 reduce task端操作 1.2 spark现在的SortShuffleManager 2 Shuffle操作问题解决 2.1 数据倾斜原理 2.2 数据倾斜问题发现与解决 2.3 数据倾斜解决方案 3 sp...转载 2018-03-14 14:51:58 · 727 阅读 · 0 评论 -
离线安装Cloudera Manager 5和CDH5(最新版5.12.0) 完全教程
关于CDH和Cloudera ManagerCDH (Cloudera's Distribution, including Apache Hadoop),是Hadoop众多分支中的一种,由Cloudera维护,基于稳定版本的Apache Hadoop构建,并集成了很多补丁,可直接用于生产环境。Cloudera Manager则是为了便于在集群中进行Hadoop等大数据处理相关的服务转载 2018-03-13 21:16:30 · 406 阅读 · 0 评论 -
Hbase万亿级存储性能优化总结
背景hbase主集群在生产环境已稳定运行有1年半时间,最大的单表region数已达7200多个,每天新增入库量就有百亿条,对hbase的认识经历了懵懂到熟的过程。为了应对业务数据的压力,hbase入库也由最初的单机多线程升级为有容灾机制的分布式入库,为及早发现集群中的问题,还开发了一套对hbase集群服务和应用全面监控的报警系统。总结下hbase化(针对0.94版本)方面的一些经验也算对这两年hb...转载 2018-03-18 00:06:59 · 515 阅读 · 0 评论 -
HiveSQL解析原理:包括SQL转化为MapReduce过程及MapReduce如何实现基本SQL操作
问题导读:1.什么是Hive?2.MapReduce框架实现SQL基本操作的原理是什么?3.Hive怎样实现SQL的词法和语法解析?Hive是基于Hadoop的一个数据仓库系统,在各大公司都有广泛的应用。美团数据仓库也是基于Hive搭建,每天执行近万次的Hive ETL计算流程,负责每天数百GB的数据存储和分析。Hive的稳定性和性能对我们的数据分析非常关键。在几次升级Hive的过程中,我们遇到了...转载 2018-03-11 19:17:33 · 493 阅读 · 0 评论 -
Hbase 热点(数据倾斜)问题解决方案---rowkey散列和预分区设计
Hbase的表会被划分为1....n个Region,被托管在RegionServer中。Region二个重要的属性:Startkey与EndKey表示这个Region维护的rowkey的范围,当我们要读写数据时,如果rowkey落在某个start-end key范围内,那么就会定位到目标region并且读写到相关的数据。 默认情况下,当我们通过hbaseAdmin指定TableDescrip...转载 2018-03-10 21:35:19 · 396 阅读 · 0 评论 -
Spark算子选择策略
摘要 1.使用reduceByKey/aggregateByKey替代groupByKey 2.使用mapPartitions替代普通map 3.使用foreachPartitions替代foreach 4.使用filter之后进行coalesce操作 5.使用repartitionAndSortWithinPartitions替代repartition与sort类操作 6.使用br...转载 2018-03-14 21:50:13 · 236 阅读 · 0 评论 -
大数据面试宝典
链接:http://pan.baidu.com/s/1gdzmZL5 密码:pezh 包含内容如下:面试资源:程序员跳槽攻略程序员面试宝典+剑指Offer + 算法100题系列 + 15个经典算法下载java面试题库(1)java面试题库(2)java面试题库(3)找工作的一些思考10个面试题,问出真正优秀程序员美国大数据工程师面试攻略程转载 2016-05-31 13:17:58 · 7524 阅读 · 1 评论 -
hadoop集群配置之hive1.2.0安装部署(远程mysql)
hadoop的版本是2.6.0根据hive的源数据不同分为三种模式 1、内嵌模式,使用自带的derby 2、本地独立模式,本地mysql库 3、远程模式,远程mysql库这里主要将第三种模式#假设hadoop2.6.0已经正常启动首先下载hive-1.2.0版本,下载地址hive官方下载然后登陆root修改环境变量,转载 2016-03-06 21:40:36 · 547 阅读 · 0 评论 -
Kafka 安装和测试
1. 简介 kafka (官网地址:http://kafka.apache.org)是一款分布式消息发布和订阅的系统,具有高性能和高吞吐率。 i. 消息的发布(publish)称作producer,消息的订阅(subscribe)称作consumer,中间的存储阵列称作broker。ii. 多个broker协同合作,producer、consumer和broker转载 2015-09-20 17:23:11 · 2122 阅读 · 0 评论 -
Storm入门之第四章Spouts
本文翻译自《Getting Started With Storm》 译者:吴京润 编辑:方腾飞你将在本章了解到spout作为拓扑入口和它的容错机制相关的最常见的设计策略。可靠的消息 VS 不可靠的消息在设计拓扑结构时,始终在头脑中记着的一件重要事情就是消息的可靠性。当有无法处理的消息时,你就要决定该怎么办,以及作为一个整体的拓扑结构该做些什么。举个例子,在处理银行转载 2015-06-07 11:47:18 · 960 阅读 · 0 评论 -
Storm入门之第三章拓扑
本文翻译自《Getting Started With Storm》 译者:吴京润 编辑:方腾飞在这一章,你将学到如何在同一个Storm拓扑结构内的不同组件之间传递元组,以及如何向一个运行中的Storm集群发布一个拓扑。数据流组设计一个拓扑时,你要做的最重要的事情之一就是定义如何在各组件之间交换数据(数据流是如何被bolts消费的)。一个数据流组指定了每个bolt会消费转载 2015-06-07 11:46:16 · 701 阅读 · 0 评论 -
Storm入门之第一章
原书下载地址 译者:吴京润 编辑:方腾飞译者注:本文翻译自《Getting Started With Storm》,本书中所有Storm相关术语都用斜体英文表示。 这些术语的字面意义翻译如下,由于这个工具的名字叫Storm,这些术语一律按照气象名词解释spout 龙卷,读取原始数据为bolt提供数据bolt 雷电,从spout或其它bolt接收数据,并处理数据,处理结果转载 2015-06-07 11:44:23 · 573 阅读 · 0 评论 -
Storm入门之附录C
本文翻译自《Getting Started With Storm》译者:吴京润 编辑:郭蕾 方腾飞安装实际的例子译者注:有些软件的最新版本已有变化,译文不会完全按照原文翻译,而是列出当前最新版本的软件。首先,从下述GitHub的URL克隆这个例子:> git clone git://github.com/storm-book/examples-ch06转载 2015-06-07 12:04:30 · 343 阅读 · 0 评论 -
Storm入门之附录B
本文翻译自《Getting Started With Storm》译者:吴京润 编辑:郭蕾 方腾飞安装Storm集群译者注:本附录的内容已经有些陈旧了。最新的Storm已不再必须依赖ZeroMQ,各种依赖的库和软件也已经有更新的版本。有以下两种方式创建Storm集群:使用Storm部署在亚马逊EC2上面创建一个集群,就像你在第6章看到的。手工安装(详见本附转载 2015-06-07 12:03:49 · 490 阅读 · 0 评论 -
Storm入门之附录A
本文翻译自《Getting Started With Storm》译者:吴京润 编辑:郭蕾 方腾飞安装Storm客户端Storm客户端能让我们使用命令管理集群中的拓扑。按照以下步骤安装Storm客户端:从Storm站点下载最新的稳定版本(https://github.com/nathanmarz/storm/downloads)当前最新版本是storm-0.8.1。(译者转载 2015-06-07 12:01:16 · 381 阅读 · 0 评论 -
Storm入门 第二章准备开始
本文翻译自《Getting Started With Storm》 译者:吴京润 编辑:方腾飞准备开始在本章,我们要创建一个Storm工程和我们的第一个Storm拓扑结构。NOTE: 下面假设你的JRE版本在1.6以上。我们推荐Oracle提供的JRE。你可以到http://www.java .com/downloads/下载。操作模式开始之前,有转载 2015-06-07 11:45:24 · 709 阅读 · 0 评论 -
Storm0.9.4安装
环境:三台虚拟机,系统是CentOS6.5 1.关闭防火墙,配置hosts,添加集群中主机和IP的映射关系 ?123456[grid@hadoop4 ~]$cat /etc/hosts127.0.0.1 localhost::1 localhost192.168.0.106转载 2015-06-22 21:28:44 · 1270 阅读 · 0 评论 -
zookeeper学习之二(高级特性)
一、三个概念 1.CreateMode在create的时候可以设置znode的类型主要有四种:PERSISTENT (持续的,相对于EPHEMERAL,不会随着client的断开而消失)PERSISTENT_SEQUENTIAL(持久的且带顺序的)EPHEMERAL (短暂的,生命周期依赖于client session)EPHEMERAL_SEQUENTIAL (转载 2015-06-21 16:10:57 · 1674 阅读 · 0 评论 -
zookeeper学习之三(Curator客户端)
Curator框架是最好用,最流行的zookeeper的客户端。它有以下三个优点1.提供了一套非常友好的操作API;2. 提供一些高级特性(包括但不仅限于前篇文章中提到的)的封装3.易测试 maven依赖如下 Xml代码 dependency> groupId>org.apache.curatorgroupId> art转载 2015-06-21 16:16:59 · 729 阅读 · 0 评论 -
Storm入门之第五章Bolts
本文翻译自《Getting Started With Storm》 译者:吴京润 编辑:方腾飞第5章 Bolts正如你已经看到的,bolts是一个Storm集群中的关键组件。你将在这一章学到bolt生命周期,一些bolt设计策略,以及几个有关这些内容的例子。Bolt生命周期Bolt是这样一种组件,它把元组作为输入,然后产生新的元组作为输出。实现一个bolt时,转载 2015-06-07 11:48:01 · 536 阅读 · 0 评论 -
Storm入门之第8章事务性拓扑
本文翻译自《Getting Started With Storm》译者:吴京润 编辑:郭蕾 方腾飞正如书中之前所提到的,使用Storm编程,可以通过调用ack和fail方法来确保一条消息的处理成功或失败。不过当元组被重发时,会发生什么呢?你又该如何砍不会重复计算? Storm0.7.0实现了一个新特性——事务性拓扑,这一特性使消息在语义上确保你可以安全的转载 2015-06-07 12:01:36 · 898 阅读 · 0 评论 -
Twitter Storm: DRPC简介 .
转自:http://xumingming.sinaapp.com/756/twitter-storm-drpc/-------------------------Storm里面引入DRPC主要是利用storm的实时计算能力来并行化CPU intensive的计算。DRPC的storm topology以函数的参数流作为输入,而把这些函数调用的返回值作为topology的输出流。转载 2015-08-01 17:41:13 · 451 阅读 · 0 评论 -
分布式发布订阅消息系统 Kafka 架构设计 - 目前见到的最好的Kafka中文文章 .
转自:http://www.oschina.net/translate/kafka-design参与翻译(4人):fbm, 飞翔的猴子, Khiyuan, nesteaa感谢这些同志们的辛勤工作,翻译的真不错,目前见到的最好的Kafka中文文章-------------------------------我们为什么要搭建该系统Kafka是一个消息系统,原本开转载 2015-08-01 17:43:21 · 1694 阅读 · 0 评论 -
Flume NG 简介及配置实战
目录[-]1、Flume 的一些核心概念:1.1 数据流模型1.2 高可靠性1.3 可恢复性2、Flume 整体架构介绍2.1 Exec source2.2 Spooling Directory Source3、常用架构、功能配置示例3.1 先来个简单的:单节点 Flume 配置3.2 单节点 Flume 直接写入 HDFS3.3 来一个常见架构:多 agent 汇聚写入 HDFS3.3.转载 2015-07-19 14:13:37 · 897 阅读 · 0 评论