Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R vs Pentaho Spoon作为ETL工具_R_Pentaho - Fatal编程技术网

R vs Pentaho Spoon作为ETL工具

R vs Pentaho Spoon作为ETL工具,r,pentaho,R,Pentaho,背景(抱歉,太长了): 我的任务是维护一个ETL,它收集各种在线广告数据,每天大约20-30 MB,并将其附加到MySQL中的表中。外部承包商使用Pentaho勺子(厨房、水壶?)建造ETL。ETL由大约250个作业和转换(.ktr、.kjb)组成,每个作业和转换大约有5到25个步骤。在这个大过程中出现问题是很常见的。我发现编写R脚本来进行转换和加载要高效得多。事实上,我认为除了使用RMySQL(即plyr!)调用之外,ETL还可以减少到1000行以下的代码。也许可以使用Python从web中提

背景(抱歉,太长了):

我的任务是维护一个ETL,它收集各种在线广告数据,每天大约20-30 MB,并将其附加到MySQL中的表中。外部承包商使用Pentaho勺子(厨房、水壶?)建造ETL。ETL由大约250个作业和转换(.ktr、.kjb)组成,每个作业和转换大约有5到25个步骤。在这个大过程中出现问题是很常见的。我发现编写R脚本来进行转换和加载要高效得多。事实上,我认为除了使用RMySQL(即plyr!)调用之外,ETL还可以减少到1000行以下的代码。也许可以使用Python从web中提取数据

我使用R导致了一些阻力。设计ETL的计算机程序员不知道R,所以如果我离开的话就不能打电话了,而且很多时间都花在了ETL上。此外,外行在Spoon中比在R脚本中更容易直观地遵循这些步骤。就我而言,我认为我们正陷入ETL的困境。然而,我在这件事上没有很大的发言权,因为我没有计算机科学的背景

如果您对以下内容有任何见解,请发表评论。请知道,我已经对此进行了几个月的研究,并阅读了许多观点,但没有任何东西像SO通常提供的那样简洁或可靠:

  • 该公司的一些人称R的可伸缩性较差。我认为恰恰相反,主要是因为日志功能。Spoon的纯日志输出有限,而所有R脚本都可以放入每日日志中。修复和避免.ktrs中的错误非常繁琐,但是通过设置标志和/或搜索R日志很容易。有什么想法吗

  • 这引出了一个大问题。像Pentaho这样的ETL有什么意义?这篇文章让我相信,如果你使用R或其他所谓的OOL,就没有理由拥有像Pentaho这样的工具。有人能确认一下吗?我真的需要第二种意见。如果是这样,谁会使用Pentaho这样的工具?是没有编程背景的人,还是其他人?我确实看到了相当多的Pentaho问题

  • 的确,使用R和Pentaho的人要比使用Pentaho的人多得多,对吗?这使它看起来如此。老实说,我对Pentaho排名第五感到惊讶,这让我不禁怀疑谁在使用Pentaho,我对Pentaho在我的工作环境中的用途的怀疑是否有误


  • 谢谢你的回复。我不是说对勺子或勺子使用者有任何屈尊俯就;我真的很困惑,需要外界的意见

    R作为ETL工具?这是一个新的,但无论什么能让你的船漂浮

    不过我想说的是,如果你能得到250个工作和转换到1000行以下的R,我会说你的ETL写得很糟糕

    除此之外,您还必须考虑可支持性和可扩展性。我认为,使用像勺子这样的图形工具比使用R代码要容易得多

    我个人认为你被误导了,你问的问题写得很糟糕,但那是另一种观点

    关于您的观点,PDI的日志记录非常好,如果您喜欢合并日志,您可以按照自己的喜好将所有日志记录到一个大型数据库表中

    ETL不会消失,即使随着HDF等非结构化数据存储池的兴起,也要考虑在R之外进行的数据分析,如果您希望在数据之上进行报告或OLAP,它仍然需要转换

    更多的人使用R vs Pentaho,这是真的吗?这是什么问题?我猜你说的Pentaho是指PDI?这是怎么比较的呢?一个数据分析工具和ETL工具,你想统计用户数吗?嗯??另一方面,如果你指的是R vs Pentaho作为一个整体,那么我猜不会。你正在看一份关于R vs Weka的报告,并使其符合你的ETL论点。一个月的星期天都洗不干净

    ==编辑== 好的,现在你有大约1000行R&Python代码。随着上司的需求不断扩大,这一点会随着时间的推移而慢慢增加,而且由于您正试图在截止日期前完成任务,因此新代码的编写将与您当前拥有的代码一样干净或文档化。所以随着时间的推移,这会增加到5000行,比如说,再加上一些python脚本。然后有一天你被一辆公共汽车撞了,一些新的人不得不进来管理你的代码。。。他们从哪里开始,如何做出改变

    事实上,任何拥有少量数据经验的人都可以在需要时对PDI ETL进行更改。需要一些有足够深入知识的人来改变你所做的事情

    ETL工具被设计为快速且易于使用,它们在与不同系统(例如,非db或基于文件)的数据连接方面也提供了远远超过R所能提供的功能,尽管我猜这就是人们求助于python等的原因。 也就是说两者都有空间,我看到的社区中有一个PDI的R插件

    除此之外,我在过去的几年中已经看到了足够多的TSQL到ETL迁移,从经验中可以知道,即使在代码中维护ETL在短期内看起来是可行的,但从长远来看,它只会带来更多的痛苦

    另一方面,如果您可以将250个PDI转换编码到1000行R,那么您的ETL可能会因为前任的糟糕设计而膨胀

    如果您想让我对您现有的PDI ETL结构发表意见,也可以进行安排


    汤姆

    谢谢你的回答,汤姆。我知道我的问题写得不好,即使在我脑子里构思了几个星期。你完全正确,我被误导了——我不知道我在做什么!这里的重点是,这是我的第一份工作。我知道如何使用R。我从未使用过ETL工具。看起来R做了ETL工具应该做的事情,加上对co的数据分析