- 博客(96)
- 资源 (4)
- 收藏
- 关注
原创 hive动态分区导致xceivercount超限,hdfs无法创建新连接
使用动态分区虽然非常方便,但会带来很多小文件,像上面这个sql,动态分区是365天,reduce是1000个,如果计算比较复杂,就会同时创建365*1000个文件。有人会觉得我可以增大xceivercount的数目,来避免这个问题,但是这个首先要重启datanode,另外,这个方案始终还是会导致大量的连接数存在,对整个集群不是很友好,还是尽量减少小文件的生成为最佳。hdfs无法创建新的文件,xceivercount超过最大设置,平时每个datanode只有100个左右的连接,突然达到8000以上。
2024-07-16 10:13:23
432
转载 kylin与superset集成实现数据可视化
Apache kylin是一个开源分布式引擎,提供Hadoop之上的SQL查询接口及多维分析(OLAP)能力以支持超大规模数据。而superset是airbnb开源的一款数据可视化工具。kylin在超大数据规模下仍然可以提供秒级甚至毫秒级sql响应的OLAP多维分析查询服务。而且对服务器内存的要求也不像spark sql那么高,经过多方面的优化,数据膨胀率甚至可以控制在100%以内。它利用
2017-10-26 17:27:21
2821
转载 redis漏洞
听到朋友说接到阿里云的报障,提示黑客把他的服务器当肉鸡了,当时有点怕怕,继而官方的网络带宽也爆了进而系统处于瘫痪,当时我需要帮他处理这个问题1 在没有查到杀手之前我是先把带宽&端口用iptables 做了限制这样能保证我能远程操作服务器才能查找原因 2 在各种netstat –ntlp 的查看下没有任何异常 在top 下查到了有异常进程还有些异常的这里就截图
2017-07-31 16:25:56
1364
原创 Hive ROW_NUMBER,RANK(),DENSE_RANK()
准备数据浙江,杭州,300浙江,宁波,150浙江,温州,200浙江,嘉兴,100江苏,南京,270江苏,苏州,299江苏,某市,200江苏,某某市,100 创建表CREATE table pcp(province string,city string,people int)ROW FORMAT
2017-05-04 10:59:37
357
转载 使用JDBC向MySQL数据库批次插入10W条数据测试效率
使用JDBC连接MySQL数据库进行数据插入的时候,特别是大批量数据连续插入(100000),如何提高效率呢?在JDBC编程接口中Statement 有两个方法特别值得注意:通过使用addBatch()和executeBatch()这一对方法可以实现批量处理数据。不过值得注意的是,首先需要在数据库链接中设置手动提交,connection.setAutoCommit(false),然后在
2017-03-15 20:06:41
1164
原创 Spark on YARN配置日志Web UI
Spark部署在YARN之后,从Standalone模式下的Spark Web UI直接无法看到执行过的application日志,不利于性能分析。得益于实验室师弟的帮忙,本文记录如何配置history UI。修改spark-defaults.confspark.eventLog.enabled=truespark.eventLog.compress=truespark.e
2017-02-27 17:42:26
5496
原创 hive中join操作
笼统的说,Hive中的Join可分为Common Join(Reduce阶段完成join)和Map Join(Map阶段完成join)。本文简单介绍一下两种join的原理和机制。如果不指定MapJoin或者不符合MapJoin的条件,那么Hive解析器会将Join操作转换成Common Join,即:在Reduce阶段完成join.整个过程包含Map、Shuffle、Reduce阶
2016-12-22 17:51:12
580
原创 其他技术人员播客地址整理
1、乐视祝海林,主要是spark,kafkahttp://www.jianshu.com/users/59d5607f1400/latest_articles
2016-12-14 09:41:45
654
原创 tez0.8在hadoop2.7.1上的应用
一、配置1、tez的编译在我的另外一篇文章中,在这里不再叙述2、将生成的war包拷贝到hadoop的/apps/tez目录,这个目录自己定义3、在hadoop的conf目录新建一个tez-site.xml 配置文件,内容如下: tez.lib.uris ${fs.defaultFS}/apps/tez/tez-0.8.4.tar.gz
2016-11-14 17:41:08
1374
原创 flume1.7.0 常用配置
一、source 为spooling dira1.sources = r1a1.channels = c1a1.sinks = k1a1.sources.r1.type = spooldira1.sources.r1.spoolDir = /opt/nginx/testa1.sources.r1.channels = c1a1.sources.r1.fileSuffix
2016-10-27 16:15:38
1522
原创 hue编译
执行:make desktop 期间如果报错则需要安装:/opt/hue-3.6.0-cdh5.1.0/Makefile.vars:42: *** "Error: must have python development packages for 2.6 or 2.7. Could not find Python.h. Please install python2.6-devel
2016-10-21 09:43:10
2899
转载 Linux按照CPU、内存、磁盘IO、网络性能监测
系统优化是一项复杂、繁琐、长期的工作,优化前需要监测、采集、测试、评估,优化后也需要测试、采集、评估、监测,而且是一个长期和持续的过程,不 是说现在优化了,测试了,以后就可以一劳永逸了,也不是说书本上的优化就适合眼下正在运行的系统,不同的系统、不同的硬件、不同的应用优化的重点也不同、 优化的方法也不同、优化的参数也不同。性能监测是系统优化过程中重要的一环,如果没有监测、不清楚性能瓶颈在哪里,怎么优
2016-08-16 17:52:37
625
转载 kafka深度解析
Kafka深度解析,众人推荐,精彩好文!时间 2015-01-26 15:06:04 数盟原文 http://dataunion.org/?p=9307主题 Apache Kafka作者: Jason Guo背景介绍Kafka简介Kafka是一种分布式的,基于发布/订阅的消息系统。主要设计目标如下:以时间复杂度为O(1)的
2016-07-19 15:22:29
1558
转载 kafka技术内幕
第二章 生产者概述消息系统通常都会由生产者,消费者,Broker三大部分组成,生产者会将消息写入到Broker,消费者会从Broker中读取出消息,不同的MQ实现的Broker实现会有所不同,不过Broker的本质都是要负责将消息落地到服务端的存储系统中。不管是生产者还是消费者对于Broker而言都是客户端,只不过一个是生产消息一个是消费消息。图2-1中生产者和消费者都是通过客户端
2016-07-18 17:42:34
3852
转载 Java并发编程:深入剖析ThreadLocal
Java并发编程:深入剖析ThreadLocal 想必很多朋友对ThreadLocal并不陌生,今天我们就来一起探讨下ThreadLocal的使用方法和实现原理。首先,本文先谈一下对ThreadLocal的理解,然后根据ThreadLocal类的源码分析了其实现原理和使用需要注意的地方,最后给出了两个应用场景。 以下是本文目录大纲: 一.对ThreadLocal的理解
2016-07-04 18:14:41
419
转载 JVM性能调优监控工具jps、jstack、jmap、jhat、jstat使用详解
查阅 http://blog.youkuaiyun.com/wisgood/article/details/25343845
2016-07-04 17:44:40
2305
转载 java io
初学Java,一直搞不懂java里面的io关系,在网上找了很多大多都是给个结构图草草描述也看的不是很懂。而且没有结合到java7 的最新技术,所以自己来整理一下,有错的话请指正,也希望大家提出宝贵意见。首先看个图:(如果你也是初学者,我相信你看了真个人都不好了,想想java设计者真是煞费苦心啊!) 这是java io 比较基本的一些处理流,除此之外我们还会提到一些比
2016-07-01 11:14:27
357
原创 nginx按小时切割日志
有的日志比较大,一天的日志就有200g一台机器,如果按天切割日志,文件太大了,需要按小时切割日志。下面讲述一个按小时切割日志的方法,通过apache的cronolog来完成日志的切割。1、首先安装日志切割 yum install httpd2、配置nginx的日志落地文件名,比如/opt/log/accesslog。3、再启动nginx之前,先用mkfifo
2016-06-06 17:25:52
3633
转载 hadoop streaming 版本兼容问题
转载一篇同事的文章:使用hadoop streaming的脚本,在从hadoop 1.0迁移到2.7.1时遇到问题:使用1.0时,map的outputkey是Text正确,迁移到2.7.1时报错,修改为LongWritable正常。为保证代码统一,在1.0上map的outputkey也使用LongWritable,报错,要求修改为Text,修改后正常。解决办法,
2015-11-17 10:23:31
983
原创 使用mutt及msmtp来发送邮件
默认的linux系统都是安装了mutt和sendmail的,但有的公司为了安全,默认的不用配置就发送邮件做了安全验证。以下是mutt结合msmtp来发送邮件的做法,并做到安全认证1、安装msmtpyum install msmtp 或者自己编译下载安装2、配置msmtp在要发送的账号下/home/user目录新增一文件.msmtprc 并使改文件权限为600内容如
2015-10-08 11:51:35
583
原创 Keepalived 安装与配置
keepalived是由C语言编写的路由软件,是lvs的扩展项目,主要用作RealServer的健康状态检查以及LoadBalance主机和BackUP主机之间failover的实现。1、获取安装软件下载地址: http://www.keepalived.org/download.html2、安装前提确保ipvs已经被安装
2015-08-06 17:38:43
830
原创 redis3.0.3集群安装详细步骤
Redis集群部署文档(redhat5系统)(要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系如下)127.0.0.1:7000127.0.0.1:7001127.0.0.1:7002127.0.0.1:7003127.0.0.1:7004127.0.
2015-07-31 18:32:17
1218
1
原创 svn命令整理
###1 svn help ——查看svn所有命令帮助文档,如svn help ###2 svn help 特定命令名 —— 查看指定命令的使用文档,如 svn help add # 查看add命令的使用文档###3 常用命令 ##1 svn list —— 查看svn服务器上文件列表,类似与Linux执行 ls -l 命令,例如 svn
2015-07-29 10:09:35
544
转载 apache kafka中server.properties配置文件参数说明
每个kafka broker中配置文件server.properties默认必须配置的属性如下:broker.id=0 num.network.threads=2 num.io.threads=8 socket.send.buffer.bytes=1048576 socket.receive.buffer.bytes=1048576 socket.request.max.b
2015-07-24 15:06:35
769
原创 使用flume1.6.0直接向hadoop2.5收集数据
1、搭建环境要安装jdk,hadoop2.5客户端,剩下的就直接是配置了,配置下就能搞定。2、配置a1.sources = r1a1.channels = c2a1.sinks = k2a1.sources.r1.type = execa1.sources.r1.command = tail -n +0 -F /opt/nginx/logs/link_pt.loga1.so
2015-07-23 11:58:24
2140
原创 hadoop2.7.1本地编译
Requirements:* Unix System* JDK 1.7+* Maven 3.0 or later* Findbugs 1.3.9 (if running findbugs)* ProtocolBuffer 2.5.0* CMake 2.6 or newer (if compiling native code), must be 3.0 or newe
2015-07-17 15:20:44
9649
原创 kafka manager安装
kafka-manager是yahoo开源,项目地址https://github.com/yahoo/kafka-manager这个项目比 https://github.com/claudemamo/kafka-web-console 要好用一些,显示的信息更加丰富,kafka-manager本身可以是一个集群。不过kafka-manager也没有权限管理功能。
2015-07-15 14:32:13
5071
原创 maven Plugin execution not covered by lifecycle configuration
在导入一个开源项目的源码mahout后,出现Plugin execution not covered by lifecycle configuration 错误,现找到一个最简单有效的方法解决。即在pom.xml文件中用节点来包裹节点;最终的pom文档结构如下所示: ... ...
2015-05-26 11:04:32
680
转载 利用Scala语言开发Spark应用程序
Spark内核是由Scala语言开发的,因此使用Scala语言开发Spark应用程序是自然而然的事情。如果你对Scala语言还不太熟悉,可以阅读网络教程A Scala Tutorial for Java Programmers或者相关Scala书籍进行学习。本文将介绍3个Scala Spark编程实例,分别是WordCount、TopK和SparkJoin,分别代表了Spark的三种典型应
2015-05-08 16:16:47
1024
转载 spark简单实例
1、准备文件wget http://statweb.stanford.edu/~tibs/ElemStatLearn/datasets/spam.data2、加载文件scala> val inFile = sc.textFile("/tmp/spam")3、显示一行scala> inFile.first()4、函数运用(1)mapval nums = inF
2015-05-08 15:01:52
764
原创 kakfa源码环境搭建
1.gradle安装1.前提条件 a.需要安装jdk 1.5或以上版本才能运行gradle.b.要确认jdk已经安装,验证jdk安装java -versionc.需要设置JAVA_HOME环境变量2. 下载下载gradle安装文件,gradle比较简单gradle-1.11-all.zip下载3.解压文件
2015-04-10 11:08:00
964
原创 Spark1.6.0 源码编译和部署包生成
文章基本采用官方指导:1、在spark官网下载源码,要选择source code2、在环境变量里设置maven内存大小export MAVEN_OPTS="-Xmx2g -XX:MaxPermSize=512M -XX:ReservedCodeCacheSize=512m"3、编译及打包## 简单的编译Spark和example程序 mvn -DskipT
2015-03-27 16:18:31
4983
原创 利用QJM搭建hadoop2.10.2集群
1、概述Hadoop2.X中的HDFS(Vsersion2.0)相比于Hadoop1.X增加了两个重要功能,HA和Federation。HA解决了Hadoop1.X Namenode中一直存在的单点故障问题,HA策略通过热备的方式为主NameNode提供一个备用者,并且这个备用者的状态一直和主Namenode的元数据保持一致,一旦主NameNode挂了,备用NameNode
2015-03-04 15:08:38
857
1
转载 /var/log目录下的20个Linux日志文件功能详解
如果愿意在Linux环境方面花费些时间,首先就应该知道日志文件的所在位置以及它们包含的内容。在系统运行正常的情况下学习了解这些不同的日志文件有助于你在遇到紧急情况时从容找出问题并加以解决。以下介绍的是20个位于/var/log/ 目录之下的日志文件。其中一些只有特定版本采用,如dpkg.log只能在基于Debian的系统中看到。/var/log/messages — 包括整体系统信息,
2012-08-02 17:26:58
1703
转载 Linux系统内存的Cached Memory
Linux与Windows不同,会存在缓存内存,通常叫做Cache Memory。有些时候你会发现没有什么程序在运行,但是使用top或free命令看到可用内存会很少。 什么是Cache Memory(缓存内存): 当你读写文件的时候,Linux内核为了提高读写效率与速度,会将文件在内存中进行缓存,这部分内存就是Cache Memory(缓存内存)。即使你的程序运行结束后
2012-06-14 14:53:42
3337
转载 mapreduce的二次排序 SecondarySort
mapreduce的二次排序 SecondarySort关于二次排序主要涉及到这么几个东西:在0.20.0 以前使用的是setPartitionerClass setOutputkeyComparatorClasssetOutputValueGroupingComparator 在0.20.0以后使用是job.setPartitionerClass(Parti
2012-05-03 10:59:17
1994
转载 JVM监控工具介绍jstack, jconsole, jinfo, jmap, jdb, jstat
jstack -- 如果java程序崩溃生成core文件,jstack工具可以用来获得core文件的java stack和native stack的信息,从而可以轻松地知道java程序是如何崩溃和在程序何处发生问题。另外,jstack工具还可以附属到正在运行的java程序中,看到当时运行的java程序的java stack和native stack的信息, 如果现在运行的java程序呈现hung的
2012-03-27 16:55:27
752
转载 HIVE中的自定义函数 .
hive默认的函数并不是太完整,以后我们使用的使用肯定需要自己补充一些。下面这个例子是个简单的测试,关于自定义函数的。函数代码package com.example.hive.udf;import org.apache.hadoop.hive.ql.exec.UDF;import org.apache.hadoop.io.Text;public final class Lo
2012-03-27 14:40:41
760
原创 cronolog
cronologcronolog是一个简单的过滤程序从标准输入读取日志文件条目,每个条目写入到输出文件指定一个文件名模板和当前的日期和时间。当扩大的文件名更改,关闭当前文件,并打开一个新的。 cronolog的目的是要在配合使用的Web服务器( 如 Apache) ,分成每天或每月的日志,访问日志Linux下运行的Web服务器Apache,默认日志文件是不分割的,一个整文件既不易于管理,也
2012-03-13 09:53:01
4181
原创 java虚拟机设置
默认的java虚拟机的大小比较小,在对大数据进行处理时java就会报错:java.lang.OutOfMemoryError。设置jvm内存的方法,对于单独的.class,可以用下面的方法对Test运行时的jvm内存进行设置。java -Xms64m -Xmx256m Test-Xms是设置内存初始化的大小-Xmx是设置最大能够使用内存的大小(最好不要超过物理内存大小)JVM内
2012-03-09 11:52:32
943
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人