自建Hive数据仓库跨版本迁移到阿里云E-MapReduce

最佳实践概述

应用场景

客户在IDC或者公有云环境自建Hadoop集群,数据集中保存在HDFS文件系统,同时借助Hive进行常见的ETL任务。客户在决策上云之后,会将自建Hadoop集群的数据迁移到阿里云自建Hadoop或者EMR。

技术架构

本实践方案基于如下图所示的技术架构和主要流程编写操作步骤。 

方案优势

  • 易用性 
    您可以简单选择所需ECS机型(CPU、内存)与磁盘,并选择所需的软件,进行自动化部署。
  • 经济性 
    您可以按需创建集群,即离线作业运行结束就可以释放集群,还可以在需要时动态地增加节点。
  • 深度整合 
    E-MapReduce与阿里云其它产品(例如,OSS、MNS、RDS 和 MaxCompute 等)进行了深度整合,支持以这些产品作为Hadoop/Spark计算引擎的输入源或者输出目的地。
  • 安全 
    E-MapReduce整合了阿里云RAM资源权限管理系统,通过主子账号对服务权限进行隔离。
  • 可靠性 
    使用阿里云数据库RDS保存Hive的元数据信息,可以提升数据可靠性和服务可用性,免除客户运维自建MySQL数据库的工作。

前置条件

在进行本文操作之前,您需要完成以下准备工作:

  • 注册阿里云账号,并完成实名认证。您可以登录阿里云控制台,并前往实名认证页面查看是否已经完成实名认证。
  • 阿里云账户余额大于100元。您可以登录阿里云控制台,并前往账户总览页面查看账户余额。
  • 拥有已经通过备案的域名。
  • 开通ECS、OSS、EMR、RDS、DTS和VPN网关等服务。

资源规划说明

  • 本方案仅作为实践演练使用,在生产环境中执行时请结合业务系统实际架构进行
    调整。
  • 本方案购买的所有云产品规格均为演示需要,请根据实际业务需求购买对应规格
    的产品和服务。
  • 本方案重在展示迁移思路和方法,线下IDC的模拟环境以组件配置呈现。

1. 基础环境搭建

本实践方案中,将按照技术架构图搭建相对完整的实践环境,包括Apache日志发生
器、Kafka队列、Hadoop集群、Hive+MySQL元数据库。 

1.1. 搭建Hadoop + Kafka + 日志发生器环境

请参考《自建Hadoop数据迁移到阿里云EMR》最佳实践
第1章:1. 自建Hadoop集群环境搭建,完成本实践方案的基础环境搭建。

1.2. 创建Hive元数据库

本实践方案将在ECS上安装MySQL数据库,用于保存Hive元数据信息。 
步骤1 登录云服务器控制台,地域:华东2(上海)。 
步骤2 在实例列表页面,单击右上角的创建实例。 

步骤3 在自定义购买模式下,完成各项配置。 
基础配置:

  • 付费模式:本实践方案选用抢占式实例。 
    说明:在方案演示过程中,我们选用抢占式实例来降低您的成本;在实际商用环境中,请选择适合业务场景的ECS实例付费模式。抢占式实例的具体信息,
  • 地域及可用区:华东2(上海) 可用区F 
  • 实例 
    ᅳ 实例规格:ecs.g6.large(2 vCPU 8 GiB,通用型g6)

ᅳ 单台实例规格上限价:创建抢占式实例,必须设置单台实例规格的价格上限。

a) 选择设置单台上限价。 
b) 单击查看历史价格。 
c) 在抢占式实例历史价格走势图中,可以看到华东2可用区F的实例当前市场价格为0.034 ¥/实例/小时,因此,我们设置单台上限价为0.04 ¥/实例/小时,要求略高于当前市场价格。使用者在进行实际操作时,请以界面显示的实时价格为准。

  • 购买实例数量:1台


  • 镜像:

a) 选择镜像市场。 
b) 单击从镜像市场获取更多选择(含操作系统)。 
c) 输入magento,并单击搜索。 
d) 选择Magento开源电子商务系统(LAMP | 含演示数据),并单击使用,该镜像中包含了MySQL数据库,root用户的默认密码为123456 

  • 存储:系统盘 
    高效云盘 80GiB

步骤4 配置完成,单击下一步:网络和安全组。 
步骤5 在网络和安全组页面,参考下表,配置相关参数。

配置完成,单击下一步:系统配置。


步骤6 在系统配置页面,参考下表,配置相关参数。


配置完成,单击确认订单。

步骤7 在确认订单页面,确认各项参数信息。确认无误,阅读、同意并勾选《云服务器ECS服务条款》和《镜像商品使用条款》,并单击创建实例。 

步骤8 创建任务提交成功后,单击管理控制台前往ECS实例列表页面查看详情。

至此,本实践方案中用于模拟客户自建Hadoop系统的ECS已经全部搭建完成,如下图所示: 

步骤9 通过如下网址登录到MySQL控制台: 
http://mysql所在ecs的公网ip地址/phpmyadmin 

步骤10 创建账号,该账号用于Hive进行连接。



完成后界面显示如下图所示: 

1.3. 安装并配置Hive

在本实践方案中,采用Hive 1.2.2版本作为源版本。 
步骤1 通过SSH登录到hadoop-master节点,执行以下命令下载并解压Hive软件包。

cd ~ 
wget https://mirrors.tuna.tsinghua.edu.cn/apache/hive/hive-1.2.2\ 
/apache-hive-1.2.2-bin.tar.gz 
tar -zxf apache-hive-1.2.2-bin.tar.gz -C /usr/local/

步骤2 配置环境变量。 
vim /etc/profile

  1. 在文件末尾添加如下内容,保存并退出。
# Added for Hive 
export HIVE_HOME=/usr/local/apache-hive-1.2.2-bin 
export PATH=$PATH:$HIVE_HOME/bin
  1. 执行以下命令使文件生效。
source /etc/profile
  1. 查看Hive版本号。
hive --version

步骤3 生成hive-site.xml配置文件。

cd /usr/local/apache-hive-1.2.2-bin/conf 
cp hive-default.xml.template hive-site.xml 
vim hive-site.xml
  1. 搜索javax.jdo.option.ConnectionUserName,将value修改为root。
  2. 搜索javax.jdo.option.ConnectionPassword,将value修改为123456,该密码为章节1.2使用的云市场镜像中数据库root用户的默认密码。
  3. 搜索javax.jdo.option.ConnectionURL,将value修改为 
    jdbc:mysql://192.168.100.140:3306/hive122db?createDatabaseIfNotExist=true

说明:

(1) 将红色字体的192.168.100.140替换为您环境中MySQL的VPC IP地址。 
(2) hive122db为MySQL中的数据库,用于保存Hive的元数据。

  1. 搜索javax.jdo.option.ConnectionDriverName,将value修改为 com.mysql.jdbc.Driver
  2. 在下图所示的位置添加配置,即作为最靠前的
<property> <name>system:java.io.tmpdir</name> <value>/usr/local/apache-hive-1.2.2-bin/tmp</value> </property> <property> <name>system:user.name</name> <value>root</value> </property>

步骤4 生成并配置hive-env.sh启动文件。

cd /usr/local/apache-hive-1.2.2-bin/conf 
cp hive-env.sh.template hive-env.sh 
vim hive-env.sh

在文件末尾添加如下内容,保存后退出:

export HIVE_AUX_JARS_PATH=/usr/local/apache-hive-1.2.2-bin/lib

步骤5 下载MySQL驱动程序。

cd /usr/local/apache-hive-1.2.2-bin/lib
  • 通过下面命令下载MySQL Connector库文件
wget 
https://maven.aliyun.com/repository/central/mysql/\ 
mysql-connector-java/8.0.18/mysql-connector-java-8.0.18.jar

步骤6 初始化源数据库。

cd /usr/local/apache-hive-1.2.2-bin/bin 
./schematool -dbType mysql -initSchema -verbose

当界面出现下图所示信息时表示初始化完成。 
 

步骤7 启动Hive进入HQL命令行交互界面。 
hive 


说明:在hive命令行界面,使用quit退出。


原文链接
本文为阿里云原创内容,未经允许不得转载。

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

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

相关文章

fastjson 序列化时指定json的key值

json字符串中的key是下划线例如&#xff1a;foot_dist&#xff0c;而实际实体类中的属性是footDist&#xff0c;添加 JSONField(name "foot_dist")即可 package com.gblfy;import com.alibaba.fastjson.annotation.JSONField; import lombok.AllArgsConstructor; i…

vue搭建脚手架

1.必须安装node.js 打开dos窗口 查看安装版本 运行命令 node -v npm -v 2.搭建vue的开发环境&#xff0c;安装vue的脚手架 npm install --global vue-cli 或 cnpm install --global vue-cli 注释&#xff1a; 1&#xff09;用npm安装&#xff08;国际开源库生态系统&#xff09…

秒级启动万个容器,探秘阿里云容器镜像加速黑科技

阿里云容器与存储团队展开合作&#xff0c;利用DADI加速器支持镜像按需读取和P2P分发&#xff0c;实现3.01秒启动10000个容器&#xff0c;完美杜绝容器冷启动的数分钟漫长等待&#xff0c;以及镜像仓库大规模并行分发场景下的网络拥堵。 年关将至&#xff0c;各种年货节、秒杀…

官宣丨中国移动云能力中心新增5项可信云认证,斩获2项大奖!

近日&#xff0c;由中国信息通信研究院、中国通信标准化协会联合主办的“2020可信云大会”圆满落幕。 围绕“数字新基建可信新生态”话题&#xff0c;会上探讨了新基建与云计算的发展未来&#xff0c;披露了2020年可信云上半年最新评估结果&#xff0c;并揭晓了2020年可信云多项…

跟我学-域名解析故障排查技巧

天苍苍&#xff0c;野茫茫&#xff0c;网站一瘫&#xff0c;唯有泪两行&#xff01;&#xff01; 客户跳&#xff0c;老板叫&#xff0c;解析故障&#xff0c;心惊又肉跳&#xff01;&#xff01; 对企业网站来说&#xff0c;很怕出现网站打不开的情况&#xff0c;一旦发生&…

axios安装使用

1.进入项目运行命令&#xff0c;原因同v-resource安装 cnpm install axios --save 2.在需要使用时引入 如&#xff1a; 使用按照gitubs上提供的示例做就可以了

首次曝光 | 阿里数万名开发者都在使用的数据库开发工具到底长什么样?

除了基础的数据查询开发功能&#xff0c;DMS还内置SQL审核、性能诊断优化、测试数据自动生成、多环境数据对比同步、数据库日志追踪回滚、不锁表变更、访问控制、敏感数据脱敏、安全审计等高端功能。 1、丰富的数据源 &#x1f538;丰富的数据库类型支持&#xff08;当前已超…

MySQL5.7.x 安装 Linux7环境

文章目录一、软件安装1. 下载2. 解压3.安装4. 跳过权限5. 启动mysql服务端6. 设置密码7. 允许远程连接8.开发3306端口二、安装报错方案一、软件安装 1. 下载 wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.33-1.el7.x86_64.rpm-bundle.tarhttps://dev.…

使用ant design vue 中table组件运行时not found: Error: Can't resolve 'reqwest' in 'D:\vue\antd-demo01\src\com

最近使用table时按照官网api使用table报了上面这个错误 1.只需要安装无法找到文件就可以正常运行了 2.命令行cd进入项目文件 3.运行npm install --save reqwest table就出来了

Serverless Kubernetes 入门:对 Kubernetes 做减法

导读&#xff1a;Serverless Kubernetes 是阿里云容器服务团队对未来 Kubernetes 演进方向的一种探索&#xff0c;通过对 Kubernetes 做减法&#xff0c;降低运维管理负担&#xff0c;简化集群管理&#xff0c;让 Kubernetes 从复杂到简单。 背景 Kubernetes 作为通用的容器编…

硬核“毕业证”:5 位本科生带自研处理器芯片毕业,包云岗解读“一生一芯”计划...

作者 | 包云岗责编 | 伍杏玲本文经作者授权转载自包云岗知乎【编者按】近日&#xff0c;中国科学院大学五位本科生的硬核“毕业证”引发IT圈热议&#xff0c;在“一生一芯”培养计划下&#xff0c;由五位2016级本科生主导完成一款64位RISC-V处理器SoC芯片设计并实现流片&#x…

如何打造“智能助理”?阿里对话开发平台这样做

阿里妹导读&#xff1a;一个合格的智能助理能够帮你预约开会时间&#xff0c;处理日常办公需求&#xff0c;还能打电话提醒你要还信用卡了&#xff0c;作为用户或者消费者&#xff0c;我们已经越来越习惯对话机器人提供的各色服务。但对于企业来讲&#xff0c;搭建提供这些服务…

关于vue中使用iconfont

1.进入iconfont图标库 2.点击下载 3.将下载文件解压拷贝至项目assets文件夹下 4.在main.js中全局引入 import ./assets/iconfont/iconfont.css5.在App.vue中使用 <span class"icon iconfont icon-****"></span>今天使用过程中按照这个导入还是一直会…

openoffice 安装 linux环境

文章目录一、安装配置启动1. 下载软件2. 上传文件3. 解压4. 安装rpm文件5. 安装openoffice6. 前台启动7. 后台启动8. 查看启动状态二、openoffice卸载与异常2.1. 删除openoffice2.2. 启动异常2.2. 解决方案2.3. 启动异常22.3. 解决方案2一、安装配置启动 1. 下载软件 https:/…

阿里巴巴大规模应用Flink的踩坑经验:如何大幅降低 HDFS 压力?

众所周知 Flink 是当前广泛使用的计算引擎&#xff0c;Flink 使用 checkpoint 机制进行容错处理[1]&#xff0c;Flink 的 checkpoint 会将状态快照备份到分布式存储系统&#xff0c;供后续恢复使用。在 Alibaba 内部我们使用的存储主要是 HDFS&#xff0c;当同一个集群的 Job 到…

云原生领域首本架构白皮书,你Get到了吗?

来源 | 《云原生架构白皮书》【导读】近日&#xff0c;由阿里云 20 位云原生技术专家共同编撰的《云原生架构白皮书》正式对外发布。作为业界第一本全方位构建云原生架构规划与实践全景图的白皮书&#xff0c;本书在详细阐述云原生架构定义的同时&#xff0c;完整展示云原生架构…

让机器读懂视频:亿级淘宝视频背后的多模态AI算法揭秘

背景 随着4G的普及和5G的推出&#xff0c;内容消费的诉求越来越受到人们的重视。2019年互联网趋势报告指出在移动互联网行业整体增速放缓的大背景下&#xff0c;短视频行业异军突起&#xff0c;成为“行业黑洞”抢夺用户时间&#xff0c;尽管移动互联网人口红利见顶&#xff0…

“崩溃!我再也不搞 AI 了”谷歌 AI 专家:别让你的方法打败你!

今天&#xff0c;想跟大家聊聊 Python 人工智能。最近几年&#xff0c;我看过市面上很多 Python和人工智能的教程&#xff0c;基本都是先介绍Python基本语法、dict、tuple 等基本库的使用&#xff0c;最后学习机器学习、深度学习的常用算法......但我与 Google 人工智能开发专家…

解决jodconverter 2.2.1 版本不支持docx、xlsx、pptx 转换成PDF格式异常

文章目录一、基础对比1.版本对比2.异常现象二、分析定位2.1. 找异常输出处2.2. 找异常源头2.3. api源头三、实现流程3.1. 思路3.2. 新建包重写类3.3. 完整类一、基础对比 1.版本对比 03版本office07版本及高版本office.doc.docx.xls.xlsx.ppt.pptx 2.异常现象 搭建好 Spring…

突破边界局限,阿里云神龙负责人张献涛分享15年虚拟化之路

2020年1月8日&#xff0c;弹性计算服务技术总负责人张献涛受邀出席“面对面 见未来”的沙龙分享活动&#xff0c;现场听众主要是银行、保险、证券等金融行业的CTO、CIO等。 演讲开始前&#xff0c;听众们了解神龙云服务器的并不多。在听完张献涛的介绍后&#xff0c;他们对神龙…