----------------------------------------
--read me
--方式1:适用于工具传输
--方式2:适用于手动临时性传输
----------------------------------------
.
.
.
.
.
.
--##########################################################################################################方式1
--read me:方式1适用于从oracle数据库直接用shell工具,将数据传到hive库中
-----------------------------------------------------------STEP1
--首先进入到hadoop 141服务器的如下目录
[fast@hn-hdp-01 jobs]$ /home/fast/sqoop-1.4.6/jobs

-----------------------------------------------------------STEP2
--打开其中.SH,进行参数配置
[fast@hn-hdp-01 jobs]$vim ora2hive.sh
{如下是ora2hive.sh的内容}
#/bin/sh

export PATH=$PATH:/home/fast/sqoop-1.4.6/bin

url=jdbc:oracle:thin:@10.92.190.65:1521/fast --修改1,表在哪个服务器,在此修改为该服务器的IP地址和端口
driver= --默认不写,不做修改
#username=fasthndeve --Oracle数据库用户名(与上面IP是对应的)
#password='F@sthndeve*123'--Oracle数据库密码(与上面IP是对应的)
#username=FASthn4ga
#password='AF@sthn4g*123'
#username=FASTHNCFG
#password='F@sthncfg*123'
username=fastmdt
password='F@stmdt*123'
table=CFG_CELL_POORCOVERAGE_HIVE --Oracle数据库中的名字(表名需要变成大写字母)
COLUMNS=SDATE,PROVINCE,CITY,COUNTY,ENODEB_ID,LCRID,CELL_NAME,LONGITUDE,LATITUDE --oracle数据表的字段(字段名需要变成大写字母)
#table=CFG_GRID10_2 --默认
KEY=LONGITUDE --任一数值型的字段,做key即可
mapper=10 --默认
hive_db=fastdo_lte --默认(工参数据都存放在默认库)
#hive_tb=CFG_SITEINFO_TDLTE_P10 --已#掉,不管
hive_tb=$table --默认
sqoop import --connect $url \ --默认
--username $username \
--password $password \
--columns $COLUMNS \
--table $table \
--hive-import \
--split-by $KEY \
--hive-database $hive_db \
--hive-table $hive_tb \
--input-null-string '\\N' \
--input-null-non-string '\\N' \
#--where "CITY='XINYANG' AND SDATE>=to_date('20180103','YYYYMMDD')" \
#--where "'2018-04-01'>=substr('sdate',1,10)" \
-m $mapper \ --默认

-----------------------------------------------------------STEP3
--执行
[fast@hn-hdp-01 jobs]$sh ./ora2hive.sh

-----------------------------------------------------------STEP4
--在hive上检查是否传输成功,检查字段名或者数据条数(与Oracle数据条数做对比)
hive >desc table表;

#alter table CFG_SITEINFO_TDLTE rename to CFG_SITEINFO_TDLTE_2018xx 修改为几月份的数据
#create table CFG_SITEINFO_TDLTE as select * from test.CFG_SITEINFO_TDLTE

--##########################################################################################################方式2
--read me:方式2适用于手动传输本地数据到hive库
-----------------------------------------------------------第一步:首先在Hive的fastdo_lte库下面建立该表。
--注意:要是建立的表有分区,就加上分区标识,没有分区,--去掉分区标识即可。
drop table TDLTE_MRO_LOCATE_HOUR_20170523;
CREATE TABLE IF NOT EXISTS TDLTE_MRO_LOCATE_HOUR_20170523(
GROUPID STRING,
N1_CELL_ID STRING,
N1_RSRP STRING,
N2_CELL_ID STRING,
N2_RSRP STRING,
N3_CELL_ID STRING,
N3_RSRP STRING,
N4_CELL_ID STRING,
N4_RSRP STRING,
N5_CELL_ID STRING,
N5_RSRP STRING,
N6_CELL_ID STRING,
N6_RSRP STRING,
N7_CELL_ID STRING,
N7_RSRP STRING,
S_CELL_ID STRING,
AOA STRING,
TA STRING,
MROID STRING,
S_RSRP STRING,
MRO_TS STRING,
MRO_MMEUES1APID STRING,
MRO_MMEGROUPID STRING,
MRO_MMECODE STRING,
S_RSRQ STRING,
LTESCSINRUL STRING,
SDATE STRING,
CITY STRING,
obj_timeStamp STRING,
RESERVED1 STRING,
RESERVED2 STRING,
callID STRING,
iMSI STRING,
mro_error STRING,
findncell_v STRING,
sum_v STRING,
N1_PCI STRING,
N1_EARFCN STRING,
N2_PCI STRING,
N2_EARFCN STRING,
N3_PCI STRING,
N3_EARFCN STRING,
N4_PCI STRING,
N4_EARFCN STRING,
N5_PCI STRING,
N5_EARFCN STRING,
N6_PCI STRING,
N6_EARFCN STRING,
N7_PCI STRING,
N7_EARFCN STRING,
SCELL_PCI STRING,
SCELL_EARFCN STRING,
CT_MAXRSRP STRING,
CT_RSRQ STRING,
CT_PCI STRING,
CT_EARFCN STRING,
CM_MAXRSRP STRING,
CM_RSRQ STRING,
CM_PCI STRING,
CM_EARFCN STRING,
CU_MAXRSRP STRING,
CU_RSRQ STRING,
CU_PCI STRING,
CU_EARFCN STRING,
DL_SINR STRING,
sampleX_type STRING,
DL_RATE STRING,
DL_CQI STRING,
reserved3 STRING,
reserved4 STRING,
LONGITUDE STRING,
LATITUDE STRING,
planid STRING,
hight STRING,
err STRING,
confidence_degree STRING
)
PARTITIONED BY (ds STRING,cityid STRING) --分区标识(若需要分许,就加上PARTITIONED BY (ds STRING,cityid STRING);若不需要分区,就删除PARTITIONED BY (ds STRING,cityid STRING))
ROW FORMAT serde
'org.apache.hadoop.hive.serde2.OpenCSVSerde'
with SERDEPROPERTIES ("separatorChar"=",","quotechar"="\"");

-----------------------------------------------------------第二步:在141hive环境下运行数据load命令
--工参类数据的hive库都是 fastdo_lte,需要固定分析,就加上partition(ds='20170523',cityid='ZHENGZHOU'),若不需要就删除partition(ds='20170523',cityid='ZHENGZHOU')
hive> use hive库;
hive> load data local inpath '/data02/yyl/TDLTE_MRO_LOCATE_HOUR_20170523/*.csv' into table TDLTE_MRO_LOCATE_HOUR_20170523 partition(ds='20170523',cityid='ZHENGZHOU');

alter table TDLTE_MRO_LOCATE_HOUR_20200202 add partition(cityname="JIYUAN",ds="20190322") location '/do/lte/fast/20190322/';

HIVE数据下载

--step1 将mrxdr_xy这张指纹表下载到141服务器的目录下 Hive环境下操作该命令
>hive
insert overwrite local directory '/data08/yyl/' ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' select * from test.RPT_CELL_DISTANCE_2;

--step2 删除目录下的.crc文件-
[root@root@hn-hdp-01 ~]# cd /data08/yyl/ --进入该目录下
[root@root@hn-hdp-01 yyl]# rm -f .*.crc --清空该目录下的.crc文件

--step3 合并文件,文件格式一般是6为数值夹扩展数字

[root@root@hn-hdp-01 yyl]#cat ./00* > aaa.csv --首先命名一个临时表名
[root@root@hn-hdp-01 yyl]#iconv -f UTF-8 -t GBK aaa.csv -o RPT_CELL_DISTANCE_2.csv --将aaa.csv
转换编码方式,并修改为真实表名。

--step4 将生成的.csv文件,通过ftp下载到57服务器的相应目录下

hive上传下载数据的更多相关文章

  1. 使用cmd命令行方式登录ftp上传下载数据

    部分用户在使用ftp工具登录空间上传下载过程中经常会遇到各种问题,如主动模式,被动模式,以及其他导致无法登陆ftp .上传数据.下载数据的问题,这时候不妨使用一下命令行方式.命令行下可以避免很多由于f ...

  2. 详解Amazon S3上传/下载数据

    AWS简单储存服务(Amazon S3)是非常坚牢的存储服务,拥有99.999999999%的耐久性(记住11个9的耐久性). 使用CloudBerry Explorer,从Amazon S3下载数据 ...

  3. SpringMVC——返回JSON数据&&文件上传下载

    --------------------------------------------返回JSON数据------------------------------------------------ ...

  4. 如何使用Tunnel SDK上传/下载MaxCompute复杂类型数据

    基于Tunnel SDK如何上传复杂类型数据到MaxCompute?首先介绍一下MaxCompute复杂数据类型: 复杂数据类型 MaxCompute采用基于ODPS2.0的SQL引擎,丰富了对复杂数 ...

  5. Struts的文件上传下载

    Struts的文件上传下载 1.文件上传 Struts2的文件上传也是使用fileUpload的组件,这个组默认是集合在框架里面的.且是使用拦截器:<interceptor name=" ...

  6. Android okHttp网络请求之文件上传下载

    前言: 前面介绍了基于okHttp的get.post基本使用(http://www.cnblogs.com/whoislcj/p/5526431.html),今天来实现一下基于okHttp的文件上传. ...

  7. 用Canvas+Javascript FileAPI 实现一个跨平台的图片剪切、滤镜处理、上传下载工具

    直接上代码,其中上传功能需要自己配置允许跨域的文件服务器地址~ 或者将html文件贴到您的站点下同源上传也OK. 支持: 不同尺寸图片获取. 原图缩小放大. 原图移动. 选择框大小改变. 下载选中的区 ...

  8. Javaweb学习笔记——上传下载文件

    一.前言 在Javaweb中,上传下载是经常用到的功能,对于文件上传,浏览器在上传的过程中是以流的过程将文件传给服务器,一般都是使用commons-fileupload这个包实现上传功能,因为comm ...

  9. servlet上传下载(任何格式的都可以)

    jar不能低于此版本,JDK1.6以上,否则户报错 <dependency> <groupId>commons-fileupload</groupId> <a ...

随机推荐

  1. pinyin.js

    export default { a: "\u554a\u963f\u9515", ai: "\u57c3\u6328\u54ce\u5509\u54c0\u7691\u ...

  2. mysql下载和安装

    官网下载地址:https://dev.mysql.com/downloads/mysql/ 安装: 1.将下载文件解压到指定文件目录 2.再mysql目录下新建my.ini文件 [mysqld] # ...

  3. C 语言 计算

    note1: 不要把表达式写的太复杂,不容易阅读和理解,容易造成读程序的误解,所以要避免写出复杂的表达式. note2:程序是按步执行的,程序表达的是顺序执行的动作,而不是关系.

  4. 关于No qualifying bean of type [XXX.XXX] found for dependency 的一次记录

    异常开始于spring+springmvc+mybatis 注解配置,启动tomcat服务器出现No qualifying bean of type [com.***.service] found f ...

  5. DNS的功能-域名空间、域名注册和域名解析

    DNS的主要功能包括以下三个: 域名空间:定义一个包括所有可能出现的主机名字的域名空间. 域名注册:保证每台主机域名的唯一性. 域名解析:提供一种有效的域名与IP地址转换机制. DNS域名空间 (1) ...

  6. python使用xlrd, xlwt读取excel文件和 写入excel文件

    python 3.6 首先在cmd下执行安装指令 xlre和xlwt : pip  install  xlre    pip install  xlwt #-*- coding: utf8 -*-im ...

  7. 遍历删除查临时表相关session再操作表

    示例如下 删除 inf_getuserinfoforywh_temp1 (前提,相关用到inf_getuserinfoforywh_temp1的应用必须先停了) create or replace p ...

  8. java8 for ,forEach ,lambda forEach , strean forEach , parller stream forEach, Iterator性能对比

    java8 for ,forEach ,Iterator,lambda forEach ,lambda  strean forEach , lambda parller stream forEach性 ...

  9. 自定义 serializeJSON() 函数

    说明:jQuery框架提供了serialize()方法, 能够将DOM元素内容序列化为json格式字符串,用于ajax请求.通过使用serialize()方法,可以提交本页面的所有域. 但是此方法具有 ...

  10. zabbix添加自定义监控项目

    在zabbix里添加一个自定义监控项目,简单做个笔记,怕忘了 首先需要定义 zabbix_agentd.conf  中的 UnsafeUserParameters 修改为 UnsafeUserPara ...