全部產品
Search
文件中心

Platform For AI:合并列

更新時間:Jul 13, 2024

合并列演算法組件是將兩張表的資料按列合并,需要表的行數保持一致,否則報錯。如果兩張表只有一張存在分區,則分區表需要串連第二個輸入連接埠。

組件配置

您可以使用以下任意一種方式,配置合并列組件參數。

方式一:可視化方式

選取左表待合并的欄位列,產生結果儲存到右輸入表的指定列。組件配置

方式二:PAI命令方式

使用PAI命令方式,配置該組件參數。您可以使用SQL指令碼組件進行PAI命令調用,詳情請參見SQL指令碼
PAI -name appendColumns
    -project algo_public
    -DinputTableNames=maple_test_appendcol_basic_input1,maple_test_appendcol_basic_input2
    -DoutputTableName=maple_test_appendcol_setOutCol_output
    -DoutputTableColNames=x0,x1,x2,x3,x4,x5,x6,x7,x8,x9;
參數名稱是否必選參數描述預設值
inputTableNames輸入表的表名,兩個表以逗號(,)分隔。
outputTableName輸出表的名稱
selectedColNamesList與輸入表對應的已選中的列名列表:
  • 同一個表的各列按半形逗號(,)分隔。
  • 不同表的各列按照半形分號(;)分隔。
說明 如果選擇兩張表所有的列,整個參數內容需用半形引號("")括起來,否則半形分號(;)會被系統作為結束標誌。如果某張表全選,可以省略所有列名,但必須保留相應的半形分號(;)。
inputPartitionsInfoList與輸入表對應的已選擇的partition列表:
  • 同一個表的各partition按照正斜線(/)分隔。
  • 不同表的partition按照半形分號(;)分隔。
說明 如果選中所有partition,整個參數內容需要使用半形引號("")括起來,否則半形分號(;)會被系統當做結束標誌。如果某張表不用按照partition分割,則可省略所有partition名,但相應半形分號(;)必須保留。
autoRenameCol輸出表各列是否自動命名。false
outputTableColNames輸出表中各列的新列名,不填則輸出原表中選擇列的列名。
重要 如果autoRenameCol為True時,則該參數無意義。
lifecycle輸出表的生命週期,取值範圍為正整數。
coreNum節點個數,與參數memSizePerCore配對使用,正整數,取值範圍[1, 9999]預設系統自動計算
memSizePerCore單個節點記憶體大小,單位MB,正整數,取值範圍[1024, 64*1024]。預設系統自動計算

樣本

將以下兩張源表進行合并列操作:
  • 源表1
    表 1. maple_test_appendcol_basic_input1
    col0:bigintcol1:doublecol2:stringcol3:Datetimecol4:Boolean
    100.0aaaa2015-10-01 00:00:00TRUE
    111.0aaaa2015-10-01 00:00:00FALSE
    122.0aaaa2015-10-01 00:00:00TRUE
    133.0aaaa2015-10-01 00:00:00TRUE
    144.0aaaa2015-10-01 00:00:00TRUE
  • 源表2
    表 2. maple_test_appendcol_basic_input2
    col10:bigintcol11:doublecol12:stringcol13:Datetimecol14:Boolean
    11010.02aaaa2015-10-01 00:00:00TRUE
    11111.02aaaa2015-10-01 00:00:00FALSE
    11212.02aaaa2015-10-01 00:00:00TRUE
    11313.02aaaa2015-10-01 00:00:00TRUE
    11414.02aaaa2015-10-01 00:00:00FALSE
使用如下PAI命令列將上述兩張源表進行合并列。
PAI -name appendColumns
    -project algo_public
    -DinputTableNames=maple_test_appendcol_basic_input1,maple_test_appendcol_basic_input2
    -DoutputTableName=maple_test_appendcol_setOutCol_output
    -DoutputTableColNames=x0,x1,x2,x3,x4,x5,x6,x7,x8,x9;
最終的輸出表如下所示。
表 3. maple_test_appendcol_setOutCol_output
x0x1x2x3x4x5x6x7x8x9
100aaaa2015-10-01 00:00:00true110102aaaa2015-10-01 00:00:00true
111aaaa2015-10-01 00:00:00false111112aaaa2015-10-01 00:00:00false
122aaaa2015-10-01 00:00:00true112122aaaa2015-10-01 00:00:00true
133aaaa2015-10-01 00:00:00true113132aaaa2015-10-01 00:00:00true
144aaaa2015-10-01 00:00:00true114142aaaa2015-10-01 00:00:00false