首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Talend数据仓库工具

问Talend数据仓库工具
EN

Stack Overflow用户
提问于 2014-05-06 18:15:21
回答 2查看 732关注 0票数 2

Ques:我有两个数据库,一个是客户的数据库(实时数据库),另一个是我的数据库。我使用的是MySQL数据库。我不应该直接访问客户的数据库,所以我创建了自己的数据库。通过使用'Talend‘数据仓库工具,我为每个表创建了作业,通过执行所有作业,我可以将所有更新的数据从客户的数据库(实时数据库)中获取到我的数据库中。我需要手动执行这些作业来将更新的数据放入我的数据库中,但我的问题是:当客户端在数据库中插入或更新数据时,是否有任何过程会自动提醒我,以便我可以手动执行这些作业以将更新的数据放入我的数据库中?或者如果客户端更新其任何数据库表,以便自动关联的作业将执行/运行??请在这方面帮帮我。

EN

回答 2

Stack Overflow用户

发布于 2014-05-06 18:50:58

您需要设置一个数据库触发器,以某种方式通知Talend作业并运行它。为此,您通常使用存储过程或用户定义函数将作业作为web服务进行调用。例如,This link展示了在更新触发器上调用web服务的典型方式。

如果您的源数据表很大,那么您可以使用tMysqlCDC组件来只影响更改,而不是从表中提取所有数据,然后删除表并重新创建。该组件的内置教程看起来几乎涵盖了实践中的一个有用的示例。如果您在源数据库中看到定期更改,这可能会使您的工作更有效率。

如果您完全没有访问客户端数据库的权限,那么您也可以选择使用某个调度程序来运行该作业。企业版的Talend带有Talend管理控制台,它允许您为作业设置CRON触发器,并可以轻松设置为每分钟或任何其他间隔(而不是秒)运行一次。或者,您可以使用操作系统调度系统以所需的时间间隔运行作业。

票数 1
EN

Stack Overflow用户

发布于 2014-05-06 18:52:55

如果你不能修改你的客户数据库(例如,添加触发器),并且没有其他方法来识别更改的记录(例如,某种类型的审核表),那么你就走运了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23491875

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档