我正在使用Pentaho數據集成,我創建了一個新的轉換,我有2個步驟.... 1是我的數據的CSV文件,第二個是Excel文件,兩列一個是是州名和其他排序形式的州名稱,例如(「紐約」「紐約」)Pentaho數據集成映射
在我的CSV文件中我有一個狀態列與狀態名稱「紐約」我想要使用我的excel文件來映射「紐約」與「紐約」
我已經搜索了這一整天沒有明確的答案......任何人都可以幫忙嗎?
我正在使用Pentaho數據集成,我創建了一個新的轉換,我有2個步驟.... 1是我的數據的CSV文件,第二個是Excel文件,兩列一個是是州名和其他排序形式的州名稱,例如(「紐約」「紐約」)Pentaho數據集成映射
在我的CSV文件中我有一個狀態列與狀態名稱「紐約」我想要使用我的excel文件來映射「紐約」與「紐約」
我已經搜索了這一整天沒有明確的答案......任何人都可以幫忙嗎?
您可以使用值映射器對象。值映射器將字符串值從一個值映射到另一個值。這裏是值映射器對象的幫助鏈接 http://wiki.pentaho.com/display/EAI/Value+Mapper
您可以使用Merge Join。使用這個你可以合併這兩個文件並選擇所需的列。在合併之前,您必須根據用於映射的字段對這些文件進行排序。在你的情況下,它將是state name
。
我建議你使用流查找來完成這個任務。檢查附加的測試轉換。它會完成你的任務。
<?xml version="1.0" encoding="UTF-8"?>
<transformation-steps>
<steps>
<step>
<name>EXCEL</name>
<type>DataGrid</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<fields>
<field>
<name>State</name>
<type>String</type>
<format/>
<currency/>
<decimal/>
<group/>
<length>-1</length>
<precision>-1</precision>
<set_empty_string>N</set_empty_string>
</field>
<field>
<name>Short_state</name>
<type>String</type>
<format/>
<currency/>
<decimal/>
<group/>
<length>-1</length>
<precision>-1</precision>
<set_empty_string>N</set_empty_string>
</field>
</fields>
<data>
<line> <item>New York</item><item>TX</item> </line>
<line> <item>Texas</item><item>TX</item> </line>
</data>
<cluster_schema/>
<remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
<xloc>392</xloc>
<yloc>80</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<name>CSV</name>
<type>DataGrid</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<fields>
<field>
<name>Full_state_name</name>
<type>String</type>
<format/>
<currency/>
<decimal/>
<group/>
<length>-1</length>
<precision>-1</precision>
<set_empty_string>N</set_empty_string>
</field>
</fields>
<data>
<line> <item>New York</item> </line>
<line> <item>Texas</item> </line>
</data>
<cluster_schema/>
<remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
<xloc>511</xloc>
<yloc>169</yloc>
<draw>Y</draw>
</GUI>
</step>
<step>
<name>Stream lookup</name>
<type>StreamLookup</type>
<description/>
<distribute>Y</distribute>
<custom_distribution/>
<copies>1</copies>
<partitioning>
<method>none</method>
<schema_name/>
</partitioning>
<from>EXCEL</from>
<input_sorted>N</input_sorted>
<preserve_memory>Y</preserve_memory>
<sorted_list>N</sorted_list>
<integer_pair>N</integer_pair>
<lookup>
<key>
<name>Full_state_name</name>
<field>State</field>
</key>
<value>
<name>State</name>
<rename>State</rename>
<default/>
<type>String</type>
</value>
<value>
<name>Short_state</name>
<rename>Short_state</rename>
<default/>
<type>String</type>
</value>
</lookup>
<cluster_schema/>
<remotesteps> <input> </input> <output> </output> </remotesteps> <GUI>
<xloc>510</xloc>
<yloc>79</yloc>
<draw>Y</draw>
</GUI>
</step>
</steps>
<order>
<hop> <from>EXCEL</from><to>Stream lookup</to><enabled>Y</enabled> </hop>
<hop> <from>CSV</from><to>Stream lookup</to><enabled>Y</enabled> </hop>
</order>
<notepads>
</notepads>
<step_error_handling>
</step_error_handling>
</transformation-steps>
它已經有一段時間,因爲我用它,但我敢肯定有一個「看,向上」的步驟,不正是你想要做的事。 – Cfreak 2012-07-24 18:59:33
感謝Cfreak,我會研究它。 – user979331 2012-07-24 19:25:09
您想要的特定聲音就是Stream Lookup。 – 2012-12-21 23:49:02