04-用户画像+sqoop使用

news/2024/9/23 4:21:16/

优点

sqoop的作用是实现数据的导入和导出,主要是对数据库和数据仓库之间的操作

只要是支持jdbc连接的数据库都可以使用sqoop操作

添加Sqoop到环境变量中

export SQOOP_HOME=/export/server/sqoop
export PATH=$PATH:$SQOOP_HOME/bin:$SQOOP_HOME/sbin
source /etc/profile

在这里插入图片描述

启动数仓服务

./up01.sh start

sqoop_21">sqoop建表语句

create database itcast charset=utf8;
create table itcast.tb_user(id int,name varchar(20),age int,gender varchar(20)
);
insert into itcast.tb_user value(1,'张三',20,'男');

hive_33">hive数仓中的准备

create database itcast;

hive_38">hive表指令

  • create-hive-table 根据mysql表创建hive
  • –connect mysql连接信息 jdbc连接
  • –username mysql用户名
  • –password mysql密码
  • –table mysql表名
  • hive-table hive表名 需要指定库
  • –fields-terminated-by 字段分割符
/export/server/sqoop/bin/sqoop create-hive-table --connect  jdbc:mysql://192.168.88.166:3306/users --username root --password 123456 --table tbl_users --hive-table users.tbl_users --fields-terminated-by '\t'

sqoop_50">sqoop导入数据指令

  • mysql数据导入数仓
  • import 根据mysql表创建
  • –connect mysql连接信息
  • –username 用户名
  • –password 密码
  • –table mysql表名
  • hive-import 导入hive
  • hive-overwrite 覆盖导入
  • hive-table hive表名
  • –fields-terminated-by 字段分割符
  • –delete-target-dir 如果存在表目录则删除后在再重新创建
  • –direct 直接导入模式 提升导入速度
  • –m 指定Maptask数量并行导入数据
/export/server/sqoop/bin/sqoop import --connect  jdbc:mysql://192.168.88.166:3306/users --username root --password 123456 --table tbl_users --hive-import --hive-overwrite  --hive-table users.tbl_users --fields-terminated-by '\t'  --delete-target-dir  --direct  --m  1

sqoop_68">编写sqoop脚本

qoop脚本就是将sqoop指令写入shell文件 后缀是 .sh

在这里插入图片描述

在这里插入图片描述

建表脚本

/export/server/sqoop/bin/sqoop \
create-hive-table \
--connect jdbc:mysql://192.168.88.166:3306/users \
--username root \
--password 123456 \
--table tbl_users \
--hive-table users.tbl_users \
--fields-terminated-by '\t'

导入脚本

/export/server/sqoop/bin/sqoop \
import \
--connect  jdbc:mysql://192.168.88.166:3306/users \
--username root \
--password 123456 \
--table tbl_users \
--hive-import \
--hive-overwrite  \
--hive-table users.tbl_users \
--fields-terminated-by '\t'  \
--delete-target-dir  \
--direct  \
--m  1

在这里插入图片描述


http://www.ppmy.cn/news/1501871.html

相关文章

最新风车IM即时聊天源码及完整视频教程2024年7月版

堡塔面板 试验性Centos/Ubuntu/Debian安装命令 独立运行环境(py3.7) 可能存在少量兼容性问题 不断优化中 curl -sSO http://io.bt.sy/install/install_panel.sh && bash install_panel.sh 1.宝塔环境如下: Nginx 1.20 Tomcat 8 MySQL 8.0 R…

vue3在元素上绑定自定义事件弹出虚拟键盘

最近开发中遇到一个需求: 焊接机器人的屏幕上集成web前端网页, 但是没有接入键盘。这就需要web端开发一个虚拟键盘,在网上找个很多虚拟键盘没有特别适合,索性自己写个简单的 图片: 代码: (代码可能比较垃圾冗余,也没时间优化,凑合看吧) 第一步:创建键盘组件 为了方便使用…

力扣高频SQL 50题(基础版)第八题

文章目录 力扣高频SQL 50题(基础版)第八题1581. 进店却未进行过交易的顾客题目说明思路分析实现过程准备数据:实现方式:结果截图:总结: 力扣高频SQL 50题(基础版)第八题 1581. 进店…

IOS-05 Swift循环控制语句

在 Swift 编程语言中,控制语句用于决定程序的执行流程,使我们能够根据不同的条件和情况来控制代码的执行顺序。下面我们将详细介绍几种常见的控制语句 一、for 循环 let names ["zhangsan","lisi"] for name in names{print(name…

cpp学习记录03

结构体 定义:用户自定义符合数据类型,可以包含不同类型的不同成员。 //声明结构体 struct 结构体类型(自己起名) {成员1类型 成员1名称;。。。成员N类型 成员N名称;} 基本用法(类似class&…

应用层_计算机网络

文章目录 应用层HTTP用户与服务器的交互:cookieCookie、Cache、SessionWeb缓存HTTP/2 SMTPDNS:因特网的目录服务P2P文件分发BitTorrentCDN内容分发网 应用层 应用层协议定义了运行在不同端系统上的应用程序进程如何相互传递报文。应用层协议定义了以下内…

【LeetCode:2766. 重新放置石块 + 哈希表】

🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…

RPA软件-影刀使用

流程自动化 影刀将操作进行抽象,分为一下几个对象: 网页自动化 (1) 网页自动化应用场景:网页操作、数据抓取 (2) 网页操作:基础操作-指令操作,智能操作-关联元素&#…