海量数据迁移之数据抽取流程

简介: 在之前的一些博文中花了大篇幅介绍了采用外部表抽取的一些细节,可能细节到了,基本原理的内容还希望再补充补充。 采用外部表抽取数据的流程图如下: 大体标注了一下抽取的基本结构,我们会尽量保证不去碰原本的数据源,会创建两个临时的用户,一个是只读用户,这个用户上只有同义词,只具有数据源中的select权限。
在之前的一些博文中花了大篇幅介绍了采用外部表抽取的一些细节,可能细节到了,基本原理的内容还希望再补充补充。
采用外部表抽取数据的流程图如下:


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

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

CREATE TABLE MO1_MEMO_EXT

    ORGANIZATION EXTERNAL

   (

     TYPE ORACLE_DATAPUMP

     DEFAULT DIRECTORY xxxxx

     LOCATION (

    ‘xxxx1.dmp’,‘xxxx2.dmp’)

    )

    parallel xx   as

    SELECT  /*+ parallel(t xx) */

  *

    FROM 只读用户.MO1_MEMO;

我们使用了外部表的oracle_datapump引擎,可以在指定的目录下生成多个dump文件,我们可以指定并行度,指定多个dump的名称等等。这些都需要通过编程来控制和管理这些复杂的部分。


目录
相关文章
|
5月前
|
消息中间件 存储 NoSQL
离线与实时数据开发方案
离线与实时数据开发方案
61 0
|
6天前
|
存储 数据挖掘 数据库
矢量数据库在实时数据分析中的作用与挑战
【4月更文挑战第30天】本文探讨了矢量数据库在实时数据分析中的关键作用,包括高效存储与检索高维数据、支持复杂空间查询及实时更新同步。面对数据规模增长、安全性与隐私保护以及实时性与准确性挑战,文章提出分布式架构、数据加密、优化传输机制等解决方案。随着技术发展,矢量数据库在实时数据分析领域将持续发挥重要作用。
|
5月前
|
SQL 存储 分布式计算
【推荐系统】离线增量文章画像计算(二)
【推荐系统】离线增量文章画像计算(二)
57 0
|
7月前
|
分布式计算 数据可视化 数据挖掘
06 离线数据分析流程介绍
06 离线数据分析流程介绍
44 0
|
8月前
|
canal SQL 弹性计算
实时数据及离线数据上云方案
本实验通过使用CANAL、DataHub、DataWorks、MaxCompute服务,实现数据上云,解决了数据孤岛问题,同时把数据迁移到云计算平台,对后续数据的计算和应用提供了第一步开山之路。
155 0
|
9月前
|
SQL 分布式计算 运维
开源大数据分析实验(2)——简单用户画像分析之加工数据
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
|
12月前
带你读《全链路数据治理-全域数据集成》之14:11. 附表:离线同步支持的数据源与对应的能力
带你读《全链路数据治理-全域数据集成》之14:11. 附表:离线同步支持的数据源与对应的能力
107 0
|
12月前
|
关系型数据库 调度 数据库
带你读《全链路数据治理-全域数据集成》之13:10. 离线同步附加能力
带你读《全链路数据治理-全域数据集成》之13:10. 离线同步附加能力
127 0
|
12月前
|
数据采集 弹性计算 数据库
带你读《全链路数据治理-全域数据集成》之9:6. 离线同步功能概述
带你读《全链路数据治理-全域数据集成》之9:6. 离线同步功能概述
152 0