1 配置hive
1.修改bin/hive-config.sh,添加jdk支持
2.在HDFS中创建目录,并且将其开放g+w模式
通过我的试验,以上创建目录的步骤是可以省略的,Hive会自动创建需要的目录
3. 修改conf/hive-default.xml,这个是hive的关键配置,所以一般不要直接修改,新建hive-site.xml文件,将修改的内容在这个里面配置。
2)运行hive
3)测试hive
1.创建数据表
默认是使用输入格式(input format)为text ,分割符号使用^A(ctrl-a).
2.创建分区的数据表
包含2列和一个分区列(ds)。分区列是一个虚拟列。它不是数据自身的一部分,但是它由得到分区,详细数据加载到里面
3.显示数据表
显示所有的数据表
只显示以's'结尾的数据表
4.查询
5.从本地加载数据
这个文件位于hive的安装目录下,examples/files/kv1.txt
6.从hdfs加载数据
去掉LOCAL,就是从HDFS加载
关键字OVERWRITE意味着,数据表已经存在的数据将被删除。省略OVERWRITE,数据文件将会添加到原有数据列表里
7. 删除数据表
4)Heap size设置
Hive默认-Xmx4096m
修改hive/bin/ext/util/ execHiveCmd.sh
HADOOP_HEAPSIZE=256
5)启动Hive Thrift Server
默认使用10000端口,也可以使用HIVE_PORT来指定端口
6)启动hwi
取消日志的方式
相关资料
http://wiki.apache.org/hadoop/Hive/GettingStarted
http://wiki.apache.org/hadoop/Hive/LanguageManual
1.修改bin/hive-config.sh,添加jdk支持
- exportJAVA_HOME=/usr/local/jdk
- exportHIVE_HOME=/data/soft/hive
- exportHADOOP_HOME=/data/soft/hadoop
2.在HDFS中创建目录,并且将其开放g+w模式
- root@master:/data/soft#hadoopfs–mkdir/tmp
- root@master:/data/soft#hadoopfs–mkdir/user/hive/warehouse
- root@master:/data/soft#hadoopfs–chmodg+w/tmp
- root@master:/data/soft#hadoopfs–chmodg+w/user/hive/warehouse
通过我的试验,以上创建目录的步骤是可以省略的,Hive会自动创建需要的目录
3. 修改conf/hive-default.xml,这个是hive的关键配置,所以一般不要直接修改,新建hive-site.xml文件,将修改的内容在这个里面配置。
- <property>
- <name>hive.exec.scratchdir</name>
- <value>/data/work/hive/tmp</value>
- <description>ScratchspaceforHivejobs</description>
- </property>
- <property>
- <name>hive.querylog.location</name>
- <value>/data/work/hive/querylog</value>
- </property>
- <property>
- <name>hive.hwi.listen.host</name>
- <value>0.0.0.0</value>
- <description>ThisisthehostaddresstheHiveWebInterfacewilllistenon</description>
- </property>
- <property>
- <name>hive.hwi.listen.port</name>
- <value>9999</value>
- <description>ThisistheporttheHiveWebInterfacewilllistenon</description>
- </property>
2)运行hive
- root@master:/data/soft/hive/bin#./hive
- Hivehistoryfile=/tmp/root/hive_job_log_root_201101241057_361521373.txt
- hive>
3)测试hive
1.创建数据表
- hive>createTABLEpokes(idINT,namestring);
- OK
- Timetaken:8.192seconds
默认是使用输入格式(input format)为text ,分割符号使用^A(ctrl-a).
2.创建分区的数据表
- hive>CREATETABLEinvites(fooINT,barSTRING)PARTITIONEDBY(dsSTRING);
- OK
- Timetaken:36.562seconds
包含2列和一个分区列(ds)。分区列是一个虚拟列。它不是数据自身的一部分,但是它由得到分区,详细数据加载到里面
3.显示数据表
- hive>SHOWTABLES;
显示所有的数据表
- hive>SHOWTABLES'.*s';
只显示以's'结尾的数据表
4.查询
- hive>select*frompokes;
- OK
- Timetaken:0.505seconds
5.从本地加载数据
- hive>LOADDATALOCALINPATH'./examples/files/kv1.txt'OVERWRITEINTOTABLEpokes;
这个文件位于hive的安装目录下,examples/files/kv1.txt
6.从hdfs加载数据
- LOADDATAINPATH'/jd/files/kv1.txt'OVERWRITEINTOTABLEpokes;
去掉LOCAL,就是从HDFS加载
关键字OVERWRITE意味着,数据表已经存在的数据将被删除。省略OVERWRITE,数据文件将会添加到原有数据列表里
7. 删除数据表
- hive>droptablepokes;
- OK
- Timetaken:0.726seconds
4)Heap size设置
Hive默认-Xmx4096m
修改hive/bin/ext/util/ execHiveCmd.sh
HADOOP_HEAPSIZE=256
5)启动Hive Thrift Server
- hive--servicehiveserver
默认使用10000端口,也可以使用HIVE_PORT来指定端口
- root@master:/data/soft/hive/bin#./hive--servicehiveserver--help
- usageHIVE_PORT=xxxx./hive--servicehiveserver
- HIVE_PORT:Specifytheserverport
6)启动hwi
- bin/hive--servicehwi
取消日志的方式
- nohupbin/hive--servicehwi>/dev/null2>/dev/null&
相关资料
http://wiki.apache.org/hadoop/Hive/GettingStarted
http://wiki.apache.org/hadoop/Hive/LanguageManual