Hive JOIN使用详解[转]

Hive是基于Hadoop平台的,它提供了类似SQL一样的查询语言HQL。有了Hive,如果使用过SQL语言,并且不理解Hadoop MapReduce运行原理,也就无法通过编程来实现MR,但是你仍然可以很容易地编写出特定查询分析的HQL语句,通过使用类似SQL的语法,将HQL查询语句提交Hive系统执行查询分析,最终Hive会帮你转换成底层Hadoop能够理解的MR Job。

远程桌面访问CentOS 6

随着Hadoop上任务日益增多与复杂,感觉还是需要用ETL工具进行控制流处理,因为需要执行的大多为Shell脚本,Windows上开发然后放到Linux上不方便,因此偷偷在服务器上装了桌面。。。。。。

配置还是非常方便滴,N年没用桌面了哇,记录备忘。

How To Set Up an OpenVPN Server on Ubuntu 14.04[译]

Introduction

你是否想在不安全的网络环境中(比如酒店或咖啡店WIFI),安全可靠的访问网络?VPN(Virtual Private Network )可以满足你的需求。它会帮你建立一个安全的私有网络。

结合HTTPS链接,这个可以保护你的无线登录和传送。你可以绕过地理限制和审查,在不受信任的网络中保护你的位置和未加密的HTTP流量

OpenVPN是一个开源的SSL(Secure Socket Layer) VPN解决方案,提供多种配置。在本较沉重,我们会在Droplet上建立一个OpenVPN服务器,然后通过Windows,OS X,iOS和android.来访问它。本教程将尽可能使安装和配置步骤简单化。

Spark交互式开发平台Zeppelin部署,未完待续

安装过程

安装编译环境

yum install git
yum install nodejs npm

安装Maven
Ensure node is installed by running node –version
Ensure maven is running version 3.1.x or higher with mvn -version
Configure maven to use more memory than usual by export MAVEN_OPTS=”-Xmx2g -XX:MaxPermSize=1024m”

wget http://www.eu.apache.org/dist/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
sudo tar -zxf apache-maven-3.3.9-bin.tar.gz -C /usr/local/
sudo ln -s /usr/local/apache-maven-3.3.9/bin/mvn /usr/local/bin/mvn

下载Zeppelin源码

git clone https://github.com/apache/zeppelin.git
git checkout branch-0.6 #切换最新的release版本
git pull #确保代码是最新的

或者直接下载官方打包好的源码

wget http://apache.fayea.com/zeppelin/zeppelin-0.6.1/zeppelin-0.6.1.tgz

编译
具体选项含义可以查看官方文档Build

先确定版本号

hadoop version
spark-shell --version

git版本过低的话可以用WANDisco 源

yum install http://opensource.wandisco.com/centos/6/git/x86_64/wandisco-git-release-6-1.noarch.rpm

开始编译

mvn clean package -Pbuild-distr -Pyarn -Pspark-1.6 -Dspark.version=1.6.0 -Phadoop-2.6 -Dhadoop.version=2.6.0-cdh5.8.0 -Ppyspark -Psparkr -Pvendor-repo -DskipTests

部署Zeppelin

将Zeppelin解压到指定的目录中

tar zxf zeppelin-0.6.2-SNAPSHOT.tar.gz -C /opt/
mv /opt/zeppelin-0.6.2-SNAPSHOT /opt/zeppelin

配置Zeppelin

mkdir /etc/zeppelin
mv /opt/zeppelin/conf /etc/zeppelin/conf
cd /opt/zeppelin
ln -s /etc/zeppelin/conf conf
cd /etc/zeppelin/conf
cp zeppelin-env.sh{.template,}
cp zeppelin-site.xml{.template,}

修改zeppelin-env.sh文件

export JAVA_HOME=/usr/java/jdk1.7.0_67-cloudera
export MASTER=yarn-client
export ZEPPELIN_JAVA_OPTS="-Dmaster=yarn-client -Dspark.yarn.jar=/opt/zeppelin/interpreter/spark/zeppelin-spark_2.10-0.6.2-SNAPSHOT.jar"
export DEFAULT_HADOOP_HOME=/opt/cloudera/parcels/CDH/lib/hadoop
export SPARK_HOME=/opt/cloudera/parcels/CDH/lib/spark
if [ -n "$HADOOP_HOME" ]; then
  export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${HADOOP_HOME}/lib/native
fi
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-/etc/hadoop/conf}

export ZEPPELIN_LOG_DIR=/var/log/zeppelin
export ZEPPELIN_PID_DIR=/var/run/zeppelin
export ZEPPELIN_WAR_TEMPDIR=/var/tmp/zeppelin

创建对应目录

mkdir /var/log/zeppelin
mkdir /var/run/zeppelin
mkdir /var/tmp/zeppelin

为Zeppelin新建一个用户,并且处理相关的路径权限

useradd zeppelin

chown -R zeppelin:zeppelin /opt/zeppelin/notebook
chown zeppelin:zeppelin /etc/zeppelin/conf/interpreter.json
chown -R zeppelin:zeppelin /var/log/zeppelin
chown -R zeppelin:zeppelin /var/run/zeppelin
chown -R zeppelin:zeppelin /var/tmp/zeppelin

为用户建立hdfs的目录

su hdfs
hadoop fs -mkdir /user/zeppelin
hadoop fs -chmod 777 /user/zeppelin

碰到问题的解决

1.com.fasterxml.jackson.databind.JsonMappingException: Could not find creator property with name ‘id’ (in class org.apache.spark.rdd.RDDOperationScope) at [Source: {“id”:”0”,”name”:”parallelize”}; line: 1, column: 1]

应该是jackson版本冲突了.zeppelin中删除以下文件即可

rm zeppelin-server/target/lib/jackson-* and rm zeppelin-zengine/target/lib/jackson-*

相关连接:
Could not find creator property with name … with embedded spark binaries
com.fasterxml.jackson.databind.JsonMappingException

参考

Quick Start
How-to: Install Apache Zeppelin on CDH
在Cloudera CDH上部署Zeppelin和SparkR Interpreter
Running Zeppelin on CDH

,