Pentaho 与 REST 的数据集成
Posted
技术标签:
【中文标题】Pentaho 与 REST 的数据集成【英文标题】:Pentaho data integration with REST 【发布时间】:2011-07-28 19:48:00 【问题描述】:我正在尝试使用 un/pwd 身份验证通过 SSL 连接到 REST API。我可以浏览 URL - 但是当我运行该作业时,什么也没有发生。本质上我只是想连接到他的服务器并将数据输出到一个 xml 文件中。
提前谢谢你
工作:
<?xml version="1.0" encoding="UTF-8"?>
<transformation-steps>
<steps>
<step>
<name>REST Client</name>
<type>Rest</type>
<description/>
<distribute>Y</distribute>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<method>GET</method>
<url>https://blah/services/companies</url>
<urlInField>N</urlInField>
<dynamicMethod>N</dynamicMethod>
<methodFieldName/>
<urlField/>
<bodyField/>
<httpLogin>tbrown</httpLogin>
<httpPassword></httpPassword>
<httpPassword>Encrypted 2be98afc86aa7f2e4fa498679d99a9cce</httpPassword>
<proxyHost/>
<proxyPort/>
<preemptive>N</preemptive>
<trustStoreFile/>
<trustStorePassword/>
<headers>
</headers>
<parameters>
</parameters>
<result>
<name>REST3_DATA</name>
<code>REST3_STATUS</code>
<response_time/>
</result>
<cluster_schema/>
<remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
<xloc>114</xloc>
<yloc>185</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<name>XML Output</name>
<type>XMLOutput</type>
<description/>
<distribute>Y</distribute>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<encoding>UTF-8</encoding>
<name_space/>
<xml_main_element>Rows</xml_main_element>
<xml_repeat_element>Row</xml_repeat_element>
<file>
<name>C:\temp\output.txt</name>
<extention>xml</extention>
<servlet_output>N</servlet_output>
<do_not_open_newfile_init>N</do_not_open_newfile_init>
<split>N</split>
<add_date>N</add_date>
<add_time>N</add_time>
<SpecifyFormat>N</SpecifyFormat>
<omit_null_values>N</omit_null_values>
<date_time_format/>
<add_to_result_filenames>N</add_to_result_filenames>
<zipped>N</zipped>
<splitevery>0</splitevery>
</file>
<fields>
<field>
<name>REST3_DATA</name>
<element>DATA</element>
<type>-</type>
<format/>
<currency/>
<decimal/>
<group/>
<nullif/>
<length>-1</length>
<precision>-1</precision>
</field>
<field>
<name>REST3_STATUS</name>
<element/>
<type>Integer</type>
<format/>
<currency/>
<decimal/>
<group/>
<nullif/>
<length>-1</length>
<precision>0</precision>
</field>
</fields>
<cluster_schema/>
<remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
<xloc>332</xloc>
<yloc>174</yloc>
<draw>Y</draw>
</GUI>
</step>
</steps>
<order>
<hop> <from>REST Client</from><to>XML Output</to><enabled>Y</enabled> </hop>
</order>
<notepads>
</notepads>
</transformation-steps>
日志:
2011/07/28 15:42:10 - 转换元数据 - 我们有 0 连接... 2011/07/28 15:42:10 - 转换元数据 - 阅读 2 个步骤... 2011/07/28 15:42:10 - 转换元数据 - 查看 步骤 #0 2011/07/28 15:42:10 - 转换元数据 - 查看 步骤 #1 2011/07/28 15:42:10 - 转换元数据 - 我们有 1 啤酒花... 2011/07/28 15:42:10 - 转换元数据 - 看啤酒花
0 2011/07/28 15:42:10 - 转换元数据 - 读取的步骤数:
2 2011/07/28 15:42:10 - 转换元数据 - 读取的跃点数:1 2011/07/28 15:42:10 - 勺子 - 改造开启。 2011/07/28 15:42:10 - Spoon - 启动改造[测试]... 2011/07/28 15:42:10 - Spoon - 开始执行转换。 2011/07/28 15:42:10 - 测试 - 开始调度转换 [测试] 2011/07/28 15:42:10 - 测试 - 检测到的参数数量:0 2011/07/28 15:42:10 - 测试 - 这不是重播转换 2011/07/28 15:42:10 - 转换元数据 - 自然排序的步骤在 0 毫秒(计算前一步的 1 时间)2011/07/28 15:42:10 - 测试 - 我发现了 2 个不同的启动步骤。 2011/07/28 15:42:10 - 测试 - 分配行集... 2011/07/28 15:42:10 - 测试 - 分配行集 对于第 0 步 --> REST 客户端 2011/07/28 15:42:10 - 测试 - prevcopies = 1、nextcopies=1 2011/07/28 15:42:10 - 测试 - 转换分配 新行集 [REST Client.0 - XML Output.0] 2011/07/28 15:42:10 - 测试 - 为步骤 0 分配 1 个行集 --> REST 客户端 2011/07/28 15:42:10 - 测试 - 为第 1 步分配行集 --> XML 输出 2011/07/28 15:42:10 - 测试 - 为第 1 步分配了 1 个行集 --> XML 输出 2011/07/28 15:42:10 - 测试 - 分配步骤和 StepData... 2011/07/28 15:42:10 - 测试 - 转换即将分配步骤 [REST [Rest] 类型的客户端] 2011/07/28 15:42:10 - 测试 - 步骤有 nrcopies=1 2011/07/28 15:42:10 - REST Client.0 - 分发 激活 2011/07/28 15:42:10 - REST Client.0 - 开始分配 缓冲区和新线程... 2011/07/28 15:42:10 - REST Client.0 - 步骤 信息:nrinput=0 nroutput=1 2011/07/28 15:42:10 - REST Client.0 - 输出相对。是 1:1 2011/07/28 15:42:10 - REST Client.0 - 找到输出 行集 [REST Client.0 - XML Output.0] 2011/07/28 15:42:10 - REST Client.0 - 完成调度 2011/07/28 15:42:10 - 测试 - 转型又分了新台阶:【REST客户端】.0 2011/07/28 15:42:10 - 测试 - 转换即将分配步骤 [XML [XMLOutput] 类型的输出] 2011/07/28 15:42:10 - 测试 - 步骤有 nrcopies=1 2011/07/28 15:42:10 - XML Output.0 - 分发已激活 2011/07/28 15:42:10 - XML Output.0 - 开始分配缓冲区和 新线程... 2011/07/28 15:42:10 - XML Output.0 - 步骤信息: nrinput=1 nroutput=0 2011/07/28 15:42:10 - XML Output.0 - 上一个 从 [XML 输出] #0 开始 --> REST 客户端 2011/07/28 15:42:10 - XML Output.0 - 输入 rel 为 1:1 2011/07/28 15:42:10 - XML Output.0 - 找到 输入行集 [REST Client.0 - XML Output.0] 2011/07/28 15:42:10 - XML Output.0 - 完成调度 2011/07/28 15:42:10 - 测试 - 转型又分了新台阶:【XML输出】.0 2011/07/28 15:42:10 - 测试 - 这个转换可以通过回放来回放 日期:2011/07/28 15:42:10 2011/07/28 15:42:10 - 测试 - 初始化 2 步骤... 2011/07/28 15:42:10 - REST Client.0 - 在从属服务器上运行
0/1。 2011/07/28 15:42:10 - XML Output.0 - 在从属服务器上运行
0/1。 2011/07/28 15:42:10 - XML Output.0 - 在中打开输出流
编码:UTF-8 2011/07/28 15:42:10 - 测试 - 步骤 [REST Client.0] 初始化完美。 2011/07/28 15:42:10 - 测试 - 步骤 [XML Output.0] 完美初始化。 2011/07/28 15:42:10 - 测试 - 转换已分配 2 个线程和 1 个行集。 2011/07/28 15:42:10 - REST Client.0 - 开始运行... 2011/07/28 15:42:10 - REST Client.0 - 向 1 个输出行集发出“输出完成”信号。 2011/07/28 15:42:10 - XML Output.0 - 开始运行... 2011/07/28 15:42:10 - REST Client.0 - 完成处理(I=0, O=0, R=0, W=0, U=0,E=0) 2011/07/28 15:42:10 - XML Output.0 - 发出“输出完成”信号 到 0 个输出行集。 2011/07/28 15:42:10 - XML Output.0 - 完成 处理 (I=0, O=0, R=0, W=0, U=0, E=0) 2011/07/28 15:42:10 - Spoon - 变身完成!!
【问题讨论】:
【参考方案1】:这是一个老问题,但我想如果有人偶然发现此页面,我会提出建议。
确保您将生成行步骤作为第一步,因为您无法使用 REST 客户端步骤开始转换,因为它是查找步骤而不是输入步骤。
【讨论】:
以上是关于Pentaho 与 REST 的数据集成的主要内容,如果未能解决你的问题,请参考以下文章
工程师手记 | 数据科学专题第三篇:Pentaho数据集成(PDI)与Python和模型管理
如何检查 cassandra 与 pentaho 数据集成器的连接
Pentaho 数据集成:与 MS SQL Server 的 jdbc 连接不起作用