Sqoop 常用命令

Sqoop 是用于在 Hadoop 和关系型数据库(如 MySQL、Oracle 等)之间高效传输数据的工具。以下是常用的 Sqoop 命令及示例:
 

CREATE TABLE employees (id INT AUTO_INCREMENT PRIMARY KEY, -- 自增主键,用于唯一标识每一行name VARCHAR(255) NOT NULL,        -- 名称,字符串类型,不允许为空gender ENUM('Male', 'Female', 'Other') NOT NULL, -- 性别,枚举类型,限制为三种值之一,不允许为空age INT NOT NULL,                  -- 年龄,整数类型,不允许为空income DECIMAL(10, 2) NOT NULL     -- 收入,定点小数类型,总长度10位,其中小数点后2位,不允许为空
);

INSERT INTO employees (name, gender, age, income) VALUES 
('张三', 'Male', 30, 5000.00),
('李四', 'Female', 25, 6000.50),
('王五', 'Other', 22, 4500.75);

 Sqoop 命令核心结构

sqoop [通用参数] <操作类型> [操作参数] 

常用操作类型

操作类型功能描述
import将数据从关系型数据库导入到 HDFS/Hive/HBase
export将 HDFS 数据导出到关系型数据库
list-databases列出数据库中的所有数据库名
list-tables列出指定数据库中的所有表名
eval直接执行 SQL 查询并显示结果

通用参数

参数说明
--connect <jdbc-url>JDBC 连接字符串(必填)
--username <user>数据库用户名
--password <pass>数据库密码(建议改用 -P 交互输入)
--driver <class>指定 JDBC 驱动类(如 Oracle 的 oracle.jdbc.OracleDriver
--verbose显示详细日志

 

 执行sql语句

sqoop eval \
--connect jdbc:mysql://localhost/mydatabase \
--username root \
--password 123456 \
--query "select * from employees"

 

 

生成 Hive 表结构 create-hive-table

关键参数说明

参数说明
--connect源数据库的 JDBC 连接地址(如 MySQL)
--table源数据库的表名(需复制的表结构)
--hive-table目标 Hive 表名(格式:数据库名.表名,默认在 default 库创建同名表)
--hive-overwrite若 Hive 表已存在,则覆盖表结构(默认跳过)
--map-column-hive手动指定字段类型映射(如 id=STRING,name=STRING

 

sqoop create-hive-table \
  --connect jdbc:mysql://源数据库地址:端口/数据库名 \
  --username 用户名 \
  --password 密码 \
  --table 源表名 \
  --hive-table hive数据库名.hive表名  # 可选,默认在 `default` 数据库创建同名表

导入前

mysql 表结构 

hive 表

导入后

 

数据导入(import)hdfs

sqoop import \
  --connect jdbc:mysql://host:port/db \
  --username user \
  --password pass \
  --table source_table \
  --target-dir /hdfs/path \
  [其他参数]

常用导入参数

参数说明
--table <table>源表名
--columns <col1,col2>指定导入列(默认导入所有列)
--where "<条件>"指定导入数据的过滤条件
--target-dir <path>HDFS 目标目录(默认:/user/<user>/<table>
--delete-target-dir若目标目录存在,先删除
--fields-terminated-by <char>字段分隔符(默认:,
--lines-terminated-by <char>行分隔符(默认:\n
--m <num> 或 --num-mappers <num>并行任务数(默认:4)
--split-by <column>指定并行切分列的字段(通常为数值或日期类型)

 

 

 

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/38953.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

连续型随机变量及其分布

连续型随机变量 数学公式可以看作一门精确描述事物的语言&#xff0c;比语言尤其是汉语的模糊性精确多了&#xff01;离散型数据的处理可以通过枚举和相加进行处理。而连续型数据则没有办法这样处理。我们必须要通过函数和取值区间还有微积分计算。 &#xff3b;定义1&#x…

PostgreSQL_数据使用与日数据分享

目录 前置&#xff1a; 1 使用 1.1 获取前复权因子 1.2 查询股票的纵向数据 1.3 查询股票的横向数据 2 日数据分享&#xff08;截止至&#xff1a;2025-03-21&#xff09; 总结 前置&#xff1a; 本博文是一个系列。在本人“数据库专栏”-》“PostgreSQL_”开头的博文。…

Rocky9.5基于sealos快速部署k8s集群

首先需要下载 Sealos 命令行工具&#xff0c;sealos 是一个简单的 Golang 二进制文件&#xff0c;可以安装在大多数 Linux 操作系统中。 以下是一些基本的安装要求&#xff1a; 每个集群节点应该有不同的主机名。主机名不要带下划线。 所有节点的时间需要同步。 需要在 K8s …

qt实现一个简单http服务器和客户端

一、功能简介 服务器&#xff1a; 登录功能、下载文件功能 客户端&#xff1a; 登录功能、下载文件功能、上传成绩功能 二、服务器代码 //HttpServer.h #ifndef HTTPSERVER_H #define HTTPSERVER_H#include <QMainWindow> #include <QTcpSocket> #include <QTc…

基于Python+Django的旅游管理系统

项目介绍 PythonDjango旅游管理系统 平台采用B/S结构&#xff0c;后端采用主流的Python语言进行开发&#xff0c;前端采用主流的Vue.js进行开发。 整个平台包括前台和后台两个部分。 - 前台功能包括&#xff1a;首页、景点管理、门票管理、旅游资讯、在线反馈、。 - 后台功能包…

用数组模拟循环队列

设计一种循环队列&#xff0c;线性数据结构&#xff0c;其操作表现为 FIFO(先进先出)原则且队尾被连接在队首之后形成一个循环&#xff0c;称作“环形缓冲器” 循环队列的好处是可以利用这个队列之前使用过的空间&#xff0c;但是他的空间大小是固定的 循环队列我们使用单链表…

maven为什么发生依赖冲突?怎么解决依赖冲突?

maven为什么发生依赖冲突&#xff1f;怎么解决依赖冲突&#xff1f; 我们在开发的时候&#xff0c;偶尔会遇到依赖冲突的时候&#xff0c;一般都是NoClassDefFoundError、ClassNotFoundException、NoSuchMethodError。打开搜索框又发现有这个类&#xff0c;明明就是引入进来了&…

从国家能源到浙江交通投资,全息技术在能源交通领域的创新应用

一、3D全息技术行业应用参数及设计制作要求 全息投影 全息投影技术通过激光器、全息片等设备&#xff0c;将物体的三维信息记录下来&#xff0c;并在特定条件下再现。应用参数包括投影距离、投影面积、投影亮度等。设计制作要求&#xff1a;高清晰度、高亮度、低噪音、稳定性好…

Adobe After Effects 操作

Adobe After Effects &#xff08;AE&#xff09;可以实现将多个元素进行合成&#xff0c;实现特殊效果。AE的项目文件是aep&#xff0c;可以将素材、层、效果等一切信息&#xff0c;保存在这个项目文件中。 AE的原理&#xff0c;和PS的原理非常类似。 操作界面 操作界面如…

Flutter使用自签证书打包ipa

在 Flutter 中使用自签证书打包 IPA 文件&#xff0c;可以通过以下步骤完成&#xff1a; 1. 准备自签证书 方式一 生成自签证书&#xff1a; 打开 钥匙串访问 应用。选择 证书助理 > 创建证书。按照提示填写证书信息&#xff0c;选择证书类型为 代码签名&#xff0c;并保存…

三.Go的第一个程序hello.go

新建hello.go,代码如下 package mainimport "fmt"func main() {fmt.Println("hello world") }编译hello.go 控制台终端为hello.go同级目录 执行 go build hello.go编译成功同级目录下生成 同名exe文件 也可以直接执行 go run hello.go解释如下 一 .…

WebLogic中间件常见漏洞

一、后台弱⼝令GetShell 1.环境搭建 cd vulhub-master/weblogic/weak_password docker-compose up -d 2.访问网站并登陆后台 /console/login/LoginForm.jsp 默认账号密码&#xff1a;weblogic/Oracle123 3.点击部署&#xff0c;点击安装&#xff…

【Unity3D】摄像机适配场景以及Canvas适配

目录 宽度不变策略 高度不变策略 宽度不变策略 开发分辨率 750*1334 (宽高比:0.56) 真机分辨率 1170*2532 (宽高比:0.46) 真机宽高比<开发宽高比&#xff0c;采用宽度不变策略 理由&#xff1a;小于代表真机高度比开发高度更大&#xff0c;因此不需要担心高度上…

Mysql笔记

目录 sql的DML 增加语句 删除语句和truncate 更新语句 replace语句 select查询语句 简单的查询 等值判断 不等判断 逻辑运算符 查询时的别名使用 常见的条件查询 分组 分组后筛选 结果排序 分页功能​​​​​​​ 分表 外键和多表关联 表与表之间的关联关系…

用Selenium+lxml库完成淄博链家网数据的爬取

一、淄博链家二手房网站地址 urlhttps://zb.lianjia.com/ershoufang/ 二、基本知识点总结 这个代码是一个使用 Selenium 和 lxml 库编写的网络爬虫&#xff0c;用于从链家网&#xff08;Lianjia&#xff09;的二手房列表页面中提取房屋信息。 代码结构 导入库&#xff1a; …

【MySQL笔记】数据类型

&#x1f525;个人主页&#x1f525;&#xff1a;孤寂大仙V &#x1f308;收录专栏&#x1f308;&#xff1a;MySQL &#x1f339;往期回顾&#x1f339;&#xff1a;【MySQL笔记】库操作与表操作 &#x1f516;流水不争&#xff0c;争的是滔滔不 一、数据类型分类二、tinyint类…

Java 记忆链表,LinkedList 的升级版

文章目录 记忆链表 MemoryLinkedList实战源代码 众所周知&#xff0c;ArrayList 和 LinkedList 是 Java 集合中两个基本的数据结构&#xff0c;对应数据结构理论中的数组和链表。但在这两个数据结构&#xff0c;开发者们通常使用 ArrayList&#xff0c;而不使用 LinkedList。JD…

【数据分享】2000—2024年我国省市县三级逐年归一化植被指数(NDVI)数据(年平均值/Shp/Excel格式)

之前我们分享过2000-2024年我国逐年的归一化植被指数&#xff08;NDVI&#xff09;栅格数据&#xff0c;该逐年数据是取的当年月归一化植被指数&#xff08;NDVI&#xff09;的年平均值。&#xff01;该数据来源于NASA定期发布的MOD13A3数据集&#xff01;很多小伙伴拿到数据后…

MySQL索引

目录 索引的引入 再次理解MySQL数据操作 索引 页内目录 页间目录 索引结构为什么要采用B树&#xff1f; 聚簇索引和非聚簇索引 聚簇索引 非聚簇索引 主键索引和非主键索引 索引相关操作 创建主键索引 创建唯一键索引 创建普通索引 查询索引 删除索引 索…

数据分析面试--京东

1.考察日期函数的应用 select Order_date, count(distinct user_id) as uv from (select user_id, Order_date, row_number() over(partition by user_id order by Order_date) as new_tagfrom ord where date_diff(current_date(), Order_date)<30 ) t where new_tag1 gro…