- 浏览: 363988 次
-
最新评论
-
jfeifjlafekae:
另外,为什么存储日志会有拆分过程,而不是rotation方式? ...
HBASE数据架构 -
jfeifjlafekae:
“当然,数据刷写时,一个Region只要有一个列族的memSt ...
HBASE数据架构 -
hmc52107521:
你好,params.keys,params.values以及# ...
mybatis中使用map类型参数,其中key为列名,value为列值 -
zhangxiong0301:
qindongliang1922 写道AM中其它与内存相关的参 ...
(转)YARN内存配置 -
qindongliang1922:
AM中其它与内存相关的参数,还有JVM相关的参数,这些参数可以 ...
(转)YARN内存配置
文章列表
在最新的hadoop 2.6.0版本中,YARN引入了一种新的调度策略:基于标签的调度机制。该机制的主要引入动机是更好地让YARN运行在异构集群中,进而更好地管理和调度混合类型的应用程序。
注意,截止这篇文章发布时,只有apache hadoop 2.6.0和hdp 2.2两个发行版具有该特性(CDH5.3尚不支持,CDH5.4会支持),在hadoop自带的调度器重,只有 Capacity Scheduler支持该特性,FIFO Scheduler和Fair Scheduler尚不支持。、
什么是Label based scheduling?
1. 概述
随着企业要处理的数据量越来越大,MapReduce思想越来越受到重视。Hadoop是MapReduce的一个开源实现,由于其良好的扩展性和容错性,已得到越来越广泛的应用。Hadoop作为一个基础数据处理平台,虽然其应用价值已 ...
一、关闭:
1.stop-hbase.sh
2.stop-yarn.sh
3.stop-dfs.sh
需要查看datanode,namenode,journalnode是否都关闭了。
4.hadoop-deamon.sh stop zkfc(所有namenode节点)
二、启动:
1.启动zookeeper:
zkServer.sh start
2.建立zookeeperfailoverController的znode节点,为双namenode切换做好准备:
bin/hdfs zkfc –formatZK (第一次,非namenode上执行)
3 ...
问题一:No nodemanager to stop
yarn-deamon.sh stop部分的脚本:
Java代码
(stop)
if [ -f $pid ]; then
TARGET_PID=`cat $pid`
if kill -0 $TARGET_PID > /dev/null 2>&1; then
echo stopping $command
kill $TARGET_PID
sleep $YARN_STOP_TIMEOUT ...
介绍
hive的用户自定义聚合函数(UDAF)是一个很好的功能,集成了先进的数据处理。hive有两种UDAF:简单和通用。顾名思义,简单的UDAF,写的相当简单的,但因为使用Java反射导致性能损失,而且有些特性不能使用,如可变长度参数列表。通用UDAF可以使用所有功能,但是UDAF就写的比较复杂,不直观。
本文只介绍通用UDAF。
UDAF是需要在hive的sql语句和group by联合使用,hive的group by对于每个分组,只能返回一条记录,这点和mysql不一样,切记。
UDAF开发概览
开发通用UDAF有两个步骤,第一个是编写resolver类,第二个是编写 ...
1.方法一
mysql5.1有改名数据库的命令,但是没过多久就被取消了因为这个命令不稳定,可能导致数据丢失。这个命令就是:
rename database db_old_name to db_new_name
2.方法二
用脚本实现,包括获取表名,将旧库的表名rename到新库中(rename时自动移动到新库)。
#!/bin/bash
mysql -uroot -p'2ZXCVBNM<>?@' --host=192.168.30.42 -e 'create database if not exists statanalyse_ba ...
在了解重定向之前,我们先来看看linux 的文件描述符。
linux文件描述符:可以理解为linux跟踪打开文件,而分配的一个数字,这个数字有点类似c语言操作文件时候的句柄,通过句柄就可以实现文件的读写操作。 用户可以自定义文件描述符范围是:3-num,这个最大数字,跟用户的:ulimit –n 定义数字有关系,不能超过最大值。
linux启动后,会默认打开3个文件描述符,分别是:标准输入standard input 0,正确输出standard output 1,错误输出:error output 2
以后打开文件后。新增文件绑定描述符 可以依次增加。 一条shell命令执行,都 ...
一、小括号,园括号()
1、单小括号 ()
①命令组。括号中的命令将会新开一个子shell顺序执行,所以括号中的变量不能够被脚本余下的部分使用。括号中多个命令之间用分号隔开,最后一个命令可以没有分号,各命令和 ...
shell编程中经常用到不可见字符的情况,比如说hive查询的结果文件中,字段就是用ctl+A来分割的,要在shell中处理这些字段,就必须更改IFS为ctl+A。
输入不可见字符:
在shell里我知道的是两种方式,举例说明
1)a=$'\001',即表示变量a的值已经是ctl+A啦
2)a=^A(其中^A通过ctl+v+A组合按键生成),这种方式好像可以用在sed等工具里
不见字符验证:
要验证一个不见字符,只需要把其asc码值显示出来即可,可以用od命令(-t c代表显示字符,-t d代表以十进制显示,-t x代表以十六进制显示等待) ...
1.问题:spark配置history server后,执行./bin/spark-shell --master yarn-client。在该shell里面执行action后退出shell,此时history server的webUI上不出现这个shell application。
解决:driver在SparkContext使用stop()方法后才将完整的信息提交到指定的目录,如果不使用stop()方法,即使在指定目录中产生该应用程序的目录,history server也将不会加载该应用程序的运行信息。
Hadoop自带了一个历史服务器,可以通过历史服务器查看已经运行完的Mapreduce作业记录,比如用了多少个Map、用了多少个Reduce、作业提交时间、作业启动时间、作业完成时间等信息。默认情况下,Hadoop历史服务器是没有启动的,我们可以通过下面的命令来启动Hadoop历史服务器
$ sbin/mr-jobhistory-daemon.sh start historyserver
复制代码
这样我们就可以在相应机器的19888端口上打开历史服务器的WEB UI界面。可以查看已经运行完的作业情况。历史服务器可以单独在一台机器上启动,主要是通过以下的参数配置:
日志聚集是YARN提供的日志中央化管理功能,它能将运行完成的Container/任务日志上传到HDFS上,从而减轻NodeManager负载,且提供一个中央化存储和分析机制。默认情况下,Container/任务日志存在在各个NodeManager上,如果启用日志聚集功能需要额外的配置。
这个日志存储的就是具体map和reduce的日志,包括框架的和应用程序里自己打印的。这个日志聚合是用来看日志的,而mapreduce job history server,则是用来看某个application的大致统计信息的,包括启停时间,map任务数,reduce任务数以及各种计数器的值等等。 ...
Spark history Server产生背景
以standalone运行模式为例,在运行Spark Application的时候,Spark会提供一个WEBUI列出应用程序的运行时信息;但该WEBUI随着Application的完成(成功/失败)而关闭,也就是说,Spark Application运行完(成功/失败)后,将无法查看Application的历史记录;
Spark history Server就是为了应对这种情况而产生的,通过配置可以在Application执行的过程中记录下了日志事件信息,那么在Application执行结束后,WEBUI就能重新渲染生成UI界面展现出该A ...
spark作业调度
概述
spark有多种方式调度各个计算所需的资源.
首先,每个application(即sparkContext实例)有一组独立的Executor进程。各种cluster manager(yarn Resource manager,standalone master等等)为application间的调度提供自己的方式。
其次,一个application内的各个job(spark action实例)也可能并行执行,前提是各个job是在独立的线程中提交。这种情况在处理网络请求的场景下是正常的,如shark。spa ...
1:Spark1.0.0属性配置方式
Spark属性提供了大部分应用程序的控制项,并且可以单独为每个应用程序进行配置。
在Spark1.0.0提供了3种方式的属性配置:
SparkConf方式
SparkConf方式可以直接将属性值传递到SparkContext;
SparkConf可以对某些通用属性直接配置,如master使用setMaster,appname使用setAppName;
也可以使用set()方法对属性进行键-值对配置,如set("spark.executor.memory", "1g") 。
...