sqoop采集mysql to HDFS样例shell脚本

Sqoop导入mysql数据到HDFS Sqoop导入mysql数据到HDFS 打算把mysql中爬虫爬到的数据导入到HDFS中供后续学习kylin以及研究使用,以前导数据经常会自己写一段java脚本去导入,这次打算用sqoop试一试效果 首先看了下mysql的数据量,不到900万条数据,不多不少 从官网下载好sqoop进行安装 http://sqoop.apache.org/docs/1.99.7/admin/Inst... 阅读详情
#! /bin/bash

sqoop=/opt/module/sqoop/bin/sqoop
do_date=`date -d '-1 day' +%F`

if [[ -n "$2" ]]; then
    do_date=$2
fi

import_data(){
$sqoop import \
--connect jdbc:mysql://hadoop102:3306/gmall \
--username root \
--password 000000 \
--target-dir /origin_data/gmall/db/$1/$do_date \
--delete-target-dir \
--query "$2 and  \$CONDITIONS" \
--num-mappers 1 \
--fields-terminated-by '\t' \
--compress \
--compression-codec lzop \
--null-string '\\N' \
--null-non-string '\\N'

hadoop jar /opt/module/hadoop-3.1.3/share/hadoop/common/hadoop-lzo-0.4.20.jar com.hadoop.compression.lzo.DistributedLzoIndexer /origin_data/gmall/db/$1/$do_date
}

import_order_info(){
  import_data order_info "select
                            id, 
                            final_total_amount, 
                            order_status, 
                            user_id, 
                            out_trade_no, 
                            create_time, 
                            operate_time,
                            province_id,
                            benefit_reduce_amount,
                            original_total_amount,
                            feight_fee      
                        from order_info
                        where (date_format(create_time,'%Y-%m-%d')='$do_date' 
                        or date_format(operate_time,'%Y-%m-%d')='$do_date')"
}

import_coupon_use(){
  import_data coupon_use "select
                          id,
                          coupon_id,
                          user_id,
                          order_id,
                          coupon_status,
                          get_time,
                          using_time,
                          used_time
                        from coupon_use
                        where (date_format(get_time,'%Y-%m-%d')='$do_date'
                        or date_format(using_time,'%Y-%m-%d')='$do_date'
                        or date_format(used_time,'%Y-%m-%d')='$do_date')"
}

import_order_status_log(){
  import_data order_status_log "select
                                  id,
                                  order_id,
                                  order_status,
                                  operate_time
                                from order_status_log
                                where date_format(operate_time,'%Y-%m-%d')='$do_date'"
}

import_activity_order(){
  import_data activity_order "select
                                id,
                                activity_id,
                                order_id,
                                create_time
                              from activity_order
                              where date_format(create_time,'%Y-%m-%d')='$do_date'"
}

import_user_info(){
  import_data "user_info" "select 
                            id,
                            name,
                            birthday,
                            gender,
                            email,
                            user_level, 
                            create_time,
                            operate_time
                          from user_info 
                          where (DATE_FORMAT(create_time,'%Y-%m-%d')='$do_date' 
                          or DATE_FORMAT(operate_time,'%Y-%m-%d')='$do_date')"
}

import_order_detail(){
  import_data order_detail "select 
                              od.id,
                              order_id, 
                              user_id, 
                              sku_id,
                              sku_name,
                              order_price,
                              sku_num, 
                              od.create_time  
                            from order_detail od
                            join order_info oi
                            on od.order_id=oi.id
                            where DATE_FORMAT(od.create_time,'%Y-%m-%d')='$do_date'"
}

import_payment_info(){
  import_data "payment_info"  "select 
                                id,  
                                out_trade_no, 
                                order_id, 
                                user_id, 
                                alipay_trade_no, 
                                total_amount,  
                                subject, 
                                payment_type, 
                                payment_time 
                              from payment_info 
                              where DATE_FORMAT(payment_time,'%Y-%m-%d')='$do_date'"
}

import_comment_info(){
  import_data comment_info "select
                              id,
                              user_id,
                              sku_id,
                              spu_id,
                              order_id,
                              appraise,
                              comment_txt,
                              create_time
                            from comment_info
                            where date_format(create_time,'%Y-%m-%d')='$do_date'"
}

import_order_refund_info(){
  import_data order_refund_info "select
                                id,
                                user_id,
                                order_id,
                                sku_id,
                                refund_type,
                                refund_num,
                                refund_amount,
                                refund_reason_type,
                                create_time
                              from order_refund_info
                              where date_format(create_time,'%Y-%m-%d')='$do_date'"
}

import_sku_info(){
  import_data sku_info "select 
                          id,
                          spu_id,
                          price,
                          sku_name,
                          sku_desc,
                          weight,
                          tm_id,
                          category3_id,
                          create_time
                        from sku_info where 1=1"
}

import_base_category1(){
  import_data "base_category1" "select 
                                  id,
                                  name 
                                from base_category1 where 1=1"
}

import_base_category2(){
  import_data "base_category2" "select
                                  id,
                                  name,
                                  category1_id 
                                from base_category2 where 1=1"
}

import_base_category3(){
  import_data "base_category3" "select
                                  id,
                                  name,
                                  category2_id
                                from base_category3 where 1=1"
}

import_base_province(){
  import_data base_province "select
                              id,
                              name,
                              region_id,
                              area_code,
                              iso_code
                            from base_province
                            where 1=1"
}

import_base_region(){
  import_data base_region "select
                              id,
                              region_name
                            from base_region
                            where 1=1"
}

import_base_trademark(){
  import_data base_trademark "select
                                tm_id,
                                tm_name
                              from base_trademark
                              where 1=1"
}

import_spu_info(){
  import_data spu_info "select
                            id,
                            spu_name,
                            category3_id,
                            tm_id
                          from spu_info
                          where 1=1"
}

import_favor_info(){
  import_data favor_info "select
                          id,
                          user_id,
                          sku_id,
                          spu_id,
                          is_cancel,
                          create_time,
                          cancel_time
                        from favor_info
                        where 1=1"
}

import_cart_info(){
  import_data cart_info "select
                        id,
                        user_id,
                        sku_id,
                        cart_price,
                        sku_num,
                        sku_name,
                        create_time,
                        operate_time,
                        is_ordered,
                        order_time
                      from cart_info
                      where 1=1"
}

import_coupon_info(){
  import_data coupon_info "select
                          id,
                          coupon_name,
                          coupon_type,
                          condition_amount,
                          condition_num,
                          activity_id,
                          benefit_amount,
                          benefit_discount,
                          create_time,
                          range_type,
                          spu_id,
                          tm_id,
                          category3_id,
                          limit_num,
                          operate_time,
                          expire_time
                        from coupon_info
                        where 1=1"
}

import_activity_info(){
  import_data activity_info "select
                              id,
                              activity_name,
                              activity_type,
                              start_time,
                              end_time,
                              create_time
                            from activity_info
                            where 1=1"
}

import_activity_rule(){
    import_data activity_rule "select
                                    id,
                                    activity_id,
                                    condition_amount,
                                    condition_num,
                                    benefit_amount,
                                    benefit_discount,
                                    benefit_level
                                from activity_rule
                                where 1=1"
}

import_base_dic(){
    import_data base_dic "select
                            dic_code,
                            dic_name,
                            parent_code,
                            create_time,
                            operate_time
                          from base_dic
                          where 1=1" 
}

case $1 in
  "order_info")
     import_order_info
;;
  "base_category1")
     import_base_category1
;;
  "base_category2")
     import_base_category2
;;
  "base_category3")
     import_base_category3
;;
  "order_detail")
     import_order_detail
;;
  "sku_info")
     import_sku_info
;;
  "user_info")
     import_user_info
;;
  "payment_info")
     import_payment_info
;;
  "base_province")
     import_base_province
;;
  "base_region")
     import_base_region
;;
  "base_trademark")
     import_base_trademark
;;
  "activity_info")
      import_activity_info
;;
  "activity_order")
      import_activity_order
;;
  "cart_info")
      import_cart_info
;;
  "comment_info")
      import_comment_info
;;
  "coupon_info")
      import_coupon_info
;;
  "coupon_use")
      import_coupon_use
;;
  "favor_info")
      import_favor_info
;;
  "order_refund_info")
      import_order_refund_info
;;
  "order_status_log")
      import_order_status_log
;;
  "spu_info")
      import_spu_info
;;
  "activity_rule")
      import_activity_rule
;;
  "base_dic")
      import_base_dic
;;

"first")
   import_base_category1
   import_base_category2
   import_base_category3
   import_order_info
   import_order_detail
   import_sku_info
   import_user_info
   import_payment_info
   import_base_province
   import_base_region
   import_base_trademark
   import_activity_info
   import_activity_order
   import_cart_info
   import_comment_info
   import_coupon_use
   import_coupon_info
   import_favor_info
   import_order_refund_info
   import_order_status_log
   import_spu_info
   import_activity_rule
   import_base_dic
;;
"all")
   import_base_category1
   import_base_category2
   import_base_category3
   import_order_info
   import_order_detail
   import_sku_info
   import_user_info
   import_payment_info
   import_base_trademark
   import_activity_info
   import_activity_order
   import_cart_info
   import_comment_info
   import_coupon_use
   import_coupon_info
   import_favor_info
   import_order_refund_info
   import_order_status_log
   import_spu_info
   import_activity_rule
   import_base_dic
;;
esac

 

十八、通过Sqoop2-Shell将HDFS中的数据导出到MySQL 一、Sqoop2提供了能够使用REST接口与Sqoop 2服务器通信的命令行shell。客户端可以在两种模式下运行——交互模式和批处理模式。批处理模式目前不支持create、update和clone命令。交互模式支持所有可用的命令。 二、Sqoop2新增了Sqoop中没有的链接器,我们主要是通过链接器的方式来实现数据的create、update和clone,简单说明一下链接器的使用过程并通过一个实... 阅读详情

相关推荐

记一次 sqoop2 shell 转移mysql 数据到hdfs 爬坑之路(步骤详细!!!)

文章目录出现问题汇总具体过程流水账进入sqoop2 shell环境:开始创建mysql 导入的link:创建导出到hdfs 的link:创建数据从mysql 转移到hdfs 的job :运行job & 排错过程开始运行job :第一个错误:[0003]第二个错误:[0016]第三个错误:[0001]第四个错误:[0007] 出现问题汇总 GENERIC_JDBC_CONNECTOR_00...

3385

2020-09-25 mysql 业务数据铜鼓sqoop导入hdfs

#! /bin/bash sqoop=/opt/module/sqoop/bin/sqoop do_date=`date -d '-1 day' +%F` if [[ -n "$2" ]]; then do_date=$2 fi import_data(){ $sqoop import --connect jdbc:mysql://hadoop102:3306/gmall --username root --password 123456 --target-dir /origin_data

LIdahai_daylife的博客 338

三维(点云)语义分割概述以及方法总结

语义分割 语义分割需要两部分 classification: 需要全局信息 segmentation:更加依赖全局信息和局部信息 一般的网络结构是: 提特征-特征映射-特征图压缩(降维)-全连接-分类,其实就是encoder-decoder的过程, 比如在二维的的pspnet,fcn等等 0. 三维表示的数据结构 Point cloud 无序性 点云实际上是无序的,比如有8个点云,你放到...

renhaofan的博客 3万+

shell实现日期加减

shell实现日期加减

hello_heheha的博客 5633

医学影像分割入门:为什么U-Net至今仍是肝脏CT肿瘤分割的‘首选’?

本文探讨了U-Net在肝脏CT肿瘤分割中的持久优势,分析了其轻量化设计、对称架构和跳跃连接如何完美适配医学影像的小样本、高精度需求。通过对比实验和实战建议,揭示了U-Net在肝脏肿瘤分割任务中超越新模型的根本原因,并提供了PyTorch实现和部署技巧。

weixin_38166931的博客 518

数字太大放不下,高精度来补,如何放下超大数字,以及进制转换,高精度真的超好玩。 洛谷1009,1015

想必大家都遇到过数字大小超过int类型范围的情况,是不是碰到int放不下的数字自然就会想到,long int,long long int,甚至unsigned long long int呢。但是有一些出题者就很可恶,偏要出一些连unsigned long long int也放不下的算法题,应对这些问题时,我们是否有相应的应对方法呢?答案是:当然有,高精度就是一种应对这种问题时很好的解决办法。相信你在看完这篇文章后能对高精度有着更深更好的理解。我会循序渐进的来讲,这样大家也更容易听懂。

2303_79329831的博客 1230

shell 脚本中调用脚本

shell脚本中调用脚本,怎么调用?

weixin_52953102的博客 2241

PT静态时序分析实战:从基础命令到高级报告解析

本文详细介绍了PT(PrimeTime)静态时序分析(STA)的实战技巧,从基础命令如pt_shell和report_timing的使用,到高级报告解析与问题排查。通过丰富的实例和脚本示例,帮助工程师快速掌握时序分析的核心技能,提升芯片设计验证效率。

weixin_29289821的博客 955

数据采集工具Sqoop

Sqoop是一种用于在Hadoop和结构化数据存储(如关系数据库)之间高效传输批量数据的工具。Sqoop官网提供了Sqoop1和Sqoop2,Sqoop1只是一个普通的应用程序,通过给定参数就可以运行该程序。Sqoop2拥有服务端的应用程序,简单的功能变得复杂化,但是更加统一化、规范化。

浅谈 1562

MINI PCIE接口设计要点:

3.3Vaux(5pins):3.3V电源。PERST#信号通过外接复位电路,可实现模块复位。模块可以通过硬件方式或软件方式关闭射频通信(不包括 GNSS)。LED_WWAN#:(O)漏极开漏,低有效。:(I)低激活系统禁止射频信号(飞行模式),因此需加上拉。UIM_PWR (1 pin):(O)UIM的电源输出。SMB_DATA:SMBus2.0数据信号线。UIM_VPP:(O)A类设备的可变电源电压。SMB_CLK:SMBus2.0时钟信号线。UIM_RESET:(O)UIM的复位信号。

qq_40010777的博客 8245

模拟IC设计避坑:手把手教你用Cadence仿真恒定跨导轨到轨运放(附完整工艺库文件)

本文详细解析了使用Cadence仿真恒定跨导轨到轨运放的全流程,涵盖电路原理、工艺库配置、尺寸设计及仿真分析。通过1:3电流镜补偿技术实现跨导稳定,提供CSMC 0.25um工艺下的实战案例,帮助工程师规避设计陷阱,提升模拟IC设计效率。

weixin_30952535的博客 497

sqoop导入脚本——mysql_to_hdfs

#!/bin/bash #操作命令格式 #sh mysql_to_hdfs.sh first 开始日期 结束日期(默认开始时间为前一天,结束时间为当天) sqoop=/usr/hdp/3.1.4.0-315/sqoop/bin/sqoop db=SAJT_DZFP_PT do_date=`date -d '-1 day' +%F` endDay=`date +%F` if [[ -n "$2" ]]; then do_date=$2 fi if [[ -n "$3" ]]; then

LZX的博客 539

安全运营面试总结

答案可以在我的博客中查找 1.自我介绍 2.TCP/IP七层模式 3.端口号(常见协议 数据库) 4.Owasp top 10 5.渗透测试过程 6.漏扫工具 7.中间件漏洞 8.应急响应 9.项目 10.SQL注入类型 11.TCP 三次握手 四次挥手 12.你有什么要问我的 1.自我介绍 2.项目介绍 3.宽字节注入的原理 4.渗透流程 5....

qq_51577576的博客 4413

Sqoop分批导入Mysql上亿条数据的表到HDFS

因数据量过大,运行sqoop跑不动或者卡内存,于是通过写脚本分批导入到HDFS,然后再加载到Hive表中。 shell脚本如下: #!/bin/bash source /etc/profile host=127.0.0.1 for((i=1; i<=100; i++)) do start=$(((${i} - 1) * 100000 + 1)) end=$(...

zhangbinu 5311

2023华为od机试C卷【宽度最小的子矩阵】Python 实现

给定一个矩阵,包含N*M个整数,和一个包含K个整数的数组现在要求在这个矩阵中找一个宽度最小的子矩阵,要求子矩阵包含数组中所有的整数。

MISAYAONE的博客 2187

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

使用sqoop从MySQL导入数据到hdfs

使用sqoop从MySQL导入数据到hdfs 1、代码解析: bin/sqoop import --connect jdbc:mysql://hadoop102:3306/ \【此处为换行符,必须是空格加\】 book【数据库名】 --username root --password 123 –table orders【表名】 –columns id,order_id,order_time \【所需的列名】 –where “order_id >= 1 and order_id<=20” \【所

Chaim998的博客 1620

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

mysql分库分表数据导入hive之sqoop-shell脚本

sqoop分库分表shell导入脚本 之前的生产集群使用到了mysql的分库分表,所以抽取同一张表的数据就需要从不同的库与表中进行抽取了!话不多说线上图 分库: 分表: 一、sqoop导入脚本 #!/bin/bash #coding=UTF-8 sqoop=/data/cloudera/parcels/CDH-5.14.4-1.cdh5.14.4.p0.3/bin/sqoop $sqoop import \ -Dhadoop.security.credential.provider.path=jce

叁木大数据 2842

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

sqoop-shell java_用java代碼調用shell腳本執行sqoop將hive表中數據導出到mysql

1:創建shell腳本1 touch sqoop_options.sh2 chmod 777 sqoop_options.sh 編輯文件 特地將執行map的個數設置為變量 測試 可以java代碼傳參數 同時也驗證sqoop的 options 屬性支持這種寫法1 #!/bin/bash2 /opt/cdh-5.3.6/sqoop-1.4.5-cdh5.3.6/bin/sqoop --option...

weixin_39629269的博客 181

shell脚本-sqoop->HDFS

场景:将mysql库中的数据传输到HDFS中,并且按照日期作为文件名来存放数据,方便数据的读取与处理 如图所示:以日期来命名文件夹,存储当天的数据 首先介绍一下shell脚本中的三个引号的适用与区别 单引号(‘’)–所见即所得 var1=‘helloworld’ var2=’${var1}helloworld’ echo $var2 输出结果:${var1}helloworld 双引号...

wzz87的博客 638

hue上workflow之shell-sqoop脚本配置实录

workflow之shell-sqoop脚本实录 前面讲解了sqoop的密码明文问题解决与sqoop导入分库分表mysql数据问题解决,那么这里就详细介绍下在hue上配置shell-sqoop脚本时所遇到的问题!这里的shell脚本会以上篇的脚本为例! 一、配置hue的workflow 二、所遇问题 2.1 不能加载mysql驱动 报错如下: ERROR sqoop.Sqoop: Got exception running Sqoop: java.lang.RuntimeException: Could

叁木大数据 1354

Linux下Shell编程实现基于Hadoop的ETL(Sqoop封装篇)

conf/sqoop.xml jdbc:mysql://master:3306/db_cda root 123 --> 1 '\\\\N' '\\\\N' true true true jdbc:mysql://master:330

Lucky的专栏 2652

sqoop2 mysql to hdfs_Sqoop2同步mysql至HDFS

开启客户端sqoop2-shell配置sqoop server参数sqoop:000> set server --host luhuijundeMacBook-Pro.local --port 12000 --webappsqoop #luhuijundeMacBook-Pro.local 一般为HDFS主机名–webapp官方文档说是指定的sqoop jetty服务器名称,大概是一个自己能...

weixin_34916118的博客 218

Sqoop从MySQL导入数据到Hive的Shell脚本

因工作需求,要将mysql的数据导入到Hive中通过Spark SQL进行分析,经过一翻周折,完成了这个自动化脚本,算是实现需求的第一步,也算是在Shell编程这条路上算是迈出了第一步。 mysql中每天一张表,hive中一个表,按时间分区,如dt=180820. 以下是导数据的Shell脚本: #!/bin/bash source /etc/profile host=127.0.0.1 ...

zhangbinu 2948

数据仓库 — 08_mysql和sqoop的安装与配置(linux环境下mysql和sqoop的安装、业务数据生成jar包和配置文件、mysql_to_hdfs同步脚本)

文章目录1 MySQL安装1.1 安装包准备1.2 安装mysql服务器1.3 安装mysql客户端1.4 mysql中主机配置(user表)2 Sqoop的安装2.1 安装sqoop2.2 修改配置文件2.3 拷贝JDBC驱动2.4 测试Sqoop是否能连接数据库3 业务数据的生成4 同步策略4.1 全量同步策略4.2 增量同步数据4.3 新增及变化策略4.4 特殊策略5 mysql->sqoop->hdfs脚本编写5.1 项目经验 欢迎访问笔者个人技术博客:http://rukihuang.

文泽路小男孩的博客 741

使用python脚本生成datax-json脚本(一次性操作多张表),并使用datax将业务数据从mysql采集到hdfs

datax,python,shell,大数据,离线数仓,sqoop

weixin_45408791的博客 3488

Sqoop从HDFS导出Hive表到Mysql的shell脚本

因统计需求,要指将Spark SQL计算好的结果,从Hive导出到Mysql数据库,于是写了个批量导的脚本。 运行参数: 开始时间 结束时间 注意点: 1. 在shell中,sqoop语句的每一行末尾不能有多余的空格,否则执行时报错! 2. shell中的if条件判断,只能是数字和才能比较大小,需要将时间转成时间戳! 代码如下: #!/bin/bash source /etc/pr...

zhangbinu 1415
上一篇: flume初始化内存优化
下一篇: shell脚本采集ftp数据样例
AA赵师傅
博客等级 码龄9年 89粉丝 124原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值