将本地文本文件上传到HDFS上,然后导入hive/impala对应表中
来源:互联网 发布:淘宝直通车怎么收费 编辑:程序博客网 时间:2024/06/06 02:19
1.本地文本文件上传前的准备
将文本保存为"uft-8"格式,并用"|"进行字段间的分割(个人习惯,可以选用其它符号,但要避免和编程语言产生冲突,Hive默认的字段分隔符为ascii码的控制符\001)。
2.将文本文件通过Xshell上传到HDFS上
(1)首先要新建(Alt+N)一个连接,主要填写主机IP,其他根据自己的需要填写。确定之后,打开(Alt+O)刚刚建立的连接,输入用户名和密码,这样就连上了你的服务器了。
(2)新建文件传输(Ctrl+Alt+F),将你的本地文本文件复制到相应的文件夹中,比如我将tbl_adrs_code.txt放在了/home/sjz/dataclean/data下。
(3)输入HDFS命令并执行:
hdfs dfs -put /home/sjz/dataclean/data/tbl_adrs_code.txt /data_clean(/home/sjz/dataclean/data/tbl_adrs_code.txt是输入文件的路径,data_clean是dhs上的目标文件夹,文件夹需要建好哦,在目标文件夹前要"/",不然会出错:put:'data_clean':No such file or directory)此时你的文件已经复制到dfs上了。
3.在hive/impala上建立对应的表
CREATE TABLE tbl_adrs_code(adrs_id STRING, adrs STRING) ROW FORMAT DELIMITED FIELDS TERMINATED BY '|'
4.将HDFS的数据导入相应的表中
LOAD DATA INPATH '/data_clean/tbl_adrs_code.txt' INTO TABLE tbl_code_province
(data_clean/tbl_code_province.txt是文件在HDFS上的路径)
问题:通过以上方式建表,文件的第一行的第一个字段可能会出现特殊符号‘·’,具体原因一直没有闹清楚。所以,可以在文件第一列作为序号类使用,或用相关语句修改
INSERT OVERWRITE TABLE tbl_adrs_code SELECT CASE WHEN adrs_is = ' ·11' THEN '11' ELSE arse_id END AS adrs_id, adrs FROM tbl_adrs_code处女作,大家多指点
阅读全文
3 0
- 将本地文本文件上传到HDFS上,然后导入hive/impala对应表中
- 将本地文本文件直接导入hive(impala好像不支持)表中
- 使用shell将hdfs上的数据导入到hive表中
- 将hbase中的表同步到hive和impala中
- 使用在hdfs上的文件导入到hive中
- 怎样将文本文件导入impala中的分区表中
- JAVA实现:将文件从本地上传到HDFS上、从HDFS上读取等操作
- 从文本文件导入数据到hive表中
- 将远程服务器上数据库导入到本地服务器hive上流程
- 将文本文件导入到Excel数据表中
- java中怎么将本地图片上传到服务器上
- Hive将txt、csv等文本文件导入hive表
- MongoDB的数据导入到HDFS上的Hive中记录
- 将excel中数据显示在页面上,然后再导入到SqlServer数据库中
- hive命令将hbase数据导出到hive然后到本地
- Sqoop将MySQL中数据导入到Hive表中
- MapReduce产生RCFile文件在HDFS,HIve将RCFile文件加载到hive的表中
- 将linux本地文件夹上传到hdfs服务器
- 云客Drupal8源码分析之实体Entity(三)配置实体储存处理器
- K个最近的点
- GitHub入门(1)
- Java面试精选
- 编译u-boot时出现大量CPU警告解决方案
- 将本地文本文件上传到HDFS上,然后导入hive/impala对应表中
- debian9安装wps
- 数据库SQL优化大总结之 百万级数据库优化方案
- mapreduce 论文(中文翻译)
- 一个高可伸缩的游戏服务器架构
- Mesos+Marathon+Zookeeper的安装部署
- warning C4996: 'MBCS_Support_Deprecated_In_MFC'
- Hadoop之HDFS分布式文件系统NameNode及Secondary NameNode详解
- 移动端 transform 详解