不羡c 2021-08-26 10:49 采纳率: 100%
浏览 42
已结题

odi任务不报错,就是停止了!!!!

img
有人知道是什么情况吗,之前运行的好好的,突然之间就停止,也不报错,有开始时间没有结束时间。

  • 写回答

1条回答 默认 最新

  • StjpStjp 2021-08-26 10:50
    关注
    如果有帮助,请务必采纳,谢谢

    根据你的报错信息:从报错信息看,应该是网络问题,建议先确定一下数据源是否可以正常连通

    但是我还是要给你一个详细完整正确的教程,以免其他错误产生


    (辛苦的写了三章,万为单位的字数):


    第一章:


    根据前面的环境搭建步骤,ODI的环境已经搭建完成,代理也配置成功。
    现在开始学习数据抽取的步骤。

    第一步:设置抽取的数据源和目标数据源

    1、 首先要有两个数据库,一个是提供源数据的数据库,可以是ODI的支持的任意类型,sqlserver、oracle、mysql、hive均可以,此处以Orale为例,目标数据库也为Oracle,后续将写一下如何抽取MongoDB数据库的数据。

    2、新建数据服务器。此处主要是建立数据库的连接,指定url和用户名密码。
    【拓扑】–》【物理体系结构】–》【技术】,选择相应的数据库技术,右键【新建数据服务器】,填写相应的配置信息

    img

    3、根据格式填写jdbc的相关信息

    img

    4、为数据库服务器 建立 物理方案,右键选择 【新建物理方案】,在右面设置方案和工作方案为数据库的相应用户(施行数据抽取的过程中会在改用户下建立相应的临时表和触发器等)。

    img

    5、在【上下文】上输入逻辑方案的名称,系统会自动建立逻辑方案。

    img

    6、以上步骤设置了数据库服务器的相关信息,接下来将设置数据库的模型。
    【设计器】–》【模型】–》【新模型】
    在右边的界面选择相应的逻辑方案。

    img

    7、此时数据库的模型已经建立完成,可以打开数据库模型,在右方的编辑窗口中选择【逆向工程】或者【选择性逆向工程】,将数据库的表同步到数据库模型下面,便于后期进行设计。

    img

    建立好数据库的模型,将相关表进行逆向工程同步后,后续可以直接使用这些表设计抽取流程。

    目标数据库的数据源模型也同样设置。


    第二章


    在导入数据源完毕以后,可以创建简单项目进行数据抽取测试。

    新项目的创建步骤如下所示:
    1、新建项目。输入项目名称,直接保存即可。

    img

    2、项目结构介绍。
    新建一个项目后,主要包括以下几个模块:

    第一个文件夹:主要保存抽取程序的主要逻辑,几乎所有的流程设计均在此文件夹下的功能模块中完成。
    程序包:主要用于设计抽取流程,每一个抽取步骤都可以定义在该程序包中。即设计抽取前做什么,执行哪个抽取映射,执行完毕后做什么等。
    映射:主要用于设计抽取逻辑,即设计数据从哪里来,到哪里去。
    可重用映射:一种特殊的映射,目前我还没用到
    过程:可以自定义执行命令,比如做一些数据的union操作后插入目标表等。
    变量:可以通过sql语句或者函数命令来刷新变量值,变量可以直接用于数据抽取过程中作为条件等。
    序列:根据设置规则自动产生序列值
    用户函数:用户自定义的函数,我还未用到。
    知识模块:主要定义数据抽取各个环节中的业务逻辑,会通过不同的sql语句等来完成创建临时表、导入数据等操作。
    标记:标记进度和优先级等。

    项目结构图如下所示:

    img

    3、导入知识模块。
    知识模块是在数据抽取时候指导应该采取什么样的方式来进行,所以针对不同类型的抽取需要导入相应的知识模块。

    img

    知识模块的路径为见下图:

    img

    导入完成:

    img

    检查知识模块:

    img

    4、建立简单映射

    img

    填写映射名称,取消创建空数据集

    img

    在模型中选择抽取表和目标表,并拖到设计面板的【逻辑】标签页中。拖动连接点建立连接,可以根据名称自动映射,也可手动指定。

    img

    在设计面板中切换到【物理】标签页,可以看到该映射的物理架构,选择中间步骤,在【属性】中选择相应的知识模块。
    此处选择SQL to Oracle,一般源数据库是关系型数据库可以选用此选项。

    保存映射。

    5、运行映射
    选中相应映射,右键选择【运行】,或者打开映射后直接点击工具栏的运行按钮。

    img

    6、选择相应的代理,运行。

    img

    如果数据没有正常抽取,请参照ODI错误查找篇进行错误查找和定位。


    第三章


    多数情况下,我们需要ODI根据时间设置自动执行任务,以解脱人力。本章节将介绍如何设置ODI的自动执行任务。

    在进行本章节之前,需要做好以下前提工作:
    1、 已设置ODI代理并测试成功。
    2、 已设置至少一个ODI的映射。

    具备以上条件后,可以进行设置定期执行的工作。
    1、 在需要设置的映射上点击右键,选择【生成场景】

    img

    2、输入场景名称,创建

    img

    3、展开新建的场景,在【调度】上右键【新建调度】

    img

    4、选择之前创建的逻辑代理,设置活动时间和执行时间,设置是否循环和出错后的处理逻辑。

    img

    img

    5、切换到拓扑–》物理体系结构–》代理,打开代理
    点击【更新调度】【应用设置】按钮。

    img

    等待到时间后,检查是否自动执行。


    好了1,这三章完成了,请你给我一个采纳吧,谢谢。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 9月3日
  • 已采纳回答 8月26日
  • 创建了问题 8月26日

悬赏问题

  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大