搜索
搜 索
本版
文章
帖子
用户
图文精华
hadoop-2.6.0+zookeeper-3.4.6+hbase-1.0.0+hive-1.1.0完全分布 ...
首页
Portal
专题
BBS
面试
更多
登录
注册
用户组:游客
主题
帖子
云币
我的帖子
我的收藏
我的好友
我的勋章
设置
退出
导读
博客
群组
今日排行
本周排行
本周热帖
本月排行
本月热帖
会员排行
About云
»
专题
›
技术学习(版主发帖区)
›
大数据学习
›
介绍解说
›
MySQL通过Applier,可实时复制数据到Hadoop
0
0
1
分享
MySQL通过Applier,可实时复制数据到Hadoop
sstutu
2014-4-16 13:27:09
发表于
介绍解说
[显示全部楼层]
只看大图
阅读模式
关闭右栏
0
13014
本帖最后由 howtodown 于 2014-4-16 15:52 编辑
问题导读
1.如何将MySQL数据复制到Hadoop?
2.Sqoop与Applier有什么缺点?
MySQL复制
操作可以将数据从一个MySQL服务器(主)复制到其他的一个或多个MySQL服务器(从)。试想一下,如果从服务器不再局限为一个MySQL服务器,而是其他任何数据库服务器或平台,并且复制事件要求实时进行,是否可以实现呢?
MySQL团队最新推出的
MySQL Applier for Hadoop
(以下简称Hadoop Applier)旨在解决这一问题。
用途
例如,复制事件中的从服务器可能是一个数据仓库系统,如
Apache Hive
,它使用Hadoop分布式文件系统(
HDFS
)作为数据存储区。如果你有一个与HDFS相关的Hive元存储,Hadoop Applier就可以实时填充Hive数据表。数据是从MySQL中以文本文件形式导出到HDFS,然后再填充到Hive。
操作很简单,只需在Hive运行HiveQL语句'CREATE TABLE',定义表的结构与MySQL相似,然后运行Hadoop Applier即可开始实时复制数据。
优势
在Hadoop Applier之前,还没有任何工具可以执行实时传输。之前的解决方案是通过Apache Sqoop导出数据到HDFS,尽管可以批量传输,但是需要经常将结果重复导入以保持数据更新。在进行大量数据传输时,其他查询会变得很慢。且在数据库较大的情况下,如果只进行了一点更改,Sqoop可能也需要较长时间来加载。
而Hadoop Applier则会读取二进制日志,只应用MySQL服务器上发生的事件,并插入数据,不需要批量传输,操作更快,因此并不影响其他查询的执行速度。
实现
Applier使用一个由libhdfs(用于操作HDFS中文件的C库)提供的API。实时导入的过程如下图所示:
数据库被映射作为一个单独的目录,它们的表被映射作为子目录和一个Hive数据仓库目录。插入到每个表中的数据被写入文本文件(命名如datafile1.txt),数据以逗号或其他符号分割(可通过命令行进行配置)。
mysql-hadoop-applier-0.1.0-alpha.tar.gz
(74.13 KB, 下载次数: 34)
2014-4-16 15:52 上传
点击文件名下载附件
欢迎加入about云群
425860289
、
432264021
,云计算爱好者群,关注
about云腾讯认证空间
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
显身卡
没找到任何评论,期待你打破沉寂
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
发表新帖
sstutu
实习版主
关注
402
主题
948
帖子
143
粉丝
TA的主题
Flink使用场景-生产环境【适合架构师、面试者】
2018-10-24
阿里巴巴为什么选择Apache Flink?
2018-10-24
美团点评基于 Flink 的实时数仓建设实践
2018-10-24
Flink在美团的实践与应用
2018-10-24
小米面试题
2018-10-23
24小时热文
哈佛通识教育红皮书 (北大高等教育文库·大
代码精进之路:从码农到工匠
为什么面试难!一文帮我们看透本质,拿捏of
程序员薪资排名,AI位居榜首,平均年薪277
Django实战:Python Web典型模块与项目开发
关闭
推荐
/2
中文版ChatGPT
1.无需魔法 2.提高编程效率 3.提高文档能力
查看 »
新手帮助
新手帮助:注册遇到问题,领取资源,加入铁粉群,不会使用搜索,如何获取积分等
查看 »
意见
反馈