从SSIS包执行R脚本

Ami*_*gle 6 ssis r

我想从SSIS包中执行R代码.如何添加执行R代码的数据控制步骤?SSIS仅支持vb.net和asp.net.

SSIS有许多可用的数据转换,但R在数据处理方面非常友好.

我想从SSIS脚本或其他方式运行R代码.基本上,我正在尝试将R集成到ETL过程中.

我想从CSV文件中提取数据(E).

在R中转换(T)它并在Microsoft数据库中加载(L)它.是否可以通过使用SSIS数据控制项执行R脚本来在SSIS包中完成此工作流程?谢谢!

sor*_*ell 6

您可以通过以下几种方法将R集成到ETL过程中.

  1. 原油,快速和脏 - 在控制流程中执行流程任务.这类似于从命令行调用RScript.您可能会进行转换,将其保存到磁盘上的文件中,然后从执行流程任务中获取该文件名,以便将其提供给数据流任务.好处是你保持你的R清洁并与你的C#/ VB分开.

  2. 通过Rdotnet集成 - 您可以使用RDotNet库(我相信,还没有尝试集成它).您需要在GAC中注册DLL,然后您可以在SSIS脚本中使用.NET对象或直接调用R脚本.

  3. 集成在SQL Server 2016中 - Microsoft通过扩展存储过程添加了R支持.您通过存储过程调用R脚本并使用sql查询输入数据并可以存储输出.在这里查看更多细节.这意味着在SSIS中使用执行SQL任务.