海量数据迁移之数据抽取流程 (r4笔记第72天)

作者: admin 分类: 公众号存档            2 次浏览 发布时间: 2015-03-12 23:00

公众号:杨建荣的学习笔记 · 作者:r4笔记第72天 · 发布:2015-03-12 23:00:47 · 原文链接

在之前的一些博文中花了大篇幅介绍了采用外部表抽取的一些细节,可能细节到了,基本原理的内容还希望再补充补充。
采用外部表抽取数据的流程图如下:

大体标注了一下抽取的基本结构,我们会尽量保证不去碰原本的数据源,会创建两个临时的用户,一个是只读用户,这个用户上只有同义词,只具有数据源中的select权限。这就对应上面红色标注的1,而另外一个用户是外部表用户,所有通过创建外部表都会在这个用户下进行,生成了dump文件之后,我们可以随时删除外部表,这个时候为了保证相关的drop操作不会牵扯到数据源,外部表用户会继承只读用户中的select权限。这就对应红色标注的2.
当开始抽取数据的时候,会去查找是否有权限读取数据,会找到只读用户,最终能够读取数据源的数据,这就对应红色标注的3,4
当满足了基本的条件,就开始生成外部表的dump,可以为一个表生成多个dump,而且这个过程是并行的,这就对应红色标注的5

对于步骤5,是抽取的关键,基本的原理可以参考下面的伪代码,黄色标注的重点部分。

admin

杨建荣,《Oracle DBA工作笔记》《MySQL DBA工作笔记》作者,dbaplus社群发起人之一,腾讯云TVP,现任竞技世界系统部经理,拥有十多年数据库开发和运维经验,目前专注于开源技术、运维自动化和性能调优

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注