hadoop之hive安装与配置
- 格式:doc
- 大小:168.04 KB
- 文档页数:22
HIVE编程实战一HIVE基础1.1 什么是hive?Hadoop生态系统是为了处理大数据集而产生的一个合乎成本效益的解决方案。
Hadoop实现了一个特别的计算模型,即MapReduce,其可以将计算认为分割成多个处理单元然后分散到Hadoop集群中的家用或服务器级别的硬件机器上,从而降低成本并提供动态扩展的能力。
基于这个计算模型的下面是一个被称之为HDFS(Hadoop分布式文件系统)的分布式文件系统。
不过,仍然存在一个挑战,那就是用户如何从一个现有的数据基础架构转移到Hadoop 上,而这个基础架构是基于传统关系型数据库和结构化SQL语言的。
对于大量的关系型数据库的维护、实施、开发人员,这个问题将如何解决呢?这就是Hive出现的原因。
Hive提供了一个被称之为Hive查询语言,简称HQL的SQL方言(与MYSQL及其类似),用来查询存储在Hadoop集群中的数据。
Hive可以将大多数的查询转换为MapReduce的job任务,从而使得采用简单的SQL编程方式,来替换掉原有的MapReduce中的复杂java编程。
Hive最适合于数据仓库应用程序,使用该应用程序进行相关的静态数据分析,不需要快速响应给出结果,而且数据本身不会频繁变化。
Hive不是一个完整的数据库,其中最大的限制就是hive不支持记录级别的更新、插入或者删除,但是用户可以通过查询生成新表或者将查询结果导入到文件中。
同时,基于Mapreduce的hive查询延时比较严重,没有传统的RDBMS查询速度快,hive不支持事物。
因此,hive是最适合数据仓库应用程序的,其可以维护海量数据,而且可以对数据进行分析,然后形成统计结果以及报表等。
1.2 HIVE组成模块所有的命令和查询都会进入到Driver(驱动模块),通过该模块对输入进行解析编译,对需求的计算进行优化,然后按照指定的步骤执行。
当需要启动MapReduce任务时,Hive 本身是不会生成Java Mapreduce程序。
Hadoop、Zookeeper、Hbase、Hive集群安装配置手册运行环境机器配置虚机CPU E5504*2 (4核心)、内存 4G、硬盘25G进程说明QuorumPeerMain ZooKeeper ensemble member DFSZKFailoverController Hadoop HA进程,维持NameNode高可用 JournalNode Hadoop HA进程,JournalNode存储EditLog,每次写数据操作有大多数(>=N+1)返回成功时即认为该次写成功,保证数据高可用 NameNode Hadoop HDFS进程,名字节点DataNode HadoopHDFS进程, serves blocks NodeManager Hadoop YARN进程,负责 Container 状态的维护,并向 RM 保持心跳。
ResourceManager Hadoop YARN进程,资源管理 JobTracker Hadoop MR1进程,管理哪些程序应该跑在哪些机器上,需要管理所有 job 失败、重启等操作。
TaskTracker Hadoop MR1进程,manages the local Childs RunJar Hive进程HMaster HBase主节点HRegionServer HBase RegionServer, serves regions JobHistoryServer 可以通过该服务查看已经运行完的mapreduce作业记录应用 服务进程 主机/hostname 系统版本mysql mysqld10.12.34.14/ Centos5.810.12.34.15/h15 Centos5.8 HadoopZookeeperHbaseHiveQuorumPeerMainDFSZKFailoverControllerNameNodeNodeManagerRunJarHMasterJournalNodeJobHistoryServerResourceManagerDataNodeHRegionServer10.12.34.16/h16 Centos5.8 HadoopZookeeperHbaseHiveDFSZKFailoverControllerQuorumPeerMainHMasterJournalNodeNameNodeResourceManagerDataNodeHRegionServerNodeManager10.12.34.17/h17 Centos5.8 HadoopZookeeperHbaseHiveNodeManagerDataNodeQuorumPeerMainJournalNodeHRegionServer环境准备1.关闭防火墙15、16、17主机:# service iptables stop2.配置主机名a) 15、16、17主机:# vi /etc/hosts添加如下内容:10.12.34.15 h1510.12.34.16 h1610.12.34.17 h17b) 立即生效15主机:# /bin/hostname h1516主机:# /bin/hostname h1617主机:# /bin/hostname h173. 创建用户15、16、17主机:# useraddhduser密码为hduser# chown -R hduser:hduser /usr/local/4.配置SSH无密码登录a)修改SSH配置文件15、16、17主机:# vi /etc/ssh/sshd_config打开以下注释内容:#RSAAuthentication yes#PubkeyAuthentication yes#AuthorizedKeysFile .ssh/authorized_keysb)重启SSHD服务15、16、17主机:# service sshd restartc)切换用户15、16、17主机:# su hduserd)生成证书公私钥15、16、17主机:$ ssh‐keygen ‐t rsae)拷贝公钥到文件(先把各主机上生成的SSHD公钥拷贝到15上的authorized_keys文件,再把包含所有主机的SSHD公钥文件authorized_keys拷贝到其它主机上)15主机:$cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys16主机:$cat ~/.ssh/id_rsa.pub | ssh hduser@h15 'cat >> ~/.ssh/authorized_keys'17主机:$cat ~/.ssh/id_rsa.pub | ssh hduser@h15 'cat >> ~/.ssh/authorized_keys'15主机:# cat ~/.ssh/authorized_keys | ssh hduser@h16 'cat >> ~/.ssh/authorized_keys'# cat ~/.ssh/authorized_keys | ssh hduser@h17 'cat >> ~/.ssh/authorized_keys'5.Mysqla) Host10.12.34.14:3306b) username、passwordhduser@hduserZookeeper使用hduser用户# su hduser安装(在15主机上)1.下载/apache/zookeeper/2.解压缩$ tar ‐zxvf /zookeeper‐3.4.6.tar.gz ‐C /usr/local/配置(在15主机上)1.将zoo_sample.cfg重命名为zoo.cfg$ mv /usr/local/zookeeper‐3.4.6/conf/zoo_sample.cfg /usr/local/zookeeper‐3.4.6/conf/zoo.cfg2.编辑配置文件$ vi /usr/local/zookeeper‐3.4.6/conf/zoo.cfga)修改数据目录dataDir=/tmp/zookeeper修改为dataDir=/usr/local/zookeeper‐3.4.6/datab)配置server添加如下内容:server.1=h15:2888:3888server.2=h16:2888:3888server.3=h17:2888:3888server.X=A:B:C说明:X:表示这是第几号serverA:该server hostname/所在IP地址B:该server和集群中的leader交换消息时所使用的端口C:配置选举leader时所使用的端口3.创建数据目录$ mkdir /usr/local/zookeeper‐3.4.6/data4.创建、编辑文件$ vi /usr/local/zookeeper‐3.4.6/data/myid添加内容(与zoo.cfg中server号码对应):1在16、17主机上安装、配置1.拷贝目录$ scp ‐r /usr/local/zookeeper‐3.4.6/ hduser@10.12.34.16:/usr/local/$ scp ‐r /usr/local/zookeeper‐3.4.6/ hduser@10.12.34.17:/usr/local/2.修改myida)16主机$ vi /usr/local/zookeeper‐3.4.6/data/myid1 修改为2b)17主机$ vi /usr/local/zookeeper‐3.4.6/data/myid1修改为3启动$ cd /usr/local/zookeeper‐3.4.6/$./bin/zkServer.sh start查看状态:$./bin/zkServer.sh statusHadoop使用hduser用户# su hduser安装(在15主机上)一、安装Hadoop1.下载/apache/hadoop/common/2.解压缩$ tar ‐zxvf /hadoop‐2.4.0.tar.gz ‐C /usr/local/二、 编译本地库,主机必须可以访问internet。
Hadoop2.2.0+Hbase0.98.1+Sqoop1.4.4+Hive0.13完全安装手册前言: (3)一. Hadoop安装(伪分布式) (4)1. 操作系统 (4)2. 安装JDK (4)1> 下载并解压JDK (4)2> 配置环境变量 (4)3> 检测JDK环境 (5)3. 安装SSH (5)1> 检验ssh是否已经安装 (5)2> 安装ssh (5)3> 配置ssh免密码登录 (5)4. 安装Hadoop (6)1> 下载并解压 (6)2> 配置环境变量 (6)3> 配置Hadoop (6)4> 启动并验证 (8)前言:网络上充斥着大量Hadoop1的教程,版本老旧,Hadoop2的中文资料相对较少,本教程的宗旨在于从Hadoop2出发,结合作者在实际工作中的经验,提供一套最新版本的Hadoop2相关教程。
为什么是Hadoop2.2.0,而不是Hadoop2.4.0本文写作时,Hadoop的最新版本已经是2.4.0,但是最新版本的Hbase0.98.1仅支持到Hadoop2.2.0,且Hadoop2.2.0已经相对稳定,所以我们依然采用2.2.0版本。
一. Hadoop安装(伪分布式)1. 操作系统Hadoop一定要运行在Linux系统环境下,网上有windows下模拟linux环境部署的教程,放弃这个吧,莫名其妙的问题多如牛毛。
2. 安装JDK1> 下载并解压JDK我的目录为:/home/apple/jdk1.82> 配置环境变量打开/etc/profile,添加以下内容:export JAVA_HOME=/home/apple/jdk1.8export PATH=$PATH:$JAVA_HOME/binexport CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar执行source /etc/profile ,使更改后的profile生效。
hadoop安装以及配置启动命令本次安装使⽤的Hadoop⽂件是badou学院的Hadoop1.2.1.tar.gz,以下步骤都是在此版本上进⾏。
1、安装,通过下载tar.gz⽂件安装到指定⽬录2、安装好后需要配置Hadoop集群配置信息: 在hadoop的conf路径中的masters中添加master(集群机器主的hostname)在slaves中添加集群的slave的hostname名称名称对应的是各⾃机器的hostname这样通过hosts⽂件中配置的域名地址映射可以直接找到对应的机器 a、core-site.xml 在xml⽂件中添加<property><name>hadoop.tmp.dir</name><value>/usr/local/src/hadoop.1.2.1/tmp</value></property> <property><name></name><value>hdfs://192.168.79.10:9000</value></property> c、hdfs-site.xml 在⽂件中添加<property><name>dfs.replication</name><value>3</value></property><!-- 复制节点数 --> d、hadoop-env.xml 在⽂件中添加export JAVA_HOME=/usr/local/src/jdk1.6.0_45 步骤2配置好后将当前hadoop⽂件夹复制到集群中其他机器上,只需要在对应机器上修改其对应的ip、port、jdk路径等信息即可搭建集群3、配置好Hadoop环境后需要测试环境是否可⽤: a、⾸先进⼊Hadoop的安装⽬录,进⼊bin⽬录下,先将Hadoop环境初始化,命令:./hadoop namenode -format b、初始化之后启动Hadoop,命令:./start_all.sh c、查看Hadoop根⽬录下的⽂件,命令:./hadoop fs -ls/ d、上传⽂件,命令:./hadoop fs -put ⽂件路径 e、查看⽂件内容,命令:./hadoopo fs -cat hadoop⽂件地址注意:在安装Hadoop环境时先安装好机器集群,使得⾄少3台以上(含3台)机器之间可以免密互相登录(可以查看上⼀篇的linux的ssh免密登录)执⾏Python⽂件时的部分配置/usr/local/src/hadoop-1.2.1/bin/hadoop/usr/local/src/hadoop-1.2.1/contrib/streaming/hadoop-streaming-1.2.1.jar。
hive安装配置实验实训报告一、实验目的本实验旨在通过实际操作,掌握Hive的安装与配置过程,了解Hive的基本功能和使用方法,为后续的大数据处理和分析奠定基础。
二、实验环境1.硬件环境:高性能计算机,至少4核CPU、8GB内存、50GB 硬盘。
2.软件环境:Ubuntu 18.04操作系统,Java Development Kit (JDK) 1.8,Apache Hadoop 2.7.3。
三、实验步骤1.安装与配置Hadoop:首先,在实验环境中安装Hadoop,并配置Hadoop集群。
确保NameNode、SecondaryNameNode、DataNode等节点正常运行。
2.安装Hive:使用apt-get命令安装Hive。
在安装过程中,选择与Hadoop版本兼容的Hive版本。
3.配置Hive:编辑Hive的配置文件hive-site.xml,配置Hive连接到Hadoop集群的相关参数。
4.初始化Hive元数据:运行Hive的元数据初始化脚本,创建Hive元数据库。
5.启动Hive服务:使用以下命令启动Hive的元数据库、Metastore和HiveServer2等服务。
1.元数据库:hive --service metastore &2.Metastore:hive --service metastore &3.HiveServer2:hive --service hiveserver2 &6.测试Hive:使用Hive的命令行工具进入Hive交互式查询环境,执行简单的SQL查询语句,测试Hive是否安装成功。
四、实验结果与分析经过上述步骤,我们成功在实验环境中安装和配置了Hive。
通过执行简单的SQL查询语句,验证了Hive的基本功能。
具体而言,我们执行了以下查询语句:1.创建数据库:CREATE DATABASE mydatabase;2.选择数据库:USE mydatabase;3.创建表:CREATE TABLE mytable (id INT, name STRING);4.插入数据:INSERT INTO TABLE mytable VALUES (1, 'Alice'), (2, 'Bob');5.查询数据:SELECT * FROM mytable;6.删除表:DROP TABLE mytable;7.删除数据库:DROP DATABASE mydatabase;通过这些查询语句的执行,我们验证了Hive的基本功能,包括数据库管理、表创建、数据插入、数据查询、表删除和数据库删除等。
hadoop实训报告Hadoop 实训报告一、实训背景随着大数据时代的到来,数据量呈爆炸式增长,传统的数据处理方式已经无法满足需求。
Hadoop 作为一个开源的分布式计算框架,能够有效地处理海量数据,因此在数据处理和分析领域得到了广泛的应用。
为了深入了解和掌握 Hadoop 技术,提高自己的大数据处理能力,我参加了本次 Hadoop 实训。
二、实训目的1、熟悉 Hadoop 生态系统的核心组件,包括 HDFS(Hadoop 分布式文件系统)、MapReduce(分布式计算框架)、YARN(资源管理框架)等。
2、掌握 Hadoop 集群的搭建和配置方法,能够独立完成集群的部署。
3、学会使用 Hadoop 进行数据的存储、处理和分析,能够编写MapReduce 程序解决实际问题。
4、培养团队合作精神和解决问题的能力,提高自己在大数据领域的实践能力和综合素质。
三、实训环境1、操作系统:CentOS 762、 Hadoop 版本:Hadoop 3213、 Java 版本:JDK 184、开发工具:Eclipse、IntelliJ IDEA四、实训内容(一)Hadoop 集群搭建1、准备工作安装 CentOS 76 操作系统,配置网络、主机名等。
安装 Java 环境,配置 JAVA_HOME 环境变量。
2、安装 Hadoop下载 Hadoop 321 安装包,并解压到指定目录。
配置 Hadoop 环境变量,包括 HADOOP_HOME、PATH 等。
3、配置 Hadoop 集群修改 coresitexml、hdfssitexml、mapredsitexml、yarnsitexml 等配置文件,设置 namenode、datanode、resourcemanager、nodemanager 等相关参数。
启动 Hadoop 集群,包括 namenode 格式化、启动 HDFS、启动YARN 等。
(二)HDFS 操作1、文件上传与下载使用 hadoop fs put 命令将本地文件上传到 HDFS 中。
Hadoop安装、配置指南一、环境1、软件版本Hadoop:hadoop-0.20.2.Hive:hive-0.5.0JDK:jdk1.6以上版本2、配置的机器:主机[服务器master]:192.168.10.121 hadoop13从机[服务器slaves]:192.168.10.68 hadoop4在本文中,在命令或二、先决条件1、配置host:打开/etc/host文件,添加如下映射192.168.10.121 hadoop13 hadoop13192.168.10.68 hadoop4 hadoop42、配置SSH自动登陆1)以ROOT用户,登陆到[服务器master]上执行,如下操作:ssh-keygen -t rsa //一路回车cd ~/.sshcat id_rsa.pub >> authorized_keysscp -r ~/.ssh [服务器slaves]:~/2)以ROOT用户,登陆到[服务器slaves]上执行,如下操作:scp -r ~/.ssh [服务器master]:~/3)测试SSH是否配置成功在主服务器中执行如下命令:ssh [服务器master]ssh 192.168.10.68成功显示结果:Last login: Thu Aug 26 14:11:27 2010 from 在从服务器中执行如下命令:ssh [服务器slaves]ssh 192.168.10.121成功显示结果Last login: Thu Aug 26 18:23:58 2010 from 三、安装hadoop1、JDK安装,解压到/usr/local/jdk1.6.0_17,并配置/etc/profile环境export JAVA_HOME=/usr/local/jdk/jdk1.7.0export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre:$PATHexport CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jarJDK路径:/usr/local/jdk/jdk1.7.0export JAVA_HOME=/usr/local/jdk/jdk1.7.0export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre:$PATHexport CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar/usr/local/jdk/jdk1.7.02、下载Hadoop 并解压到[服务器master]的/root/zwmhadoop目录下tar zxvf hadoop-0.20.2.tar.gz四、配置hadoop1.配置主机[服务器master]到zwm hadoop/hadoop-0.20.2/ hadoop 目录下,修改以下文件:1)配置conf/hadoop-env.sh文件,在文件中添加环境变量,增加以下内容:export JAVA_HOME=/usr/local/jdk1.6.0_17export HADOOP_HOME=/root/zwmhadoop/hadoop-0.20.2/2)配置conf/core-site.xml文件,增加以下内容<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="configuration.xsl"?><!-- Put site-specific property overrides in this file. --><configuration><property><name></name><value>hdfs://192.168.10.121:9000</value>//你的namenode的配置,机器名加端口<description>The nam e of the default file system. Either the literal string "local" o r a host:port for DFS.</description></property></configuration>3)配置conf/hdfs-site.xml文件,增加以下内容<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="configuration.xsl"?><!-- Put site-specific property overrides in this file. --><configuration><property><name>hadoop.t m p.dir</name><value>/root/zwmhadoop/t m p</value>//Hadoop的默认临时路径,这个最好配置,然后在新增节点或者其他情况下莫名其妙的DataNode启动不了,就删除此文件中的t mp目录即可。
大数据技术实验报告大数据技术实验一Hadoop大数据平台安装实验1实验目的在大数据时代,存在很多开源的分布式数据采集、计算、存储技术,本实验将在熟练掌握几种常见Linux命令的基础上搭建Hadoop(HDFS、MapReduce、HBase、Hive)、Spark、Scala、Storm、Kafka、JDK、MySQL、ZooKeeper等的大数据采集、处理分析技术环境。
2实验环境个人笔记本电脑Win10、Oracle VM VirtualBox 5.2.44、CentOS-7-x86_64-Minimal-1511.iso3实验步骤首先安装虚拟机管理程序,然后创建三台虚拟服务器,最后在虚拟服务器上搭建以Hadoop 集群为核心的大数据平台。
3.1快速热身,熟悉并操作下列Linux命令·创建一个初始文件夹,以自己的姓名(英文)命名;进入该文件夹,在这个文件夹下创建一个文件,命名为Hadoop.txt。
·查看这个文件夹下的文件列表。
·在Hadoop.txt中写入“Hello Hadoop!”,并保存·在该文件夹中创建子文件夹”Sub”,随后将Hadoop.txt文件移动到子文件夹中。
·递归的删除整个初始文件夹。
3.2安装虚拟机并做一些准备工作3.2.1安装虚拟机下载系统镜像,CentOS-7-x86_64-Minimal-1511.iso。
虚拟机软件使用Oracle VM VirtualBox 5.2.44。
3.2.2准备工作关闭防火墙和Selinux,其次要安装perl 、libaio、ntpdate 和screen。
然后检查网卡是否开机自启,之后修改hosts,检查网络是否正常如图:然后要创建hadoop用户,之后多次用,并且生成ssh 密钥并分发。
最后安装NTP 服务。
3.3安装MYSQL 3.3.1安装3.3.2测试3.4安装ZooKeeper。
Hive安装(hadoop2.7.1 hive 1.2.1)三种模式内嵌模式:元数据保持在内嵌的derby模式,只允许一个会话连接本地独立模式:在本地安装Mysql,把元数据放到mySql内远程模式:元数据放置在远程的Mysql数据库1、内嵌模式:第一步:下载HIVE第二步:解压放入soft目录下面第一步:修改文件名修改/home/lin/hadoop/apache-hive-1.2.1-bin/bin/hive-con fig.sh第二步:在hive-config.sh中添加环境变量:export JAVA_HOME=/usr/soft/jdk1.7.0_79export HADOOP_HOME=/home/lin/hadoop/hadoop-2.6.1 exportHIVE_HOME=/home/lin/hadoop/apache-hive-1.2.1-bin第三步:把hive-default.xml.template修改为hive-site.xml(/home/lin/hadoop/apache-hive-1.2.1-bin/conf/hive-d efault.xml.template复制为hive-site.xml)第四步:在hive-site.xml中删除里面的configuration里面的内容,然后添加如下内容hive.metastore.warehouse.dir hdfs 上的指定目录hive.exec.scratchdir hdfs上的临时文件目录<configuration><property><name>hive.metastore.warehouse.dir</name><value>/user/hive/warehouse</value> </property><property><name>hive.exec.scratchdir</name><value>/tmp/hive</value></property><property><name>hive.server2.logging.operation.log.loca tion</name><value>/tmp/hive/operation_logs</value><description>Top level directory where operation logs are stored if logging functionality is enabled</description></property><property><name>hive.exec.local.scratchdir</name><value>/tmp/hive</value><description>Local scratch space for Hive jobs</description></property><property><name>hive.downloaded.resources.dir</name><value>/tmp/hive/resources</value><description>Temporary local directory foradded resources in the remote file system.</description></property></configuration>第五步:配置hive的log4j: 拷贝conf下hive-log4j.properties.template一份,然后名字修改为hive-log4j.properties第六步:把hive-log4j.properties中的内容替换为如下内容:#log4j.appender.EventCounter=org.apache.hadoop.hive .shims.HiveEventCounterlog4j.appender.EventCounter=org.apache.hadoop.log.m etrics.EventCounter否则会有警告:WARN conf.HiveConf: HiveConf of name hive.metastore.local does not existWARNING: org.apache.hadoop.metrics.jvm.EventCounteris deprecated. Please use org.apache.hadoop.log.metrics.EventCounter in all the log4j.properties files.第七步:source /etc/profile第七步:启动hadoopstart-all.sh等上1分钟第八步:启动hivehive第九步:如果出错执行这一步,如果不出错,不用执行启动时候遇到错误:[ERROR] Terminal initialization failed; falling back to unsupportedng.IncompatibleClassChangeError: Found class jline.Terminal, but interface was expectedatjline.TerminalFactory.create(TerminalFactory.java:1 01)at jline.TerminalFactory.get(TerminalFactory.java:158)at jline.console.ConsoleReader.<init>(ConsoleReader.ja va:229)at jline.console.ConsoleReader.<init>(ConsoleReader.ja va:221)at jline.console.ConsoleReader.<init>(ConsoleReader.ja va:209)at org.apache.hadoop.hive.cli.CliDriver.setupConsoleRe ader(CliDriver.java:787)at org.apache.hadoop.hive.cli.CliDriver.executeDriver( CliDriver.java:721)at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver. java:681)at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver .java:621)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeM ethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke(Del egatingMethodAccessorImpl.java:43)at ng.reflect.Method.invoke(Method.java:606)at org.apache.hadoop.util.RunJar.run(RunJar.java:221)at org.apache.hadoop.util.RunJar.main(RunJar.java:136)发现是jline有问题,最后找到,原来hadoop里面的是jline0.0.94 hive里面的是jline2.12把/home/lin/hadoop/apache-hive-1.2.1-bin/lib 里面的jline2.12替换了hadoop 中/home/lin/hadoop/hadoop-2.6.1/share/hadoop/yarn/lib 的jline0.0.94 就可以成功了!第十步:练习HIVE语句2、独立模式在mysql中为hive建立账号,并授予足够的权限,例如hive 账号,授予all privileges用上述账号登陆mysql,创建数据库,比如名字叫hive,用于存放hive的元数据在本地安装MySQL客户端配置hive-site.xml,指出使用本地mysql数据库,以及连接协议,账号,口令等把mysql-connector-java.jar 复制到 hive的lib目录下启动hive能进入shell表示成功(1)、安装mysql并启动服务联网安装:sudo apt-get -y update第一步:安装cmakesudo apt-get install cmake第二步:sudo apt-get install libncurses5-dev第三步:sudo apt-get update第四步:sudo apt-get install mysql-server第五步:sudo apt-get install mysql-client第六步:sudo apt-get install libmysqlclient-dev 第七步:查看是否安装成功:sudo netstat -tap | grep mysql通过上述命令检查之后,如果看到有mysql 的socket处于listen 状态则表示安装成功。
第八步:登陆mysql数据库mysql -u root -p第九步:运行如下SQL语句创建数据库:1) 建库:create database hivedb;2) 建用户,赋权:grant all privileges on *.* to hivedb@"%" identified by "hivedb" with grant option;3) 删除数据库:drop database hivedb;查看mysql版本mysqladmin -u root -p version查看数据库:show databases;查看当前字符集:show variables like 'character%';停止mysql:sudo service mysql stop启动mysql:sudo service mysql start第十步:启动mysql: 使用命令试试是否能连上mysql (注意路径!!!)telnet 192.168.126.130 3306若拒绝连接编辑sudo vim /etc/mysql/f注释掉#bind-address = 192.168.126.130即可第十一步:停止mysqlsudo service mysql stop第十二步:启动mysqlsudo service mysql start第十三步:把mysqllinux驱动放在hive lib下面第十四步:把hive-site.xml中换做如下内容<?xml version="1.0" encoding="UTF-8" standalone="no"?><?xml-stylesheet type="text/xsl" href="configuration.xsl"?><configuration><!--<property><name>hive.metastore.warehouse.dir</name><value>/user/hive/warehouse</value></property><property><name>hive.exec.scratchdir</name><value>/tmp/hive</value></property><property><name>hive.server2.logging.operation.log.location</ name><value>/tmp/hive/operation_logs</value><description>Top level directory where operation logs are stored if logging functionality isenabled</description></property><property><name>hive.exec.local.scratchdir</name><value>/tmp/hive</value><description>Local scratch space for Hive jobs</description></property><property><name>hive.downloaded.resources.dir</name><value>/tmp/hive/resources</value><description>Temporary local directory for added resources in the remote file system.</description> </property>--><property><name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value><description>Driver class name for a JDBC metastore</description></property><property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://192.168.126.130:3306/hivedb?cre ateDatabaseIfNotExist=true</value><description>JDBC connect string for a JDBC metastore</description></property><property><name>javax.jdo.option.ConnectionUserName</name> <value>root</value><description>username to use against metastore database</description></property><property><name>javax.jdo.option.ConnectionPassword</name> <value>beijing</value><description>password to use against metastore database</description></property></configuration>第十五步:开启hadoop第十五步:进入hivehive3、远程模式在独立模式的基础上第十六步:换IP第十七步:换用户名和密码第十八步:在hive-site.xml中添加:<property><name>hive.metastore.local</name><value>true</value><description>controls whether to connect to remove metastore server or open a new metastore server in Hive Client JVM</description></property>mahout安装第一步:下载mahout第二步:解压,放入到 soft下面第三步:下载数据 synthetic_control.data/ml/databases/synthetic_c ontrol/synthetic_control.data第四步:下载的内容放在mahout下的testdata下面第五步:执行如下命令运行bin/mahoutorg.apache.mahout.clustering.syntheticcontrol.kmeans.Job第六步:找到实例,将MAHOUT_HOME添加到示例包中build.xml文件的mahout.home属性第七步:ant mahout-build第八步:将countries4Kmean.data文件复制到MAHOUT_HOME下的testdata目录第九步:ant kmeans-run第十步:bin/mahout clusterdump--seqFileDir<k-means-output-dir>/clusters-10-final/ --pointsDir<k-means-output-dir>/clusteredPoints--outputFormat GRAPH_ML -o clusters.graphml第十一步:从下载gephi图像开发工具包第十二步:打开mahout_home下打开clusters.graphml文件,可以看到图片参考:3.远程模式安装远程模式安装是把metastore配置到远程的机器上,可以配置多个,在独立模式的基础上需要在hive-site.xml中增加配置信息<!--用于远程模式安装的附加信息--><property><name>hive.metastore.local</name><value>false</value><description>controls whether to connect to remove metastore server or open a new metastore serverin Hive Client JVM</description></property><property><name>hive.metastore.uris</name><value>uri1,uri2</value><!--可以配置多个uri,他们之间用分号隔开即可--><description>JDBC connect string for a JDBC metastore</description></property>安装环境:操作系统:Centos 5.8JDK版本:jdk1.7.0_09Hadoop版本:hadoop-0.20.2Hive版本:0.10.0Mysql版本:5.5.22虚拟机名称及IPh1 192.168.64.128h2 192.168.64.129h3 192.168.64.1301、h2安装mysql,过程略。