You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hop.apache.org by ha...@apache.org on 2021/04/30 09:37:36 UTC
[incubator-hop] branch master updated: HOP-2391 : Created
transforms for Clone Rows, Mondrian Closure Generator
This is an automated email from the ASF dual-hosted git repository.
hansva pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-hop.git
The following commit(s) were added to refs/heads/master by this push:
new 5fbe858 HOP-2391 : Created transforms for Clone Rows, Mondrian Closure Generator
new 1ea8170 Merge pull request #779 from sauru22/master
5fbe858 is described below
commit 5fbe8587a6070bb08ef37f44c881d79dca10db52
Author: Saurabh Deshmukh <sa...@bt.com>
AuthorDate: Thu Apr 29 17:57:05 2021 +0100
HOP-2391 : Created transforms for Clone Rows, Mondrian Closure Generator
---
.../clonerow/src/main/samples/Clone row.hpl | 161 +++++++++++++
.../main/samples/Closure Generator - Sample.hpl | 254 +++++++++++++++++++++
2 files changed, 415 insertions(+)
diff --git a/plugins/transforms/clonerow/src/main/samples/Clone row.hpl b/plugins/transforms/clonerow/src/main/samples/Clone row.hpl
new file mode 100644
index 0000000..eb1f6e6
--- /dev/null
+++ b/plugins/transforms/clonerow/src/main/samples/Clone row.hpl
@@ -0,0 +1,161 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<pipeline>
+ <info>
+ <name>Clone row</name>
+ <name_sync_with_filename>Y</name_sync_with_filename>
+ <description/>
+ <extended_description/>
+ <pipeline_version/>
+ <pipeline_type>Normal</pipeline_type>
+ <parameters>
+ </parameters>
+ <capture_transform_performance>N</capture_transform_performance>
+ <transform_performance_capturing_delay>1000</transform_performance_capturing_delay>
+ <transform_performance_capturing_size_limit>100</transform_performance_capturing_size_limit>
+ <created_user>-</created_user>
+ <created_date>2021/04/29 12:59:13.792</created_date>
+ <modified_user>-</modified_user>
+ <modified_date>2021/04/29 12:59:13.792</modified_date>
+ <key_for_session_key/>
+ <is_key_private>N</is_key_private>
+ </info>
+ <notepads>
+ <notepad>
+ <note>Copy rows generated with clone rows.
+Description of Flagfield denoted below
+>> N : it’s the original row
+>> Y : cloned row, a copy of the original row</note>
+ <xloc>384</xloc>
+ <yloc>32</yloc>
+ <width>248</width>
+ <heigth>74</heigth>
+ <fontname>Segoe UI</fontname>
+ <fontsize>9</fontsize>
+ <fontbold>N</fontbold>
+ <fontitalic>N</fontitalic>
+ <fontcolorred>14</fontcolorred>
+ <fontcolorgreen>58</fontcolorgreen>
+ <fontcolorblue>90</fontcolorblue>
+ <backgroundcolorred>201</backgroundcolorred>
+ <backgroundcolorgreen>232</backgroundcolorgreen>
+ <backgroundcolorblue>251</backgroundcolorblue>
+ <bordercolorred>14</bordercolorred>
+ <bordercolorgreen>58</bordercolorgreen>
+ <bordercolorblue>90</bordercolorblue>
+ </notepad>
+ </notepads>
+ <order>
+ <hop>
+ <from>Generate rows</from>
+ <to>Add sequence</to>
+ <enabled>Y</enabled>
+ </hop>
+ <hop>
+ <from>Add sequence</from>
+ <to>Clone row</to>
+ <enabled>Y</enabled>
+ </hop>
+ </order>
+ <transform>
+ <name>Clone row</name>
+ <type>CloneRow</type>
+ <description/>
+ <distribute>Y</distribute>
+ <custom_distribution/>
+ <copies>1</copies>
+ <partitioning>
+ <method>none</method>
+ <schema_name/>
+ </partitioning>
+ <nrclones>2</nrclones>
+ <addcloneflag>Y</addcloneflag>
+ <cloneflagfield>Flagfield</cloneflagfield>
+ <nrcloneinfield>N</nrcloneinfield>
+ <nrclonefield/>
+ <addclonenum>N</addclonenum>
+ <clonenumfield/>
+ <attributes/>
+ <GUI>
+ <xloc>624</xloc>
+ <yloc>144</yloc>
+ </GUI>
+ </transform>
+ <transform>
+ <name>Add sequence</name>
+ <type>Sequence</type>
+ <description/>
+ <distribute>Y</distribute>
+ <custom_distribution/>
+ <copies>1</copies>
+ <partitioning>
+ <method>none</method>
+ <schema_name/>
+ </partitioning>
+ <valuename>valuename</valuename>
+ <use_database>N</use_database>
+ <connection/>
+ <schema/>
+ <seqname>SEQ_</seqname>
+ <use_counter>Y</use_counter>
+ <counter_name/>
+ <start_at>1</start_at>
+ <increment_by>1</increment_by>
+ <max_value>999999999</max_value>
+ <attributes/>
+ <GUI>
+ <xloc>480</xloc>
+ <yloc>144</yloc>
+ </GUI>
+ </transform>
+ <transform>
+ <name>Generate rows</name>
+ <type>RowGenerator</type>
+ <description/>
+ <distribute>Y</distribute>
+ <custom_distribution/>
+ <copies>1</copies>
+ <partitioning>
+ <method>none</method>
+ <schema_name/>
+ </partitioning>
+ <fields>
+ <field>
+ <name>quote</name>
+ <type>String</type>
+ <format/>
+ <currency/>
+ <decimal/>
+ <group/>
+ <nullif>Cloning is great. If God made the original, then making copies should be fine.</nullif>
+ <length>-1</length>
+ <precision>-1</precision>
+ <set_empty_string>N</set_empty_string>
+ </field>
+ <field>
+ <name>created_date</name>
+ <type>Date</type>
+ <format>yyyy/MM/dd HH:mm:ss</format>
+ <currency/>
+ <decimal/>
+ <group/>
+ <nullif>2021/04/29 13:05:45</nullif>
+ <length>-1</length>
+ <precision>-1</precision>
+ <set_empty_string>N</set_empty_string>
+ </field>
+ </fields>
+ <limit>5</limit>
+ <never_ending>N</never_ending>
+ <interval_in_ms>5000</interval_in_ms>
+ <row_time_field>now</row_time_field>
+ <last_time_field>FiveSecondsAgo</last_time_field>
+ <attributes/>
+ <GUI>
+ <xloc>336</xloc>
+ <yloc>144</yloc>
+ </GUI>
+ </transform>
+ <transform_error_handling>
+ </transform_error_handling>
+ <attributes/>
+</pipeline>
diff --git a/plugins/transforms/closure/src/main/samples/Closure Generator - Sample.hpl b/plugins/transforms/closure/src/main/samples/Closure Generator - Sample.hpl
new file mode 100644
index 0000000..35ae510
--- /dev/null
+++ b/plugins/transforms/closure/src/main/samples/Closure Generator - Sample.hpl
@@ -0,0 +1,254 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<pipeline>
+ <info>
+ <name>Closure Generator - Sample</name>
+ <name_sync_with_filename>Y</name_sync_with_filename>
+ <description/>
+ <extended_description/>
+ <pipeline_version/>
+ <pipeline_type>Normal</pipeline_type>
+ <parameters>
+ </parameters>
+ <capture_transform_performance>N</capture_transform_performance>
+ <transform_performance_capturing_delay>1000</transform_performance_capturing_delay>
+ <transform_performance_capturing_size_limit>100</transform_performance_capturing_size_limit>
+ <created_user>-</created_user>
+ <created_date>2021/04/29 13:15:08.242</created_date>
+ <modified_user>-</modified_user>
+ <modified_date>2021/04/29 13:15:08.242</modified_date>
+ <key_for_session_key/>
+ <is_key_private>N</is_key_private>
+ </info>
+ <notepads>
+ <notepad>
+ <note>Generate a Reflexive Transitive Closure Table for Mondrian</note>
+ <xloc>368</xloc>
+ <yloc>128</yloc>
+ <width>314</width>
+ <heigth>26</heigth>
+ <fontname>Segoe UI</fontname>
+ <fontsize>9</fontsize>
+ <fontbold>N</fontbold>
+ <fontitalic>N</fontitalic>
+ <fontcolorred>14</fontcolorred>
+ <fontcolorgreen>58</fontcolorgreen>
+ <fontcolorblue>90</fontcolorblue>
+ <backgroundcolorred>201</backgroundcolorred>
+ <backgroundcolorgreen>232</backgroundcolorgreen>
+ <backgroundcolorblue>251</backgroundcolorblue>
+ <bordercolorred>14</bordercolorred>
+ <bordercolorgreen>58</bordercolorgreen>
+ <bordercolorblue>90</bordercolorblue>
+ </notepad>
+ </notepads>
+ <order>
+ <hop>
+ <from>Input Data</from>
+ <to>Closure generator</to>
+ <enabled>Y</enabled>
+ </hop>
+ <hop>
+ <from>Closure generator</from>
+ <to>Sort rows</to>
+ <enabled>Y</enabled>
+ </hop>
+ </order>
+ <transform>
+ <name>Closure generator</name>
+ <type>ClosureGenerator</type>
+ <description/>
+ <distribute>Y</distribute>
+ <custom_distribution/>
+ <copies>1</copies>
+ <partitioning>
+ <method>none</method>
+ <schema_name/>
+ </partitioning>
+ <parent_id_field>manager_id</parent_id_field>
+ <child_id_field>emp_id</child_id_field>
+ <distance_field>distance</distance_field>
+ <is_root_zero>N</is_root_zero>
+ <attributes/>
+ <GUI>
+ <xloc>496</xloc>
+ <yloc>208</yloc>
+ </GUI>
+ </transform>
+ <transform>
+ <name>Input Data</name>
+ <type>DataGrid</type>
+ <description/>
+ <distribute>Y</distribute>
+ <custom_distribution/>
+ <copies>1</copies>
+ <partitioning>
+ <method>none</method>
+ <schema_name/>
+ </partitioning>
+ <fields>
+ <field>
+ <name>emp_id</name>
+ <type>Integer</type>
+ <format/>
+ <currency/>
+ <decimal/>
+ <group/>
+ <length>-1</length>
+ <precision>-1</precision>
+ <set_empty_string>N</set_empty_string>
+ </field>
+ <field>
+ <name>manager_id</name>
+ <type>Integer</type>
+ <format/>
+ <currency/>
+ <decimal/>
+ <group/>
+ <length>-1</length>
+ <precision>-1</precision>
+ <set_empty_string>N</set_empty_string>
+ </field>
+ <field>
+ <name>emp_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>68319</item>
+ <item> </item>
+ <item>KAYLING</item>
+ </line>
+ <line>
+ <item>66928</item>
+ <item>68319</item>
+ <item>BLAZE</item>
+ </line>
+ <line>
+ <item>67832</item>
+ <item>68319</item>
+ <item>CLARE</item>
+ </line>
+ <line>
+ <item>65646</item>
+ <item>68319</item>
+ <item>JONAS</item>
+ </line>
+ <line>
+ <item>67858</item>
+ <item>65646</item>
+ <item>SCARLET</item>
+ </line>
+ <line>
+ <item>69062</item>
+ <item>65646</item>
+ <item>FRANK</item>
+ </line>
+ <line>
+ <item>63679</item>
+ <item>69062</item>
+ <item>SANDRINE</item>
+ </line>
+ <line>
+ <item>64989</item>
+ <item>66928</item>
+ <item>ADELYN</item>
+ </line>
+ <line>
+ <item>65271</item>
+ <item>66928</item>
+ <item>WADE</item>
+ </line>
+ <line>
+ <item>66564</item>
+ <item>66928</item>
+ <item>MADDEN</item>
+ </line>
+ <line>
+ <item>68454</item>
+ <item>66928</item>
+ <item>TUCKER</item>
+ </line>
+ <line>
+ <item>68736</item>
+ <item>67858</item>
+ <item>ADNRES</item>
+ </line>
+ <line>
+ <item>69000</item>
+ <item>66928</item>
+ <item>JULIUS</item>
+ </line>
+ <line>
+ <item>69324</item>
+ <item>67832</item>
+ <item>MARKER</item>
+ </line>
+ </data>
+ <attributes/>
+ <GUI>
+ <xloc>352</xloc>
+ <yloc>208</yloc>
+ </GUI>
+ </transform>
+ <transform>
+ <name>Sort rows</name>
+ <type>SortRows</type>
+ <description/>
+ <distribute>Y</distribute>
+ <custom_distribution/>
+ <copies>1</copies>
+ <partitioning>
+ <method>none</method>
+ <schema_name/>
+ </partitioning>
+ <directory>${java.io.tmpdir}</directory>
+ <prefix>out</prefix>
+ <sort_size>5400</sort_size>
+ <free_memory/>
+ <compress>N</compress>
+ <compress_variable/>
+ <unique_rows>N</unique_rows>
+ <fields>
+ <field>
+ <name>manager_id</name>
+ <ascending>Y</ascending>
+ <case_sensitive>N</case_sensitive>
+ <collator_enabled>N</collator_enabled>
+ <collator_strength>0</collator_strength>
+ <presorted>N</presorted>
+ </field>
+ <field>
+ <name>emp_id</name>
+ <ascending>Y</ascending>
+ <case_sensitive>N</case_sensitive>
+ <collator_enabled>N</collator_enabled>
+ <collator_strength>0</collator_strength>
+ <presorted>N</presorted>
+ </field>
+ <field>
+ <name>distance</name>
+ <ascending>Y</ascending>
+ <case_sensitive>N</case_sensitive>
+ <collator_enabled>N</collator_enabled>
+ <collator_strength>0</collator_strength>
+ <presorted>N</presorted>
+ </field>
+ </fields>
+ <attributes/>
+ <GUI>
+ <xloc>624</xloc>
+ <yloc>208</yloc>
+ </GUI>
+ </transform>
+ <transform_error_handling>
+ </transform_error_handling>
+ <attributes/>
+</pipeline>