您的位置:首页 > 数据库

关于ETL引擎的一点补充

2007-03-26 23:53 441 查看
   考虑到scailabilbity,原有ETL引擎由于Task任务直接负责了数据库的读写,导致抽取多个抽取结果无法聚合。也就导致了单个任务无法在多个ETL Server中并行运算,可扩展性较差。因此,有必要把任务的委派,结果集的合并工作独立开来,形成单独的模块。

   首先,Task类不再直接操作数据库读写,而是把数据从一处抽取,发送到数据聚合处理模块,形成多个数据源的合并。Task类依然保持其最小操作单元,但多个Task的结果可以合并,多个Task可以合成一个组合Task。

  其次,需要增加ETL Server管理模块,需要监控各个ETL Server的运行状态,任务队列状态,从而更好的调度,分配Task任务。同时,需要在ETL Server中加入心跳功能,以检测ETL Server是否运行正常。

  第三,ETL Server管理器,ETL Server,ETL结果合并器等模块之间通过消息机制进行通信,以避免串行操作造成的阻塞。

第四,需要加入JTA事务处理模块,以防止结果集合并错误。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息