当前位置: 首页 > news >正文

一半招聘网站海报格式都怎么做爱设计ppt官网

一半招聘网站海报格式都怎么做,爱设计ppt官网,青岛公司网站建设公司排名,做网站建设怎么赚钱点击上方蓝色字体#xff0c;选择“设为星标”回复”资源“获取更多资源本文作者#xff1a;Sheep Sun本文链接#xff1a;https://www.cnblogs.com/yangxusun9/p/12558683.html大数据技术与架构点击右侧关注#xff0c;大数据开发领域最强公众号#xff01;暴走大数据点击… 点击上方蓝色字体选择“设为星标”回复”资源“获取更多资源本文作者Sheep Sun本文链接https://www.cnblogs.com/yangxusun9/p/12558683.html大数据技术与架构点击右侧关注大数据开发领域最强公众号暴走大数据点击右侧关注暴走大数据一、Sqoop简介Sqoop将用户编写的Sqoop命令翻译为MR程序MR程序读取关系型数据库中的数据写入到HDFS或读取HDFS上的数据写入到关系型数据库在MR程序中如果要读取关系型数据库中的数据必须指定输入格式为DBInputformat在MR程序中如果要向关系型数据库写入数据必须指定输出格式为DBOutputformatSqoop命令运行的MR程序只有Map阶段没有Reduce阶段只需要做数据传输不需要对数据进行合并和排序二、sqoop导入数据(将关系型数据库的数据导入到 HDFS)数据如下2.1 直接导入HDFS2.1.1 全表导入(部分导入)bin/sqoop import \##连接的关系型数据库的url,用户名密码--connect jdbc:mysql://hadoop102:3306/test \--username root \--password 123 \##连接的表--table t_emp \##导出数据在hdfs上存放路径--target-dir /sqoopTest \##如果路径已存在则先删除--delete-target-dir \##导入到Hdfs上后每个字段使用什么参数进行分割--fields-terminated-by \t \##要启动几个MapTask默认4个--num-mappers 2 \##数据集根据哪个字段进行切分切分后每个MapTask负责一部分--split-by id \##要实现部分导入加入下面的参数表示导入哪些列##columns中如果涉及到多列用逗号分隔分隔时不要添加空格--columns id,name,age2.1.2 使用sqoop关键字筛选查询导入数据bin/sqoop import \--connect jdbc:mysql://hadoop102:3306/test \--username root \--password 123 \--table t_emp \##指定过滤的where语句,where语句最好使用引号包裹--where id6 \--target-dir /sqoopTest \--delete-target-dir \--fields-terminated-by \t \--num-mappers 1 \--split-by id 2.1.3 使用查询语句导入bin/sqoop import \--connect jdbc:mysql://hadoop102:3306/test \--username root \--password 123 \##查询语句最好使用单引号##如果query后使用的是双引号则$CONDITIONS前必须加转移符防止shell识别为自己的变量--query select * from t_emp where id3 and $CONDITIONS \--target-dir /sqoopTest \--delete-target-dir \--fields-terminated-by \t \--num-mappers 1 \--split-by id 注意1、如果使用了--query就不能指定--table和--columns和--where  --query 和 --table一定不能同时存在  --where和--query同时存在时--where失效  --columns和--query同时存在时还有效2、--query 必须跟--target-dir2.2 导入到Hivebin/sqoop import \--connect jdbc:mysql://hadoop102:3306/test \--username root \--password 123 \--query select * from t_emp where id3 and $CONDITIONS \--target-dir /sqoopTest \##如果不限定分隔符那么hive存储的数据将不带分隔符之后再想操作很麻烦所以建议加上--fields-terminated-by \t \--delete-target-dir \##导入到hive--hive-import \##是否覆盖写不加这个参数就是追加写--hive-overwrite \##指定要导入的hive的表名--hive-table t_emp \--num-mappers 1 \--split-by id原理还是分俩步先把数据从关系数据库里导到hdfs中然后再从hdfs中导到hive中此时hdfs中的文件会被删除注意如果hive中没表会自动创建表但是类型是自动生成的所以还是建议手动创建 也可以分俩步走先导入hdfs#!/bin/bashimport_data(){$sqoop import \--connect jdbc:mysql://hadoop102:3306/gmall \--username root \--password 123 \--target-dir /origin_data/gmall/db/$1/$do_date \--delete-target-dir \--query $2 and \$CONDITIONS \--num-mappers 1 \--fields-terminated-by \t \# 使用压缩和指定压缩格式为lzop--compress \--compression-codec lzop \#将String类型和非String类型的空值替换为\N,方便Hive读取--null-string \\N \--null-non-string \\N}然后利用  load data  命令导入hive注意这里使用到了空值处理 ——Hive中的Null在底层是以“\N”来存储而MySQL中的Null在底层就是Null为了保证数据两端的一致性。在导出数据时采用--input-null-string和--input-null-non-string两个参数。导入数据时采用--null-string和--null-non-string。2.3 导入到 Hbasebin/sqoop import \--connect jdbc:mysql://hadoop102:3306/test \--username root \--password 123 \--query select * from t_emp where id3 and $CONDITIONS \--target-dir /sqoopTest \--delete-target-dir \##表不存在是否创建--hbase-create-table \##hbase中的表名--hbase-table t_emp \##将导入数据的哪一列作为rowkey--hbase-row-key id \##导入的列族--column-family info \--num-mappers 2 \--split-by id1、当选用自动创建表时如果版本不兼容会报错20/03/24 13:51:24 INFO mapreduce.HBaseImportJob: Creating missing HBase table t_empException in thread main java.lang.NoSuchMethodError: org.apache.hadoop.hbase.HTableDescriptor.addFamily(Lorg/apache/hadoop/hbase/HColumnDescriptor;)V 此时只能自己手动创建或者可以重新编译sqoop源码2、如果要多列族导入只能多次运行命令一次导入一个列族三、导出将Hdfs上的数据导出到关系型数据库中3.1 SQL中表为空表时bin/sqoop export \--connect jdbc:mysql://hadoop102:3306/test?useUnicodetruecharacterEncodingutf-8 \--username root \--password 123 \##导出的表名需要自己提前创建好--table t_emp2 \--num-mappers 1 \##hdfs上导出的数据的路径--export-dir /user/hive/warehouse/t_emp \##hdfs上数据的分隔符--input-fields-terminated-by \t3.2 表不为空表时如果插入的数据的主键和表中已有数据的主键冲突那么会报错Duplicate entry 5 for key PRIMARY如果在SQL下可以使用INSERT INTO t_emp2 VALUE(5,jack,30,3,1111) ON DUPLICATE KEY UPDATE NAMEVALUES(NAME),deptidVALUES(deptid),empnoVALUES(empno);意为指定当插入时主键重复时时对于重复的记录只做更新不做插入而用sqoop时则可以启用以下俩种模式3.2.1updateonly模式bin/sqoop export \--connect jdbc:mysql://hadoop103:3306/mydb?useUnicodetruecharacterEncodingutf-8 \--username root \--password 123456 \--table t_emp2 \--num-mappers 1 \--export-dir /hive/t_emp \--input-fields-terminated-by \t \--update-key id利用 --update-key 字段  表示主键重复时会进行更新但是主键不重复的时候数据不会插入进来3.2.2allowinsert模式bin/sqoop export \--connect jdbc:mysql://hadoop103:3306/mydb?useUnicodetruecharacterEncodingutf-8 \--username root \--password 123456 \--table t_emp2 \--num-mappers 1 \--export-dir /hive/t_emp \--input-fields-terminated-by \t \--update-key id \--update-mode  allowinsert表示主键重复时会进行更新主键不重复的时候数据也会插入进来3.3 如何查看导出命令的具体实现3.3.1配置/etc/my.cnfbin/sqoop export \--connect jdbc:mysql://hadoop103:3306/mydb?useUnicodetruecharacterEncodingutf-8 \--username root \--password 123456 \--table t_emp2 \--num-mappers 1 \--export-dir /hive/t_emp \--input-fields-terminated-by \t \--update-key id \--update-mode  allowinsert3.3.2重启mysql服务3.3.3进入/var/lib/mysql调用方法sudo mysqlbinlog mysql-bin.000001欢迎点赞收藏转发朋友圈素质三连文章不错点个【在看】吧 ?
http://www.huolong8.cn/news/154620/

相关文章:

  • 宁波网站建设制作公司哪家好随州网站优化
  • 什么网站做任务教育网站平面设计
  • 网业进不去什么原因西安网站seo哪家公司好
  • 苏州知名高端网站建设机构做网站开发的有哪些公司好
  • 服务之家网站推广协会秘书处工作建设 网站
  • 广州网页设计公司网站wordpress弹出式广告
  • 微信端网站设计云推广
  • 企业怎样做网站企业微网站
  • 一个域名怎么做多个网站中华建设杂志网站
  • 高端网站建设万维科技昆山网站建设公司
  • 网站打包成app软件博客营销案例
  • 巩义网站建设费用商店设计效果图
  • 山西大同企业做网站北碚网站建设
  • 建网站的网站京东的网络营销策略
  • 旅游网站 静态模板网页设计心得体会500
  • 哈尔滨专业网站建设公司网站策划网站建设企业
  • 如何在360网站上做软文推广好看的企业网站模板
  • 山西运城网站建设为什么要建微信网站
  • 烟台产品网站建设设计h5是什么意思
  • 网站建设注意枣强做百度网站
  • 做塑料的网站有哪些做网站平台多少钱
  • 临海企业网站建设公司cgi做的网站
  • 建立网站的模板网站的登录注册怎么做
  • 360如何做网站数字广东网络建设有限公司招聘
  • 像做游戏一样编程的网站团购网站建站
  • 信息类网站 wordpress中国域名网官网查询
  • 微信网站制作入门福州网站建设方案书
  • 做动态图片下载哪个网站好深圳网站建设公司哪里有
  • 建设网站的报告网站开发时间
  • 杭州网站建设多少钱头条搜索是百度引擎吗