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

电子商务网站建设需要哪些技术dedecms 生成网站地图

电子商务网站建设需要哪些技术,dedecms 生成网站地图,北京电脑培训网站,河南网站搭建导语 Hive是基于Hadoop构建的一套数据仓库分析系统#xff0c;可以将结构化的数据文件映射为一张数据库表#xff0c;并提供完整的SQL查询功能。它的优点是可以通过类SQL语句快速实现简单的MapReduce统计#xff0c;不用再开发专门的MapReduce应用程序#xff0c;从而降低…导语 Hive是基于Hadoop构建的一套数据仓库分析系统可以将结构化的数据文件映射为一张数据库表并提供完整的SQL查询功能。它的优点是可以通过类SQL语句快速实现简单的MapReduce统计不用再开发专门的MapReduce应用程序从而降低学习成本十分适合对数据仓库进行统计分析。 近几年随着行业内数据体量的不断增大再加上国产化的趋势下很多企业都开始着手对自己已有的大数据平台进行扩容、升级、产品更换等一系列操作以期可以赶上潮流。因此就会有很多项目需要进行数据库迁移本文主要总结了一些在项目上遇到Hive迁移时可以使用的方式方法供大家参考借鉴。 目录 ● 1. Hive迁移类型 ● 2. Hive迁移步骤 ● 3. Hive迁移实施步骤 ● 4. 结语 1. Hive迁移类型 ■ 表和数据整体迁移 一般在企业进行大数据平台产品的升级更换如国产化、机房搬迁、物理机转向云平台等情况下会进行整库迁移那么此时Hive迁移建议使用表和数据整体迁移的方式进行迁移。 ■ 表和数据分步迁移 一般在企业进行数据库改造、历史数据库区域创建、业务条线改造等或是数据库出现瓶颈的情况下会进行部分数据迁移那么此时Hive迁移建议使用表和数据分步迁移的方式进行迁移。 2. Hive迁移步骤 1将表和数据从老集群Hive导出到老集群HDFS 2将表和数据从老集群HDFS导出到老集群本地磁盘或共享磁盘 3将表和数据从老集群本地磁盘复制到新集群本地磁盘如共享磁盘此步骤省略 4将表和数据从新集群本地磁盘或共享磁盘上传到新集群HDFS 5修复新集群Hive数据库元数据 如果老集群HDFS和新集群HDFS连通可使用DistCp工具跨集群复制跳过中间步骤直接执行第5步。 3. Hive迁移实施步骤 ■ 新集群和服务器检查 #查看本地空间使用情况是否足够 df -h #查看HDFS集群使用情况是否满足   hadoop dfsadmin -report #查找Hive库存储位置 hadoop fs -find / -name warehouse #查看Hive库占用情况 hadoop fs -du -h /user/hive/warehouse ■ 表和数据整体迁移 一般Hive整体迁移时使用HDFS文件迁移然后再进行数据表与数据文件关联即可新老集群Hive版本即使不一致的情况下也支持该步骤详细操作步骤如下 ​ 老集群备份 # 罗列迁移表清单 cat EOF /home/data/backup/hive_sel_tables.hql use db_name; show tables; EOF # 清洗迁移表清单 beeline -f /home/data/backup/hive_sel_tables.hql \ | grep -e ^| \ | grep -v tab_name \ | sed s/|//g \ | sed s/ //g \/home/data/backup/hive_table_list.txt # 拼接建表语句命令及清洗无用字符 cat /home/data/backup/hive_table_list.txt \ | awk {printf show create table db_name.%s;\n,$1,$1} \ | sed s/|//g \ | sed s///g \ | grep -v tab_name \/home/data/backup/hive_show_create_table.hql # 导出建表语句 beeline -e /home/data/backup/hive_show_create_table.hql/home/data/backup/hive_table_ddl.sql # 清洗建表语句 sed -i s/^|//g /home/data/backup/hive_table_ddl.sql sed -i s/|$//g /home/data/backup/hive_table_ddl.sql sed -i s/-//g /home/data/backup/hive_table_ddl.sql sed -i s///g /home/data/backup/hive_table_ddl.sql sed -i s/createtab_stmt//g /home/data/backup/hive_table_ddl.sql sed -i s/.*0: jdbc:hive2:.*/;/ /home/data/backup/hive_table_ddl.sql sed -i /^$/d /home/data/backup/hive_table_ddl.sql # 拼接修复Hive元数据语句 cat /home/data/backup/hive_table_list.txt \ | awk {printf msck repair table archive.%s;\n,$1,$1} \ | sed s/|//g \ | sed s///g \ | grep -v tab_name \/home/data/backup/hive_repair_table.hql # 将Hive在HDFS中的文件导出到HDFS临时目录 hadoop fs -get /user/hive/warehouse/db_name /tmp # HDFS集群连通时使用DistCp进行拷贝 hadoop distcp hdfs://scrNameNode/tmp/db_name hdfs://user/hive/warehouse/db_name # HDFS集群不连通导出HDFS文件到本地磁盘或者共享NAS hadoop fs -get /tmp/db_name /home/data/backup/ # 如果是共享磁盘忽略此步  scp -r /home/data/backup/ roottargetAP:/home/data/backup/ 新集群恢复 # 登录生产环境Hive并创建表 beeline -f /home/data/backup/hive_table_ddl.sql/home/data/backup/hive_table_ddl.log # 检查新集群数据库新表是否创建成功 beeline use db_name show tables; # 将数据文件上传到HDFS的Hive存储路径下 hadoop fs -put /home/data/backup/db_name /user/hive/warehouse/db_name # 关联Hive表和数据 beeline -f /home/data/backup/hive_repair_table.hql # 查看HDFS所有目录检查是否都导入成功 hadoop fs -lsr /home # 查看所有表大小验证新旧表大小是否一致 hadoop fs -du -h /user/hive/warehouse/db_name ■ 表和数据分步迁移 一般Hive分步迁移时使用Import和Export新老集群Hive版本不一致的情况下也支持该步骤。 Export工具导出时会同时导出元数据和数据 Import工具会根据元数据自行创建表并导入数据。 老集群备份 # 罗列迁移表清单 cat EOF /home/data/backup/hive_sel_tables.hql use db_name; show tables; EOF # 罗列要迁移的表清单 beeline -f /home/data/backup/hive_sel_tables.hql\ | grep -e ^| \ | grep -v tab_name \ | sed s/|//g \ | sed s/ //g \/home/data/backup/hive_table_list.txt # 生成导出脚本 cat /home/data/backup/hive_table_list.txt \ | awk {printf export table db_name.%s to |/tmp/db_name/%s|;\n,$1,$1} \ | sed s/|//g \ | grep -v tab_name \/home/data/backup/hive_export_table.hql # 生成导入脚本 cat /home/data/backup/hive_table_list.txt \ | awk {printf import table db_name.%s from |/tmp/db_name/%s|;\n,$1,$1} \ | sed s/|//g \ | grep -v tab_name \/home/data/backup/hive_import_table.hql # 创建HDFS导出目录 hadoop fs -mkdir -p /tmp/db_name/ # 导出表结构到数据到HDFS beeline -f /home/data/backup/hive_export_table.hql #HDFS集群连通时使用DistCp进行拷贝 hadoop distcp hdfs://scrNmaeNode/tmp/db_name hdfs://targetNmaeNode/tmp # HDFS集群不连通导出HDFS文件到本地磁盘或者共享NAS hadoop fs -get /tmp/db_name /home/data/backup/ # 如果是共享磁盘忽略此步  scp -r /home/data/backup/ roottargetAP:/home/data/backup/ 新集群恢复 # 创建HDFS导出目录 hadoop fs -mkdir -p /tmp/db_name/ #上传到目标HDFS hadoop fs -put /home/data/backup/db_name /tmp # 导入到目标Hive beeline -f /home/data/backup/hive_import_table.hql # 查看HDFS所有目录检查是否都导入成功 hadoop fs -lsr /home # 查看所有表大小验证新旧表大小是否一致 hadoop fs -du -h /user/hive/warehouse/db_name 4. 总结 Hive的数据迁移其实有多种方式根据需求不同采用的迁移方式也不尽相同每种迁移的优势也是不同的其中数据量是影响迁移的重要因素之一。 在数据量不大的情况下Hive迁移一般常用的方式是使用Export、Import进行数据和元数据的导出导入Export会将数据和元数据写到一起并且元数据在恢复时是直接关联数据的不需要再做其他的操作。同时还直接关联分区不需要再使用MSCK进行分区修复。需要注意的一点的是Import和Export在进行数据恢复的时候只会关注到表层的文件夹不用和旧集群的文件路径一摸一样。 在数据量比较大的情况下建议使用整体迁移的方式这样Hive迁移的速度较快但是注意要保证新旧集群数据目录的一致性。
http://www.w-s-a.com/news/7779/

相关文章:

  • 个人网站需要备案宁波网站推广工具
  • 苏州建设银行网站首页wordpress修改密码
  • 网站建设员工技能要求网站制作简单协议
  • 没有ipc备案的网站wordpress isux主题
  • 清远做网站电子商务网站建设需要的语言及特点6
  • 万州那家做网站c语言基础知识入门
  • 齐河网站建设公司价格网站建设包括什么
  • 论坛网站开发费用怎么把文件放到网站的根目录
  • 海南省零售户电商网站官渡区住房和城乡建设局网站
  • 怎么找淘宝客网站最新军事战况
  • 缺乏门户网站建设网页设计与制作项目教程第二版
  • 手机网站横竖屏一般做建设的是什么公司
  • 免费网站建设无广告网站开发 华景新城
  • 湖州网站制作报价西安网站开发有哪些公司
  • google 浏览器开源seo软件
  • 网站空间是什么意思自己怎样建设网站
  • 国外家装设计网站如何做软件开发
  • 凡科建站登录官网当当网网站建设策划书
  • 网站百度屏蔽关键词杭州排名优化公司
  • h5响应式网站模板下载wordpress鼠标指针
  • 摄影作品投稿网站目前最好的引流推广方法
  • 资源站源码永久dede网站搬家 空间转移的方法
  • 网站建设销售的技巧话语it培训机构
  • 自建本地网站服务器wordpress南充房产网最新楼盘最近房价
  • 郑州代做网站天津哪里能做网站
  • 网站如何做排名网站建设项目的工作分解
  • 洛阳网络建站公司网站开发主流语言
  • 广州各区正在进一步优化以下措施seo值是什么意思
  • 滨州建网站公司京东云 wordpress
  • 网站视频背景怎么做免费的网络推广有哪些