• 使用 sqoop 将 hive 数据导出到 mysql (export)


    使用sqoop将hive中的数据传到mysql中

    1.新建hive表

    hive> create external table sqoop_test(id int,name string,age int)
    > ROW FORMAT DELIMITED
    > FIELDS TERMINATED BY ','
    > STORED AS TEXTFILE
    > location '/user/hive/external/sqoop_test';
    OK
    Time taken: 0.145 seconds

    2.给hive表添加数据

    数据如下
    1,fz,13
    2,test,13
    3,dx,18

    3.将文件上传到hdfs对应目录下

    hadoop fs -put sqoop_test.txt /user/hive/external/sqoop_test/
    EFdeMacBook-Pro:testfile FengZhen$ hadoop fs -ls /user/hive/external/sqoop_test/
    17/09/13 10:22:33 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
    Found 1 items
    -rw-r--r-- 1 FengZhen supergroup 26 2017-09-13 10:21 /user/hive/external/sqoop_test/sqoop_test.txt

    上传成功
    进入hive 命令行可查看到数据

    hive> select * from sqoop_test;
    OK
    1    fz    13
    2    test    13
    3    dx    18
    Time taken: 0.089 seconds, Fetched: 3 row(s)

    4.在mysql新建表,表结构和hive中的相同

    CREATE TABLE `sqoop_test` (
    `id` int(11) DEFAULT NULL,
    `name` varchar(255) DEFAULT NULL,
    `age` int(11) DEFAULT NULL
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1

    5.使用sqoop传输数据

    sqoop export 
    --connect jdbc:mysql://localhost:3306/sqooptest --username root --password 123qwe --table sqoop_test
    --export-dir /user/hive/external/sqoop_test --input-fields-terminated-by ,
    EFdeMacBook-Pro:bin FengZhen$ sqoop export --connect jdbc:mysql://localhost:3306/sqooptest --username root --password 123qwe --table sqoop_test --export-dir /user/hive/external/sqoop_test --input-fields-terminated-by ,
    Warning: /Users/FengZhen/Desktop/Hadoop/sqoop-1.4.6.bin__hadoop-2.0.4-alpha/../hcatalog does not exist! HCatalog jobs will fail.
    Please set $HCAT_HOME to the root of your HCatalog installation.
    Warning: /Users/FengZhen/Desktop/Hadoop/sqoop-1.4.6.bin__hadoop-2.0.4-alpha/../accumulo does not exist! Accumulo imports will fail.
    Please set $ACCUMULO_HOME to the root of your Accumulo installation.
    SLF4J: Class path contains multiple SLF4J bindings.
    SLF4J: Found binding in [jar:file:/Users/FengZhen/Desktop/Hadoop/hadoop-2.8.0/share/hadoop/common/lib/slf4j-log4j12-1.7.10.jar!/org/slf4j/impl/StaticLoggerBinder.class]
    SLF4J: Found binding in [jar:file:/Users/FengZhen/Desktop/Hadoop/hbase-1.3.0/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
    SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
    SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
    17/09/13 10:28:01 INFO sqoop.Sqoop: Running Sqoop version: 1.4.6
    17/09/13 10:28:01 WARN tool.BaseSqoopTool: Setting your password on the command-line is insecure. Consider using -P instead.
    17/09/13 10:28:01 INFO manager.MySQLManager: Preparing to use a MySQL streaming resultset.
    17/09/13 10:28:01 INFO tool.CodeGenTool: Beginning code generation
    17/09/13 10:28:02 INFO manager.SqlManager: Executing SQL statement: SELECT t.* FROM `sqoop_test` AS t LIMIT 1
    17/09/13 10:28:02 INFO manager.SqlManager: Executing SQL statement: SELECT t.* FROM `sqoop_test` AS t LIMIT 1
    17/09/13 10:28:02 INFO orm.CompilationManager: HADOOP_MAPRED_HOME is /Users/FengZhen/Desktop/Hadoop/hadoop-2.8.0
    17/09/13 10:28:04 INFO orm.CompilationManager: Writing jar file: /tmp/sqoop-FengZhen/compile/7a078053fb0424d718e08c56fc9bab27/sqoop_test.jar
    17/09/13 10:28:04 INFO mapreduce.ExportJobBase: Beginning export of sqoop_test
    17/09/13 10:28:04 INFO Configuration.deprecation: mapred.job.tracker is deprecated. Instead, use mapreduce.jobtracker.address
    17/09/13 10:28:04 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
    17/09/13 10:28:04 INFO Configuration.deprecation: mapred.jar is deprecated. Instead, use mapreduce.job.jar
    17/09/13 10:28:05 INFO Configuration.deprecation: mapred.reduce.tasks.speculative.execution is deprecated. Instead, use mapreduce.reduce.speculative
    17/09/13 10:28:05 INFO Configuration.deprecation: mapred.map.tasks.speculative.execution is deprecated. Instead, use mapreduce.map.speculative
    17/09/13 10:28:05 INFO Configuration.deprecation: mapred.map.tasks is deprecated. Instead, use mapreduce.job.maps
    17/09/13 10:28:06 INFO client.RMProxy: Connecting to ResourceManager at localhost/127.0.0.1:8032
    17/09/13 10:28:07 INFO input.FileInputFormat: Total input files to process : 1
    17/09/13 10:28:07 INFO input.FileInputFormat: Total input files to process : 1
    17/09/13 10:28:07 INFO mapreduce.JobSubmitter: number of splits:4
    17/09/13 10:28:07 INFO Configuration.deprecation: mapred.map.tasks.speculative.execution is deprecated. Instead, use mapreduce.map.speculative
    17/09/13 10:28:07 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1505268150495_0004
    17/09/13 10:28:08 INFO impl.YarnClientImpl: Submitted application application_1505268150495_0004
    17/09/13 10:28:08 INFO mapreduce.Job: The url to track the job: http://192.168.1.64:8088/proxy/application_1505268150495_0004/
    17/09/13 10:28:08 INFO mapreduce.Job: Running job: job_1505268150495_0004
    17/09/13 10:28:18 INFO mapreduce.Job: Job job_1505268150495_0004 running in uber mode : false
    17/09/13 10:28:18 INFO mapreduce.Job: map 0% reduce 0%
    17/09/13 10:28:32 INFO mapreduce.Job: map 100% reduce 0%
    17/09/13 10:28:32 INFO mapreduce.Job: Job job_1505268150495_0004 completed successfully
    17/09/13 10:28:32 INFO mapreduce.Job: Counters: 30
    File System Counters
    FILE: Number of bytes read=0
    FILE: Number of bytes written=626576
    FILE: Number of read operations=0
    FILE: Number of large read operations=0
    FILE: Number of write operations=0
    HDFS: Number of bytes read=758
    HDFS: Number of bytes written=0
    HDFS: Number of read operations=19
    HDFS: Number of large read operations=0
    HDFS: Number of write operations=0
    Job Counters 
    Launched map tasks=4
    Data-local map tasks=4
    Total time spent by all maps in occupied slots (ms)=45180
    Total time spent by all reduces in occupied slots (ms)=0
    Total time spent by all map tasks (ms)=45180
    Total vcore-milliseconds taken by all map tasks=45180
    Total megabyte-milliseconds taken by all map tasks=46264320
    Map-Reduce Framework
    Map input records=3
    Map output records=3
    Input split bytes=671
    Spilled Records=0
    Failed Shuffles=0
    Merged Map outputs=0
    GC time elapsed (ms)=266
    CPU time spent (ms)=0
    Physical memory (bytes) snapshot=0
    Virtual memory (bytes) snapshot=0
    Total committed heap usage (bytes)=599785472
    File Input Format Counters 
    Bytes Read=0
    File Output Format Counters 
    Bytes Written=0
    17/09/13 10:28:32 INFO mapreduce.ExportJobBase: Transferred 758 bytes in 26.9573 seconds (28.1185 bytes/sec)
    17/09/13 10:28:32 INFO mapreduce.ExportJobBase: Exported 3 records.

    传输完成,mysql已经有数据了。

     使用sqoop将mysql数据导入到hdfs

  • 相关阅读:
    第十周学习进度
    第九周学习进度
    冲刺阶段站立会议每日任务10
    冲刺阶段站立会议每日任务9
    冲刺阶段站立会议每日任务8
    冲刺阶段站立会议每日任务7
    第八周学习进度
    对输入法的评价
    冲刺阶段站立会议每日任务6
    冲刺阶段站立会议每日任务5
  • 原文地址:https://www.cnblogs.com/EnzoDin/p/7513730.html
Copyright © 2020-2023  润新知