Re: sql hints 在寫入透過 hive 創建的表時沒有作用
Hi Caizhi, 我測試了 sink.rolling-policy.rollover-interval 這個配置,並且改使用 csv hive table 作為 sink table,結果是符合預期的。再次謝謝你的幫忙。 Tony Wei 於 2021年8月5日 週四 上午10:40寫道: > Hi, > > 感謝指正,我的目的是為了測試 sql hints 是否生效,選擇 `sink.parallelism` 是 > 單純因為這個配置比較好觀察結果。 > 我會再嘗試其他 hive streaming sink 的配置測試看看。謝謝。 > > Caizhi Weng 於 2021年8月5日 週四 上午10:36寫道: > >> Hi! >> >> 单独设置 sink 并发是 1.13 的新特性。可以升级到 1.13 试试看。 >> >> Tony Wei 于2021年8月5日周四 上午10:21写道: >> >> > Hi Experts, >> > >> > 我嘗試使用 sql hints 去覆寫 hive sink table 的配置,發現 sql hints 沒有生效。 >> > 我測試了修改 `sink.parallelism` 來調整寫入的並行度,但並行度仍舊為 `1`。(sql 任務配置的並行度) >> > >> > 我運行的環境版本是 Flink 1.12.2,底下是我在 flink sql client 的操作流程和結果的截圖。 >> > 寫入的 `user_hive_2` 表是透過 hive beeline 創建的,不是透過 flink sql ddl。 >> > 同時我也確認了 `table.dynamic-table-options.enabled` 的配置是啟用的。 >> > >> > 請問是否是我在配置上或是使用上弄錯了什麼嗎?感謝解答。 >> > >> > CREATE CATALOG MyCatalog >> >> WITH ( >> >> 'type' = 'hive', >> >> 'hive-conf-dir' = '/etc/hive/conf', >> >> 'hadoop-conf-dir' = '/etc/hadoop/conf' >> >> ); >> >> >> > >> > >> > CREATE TABLE gen_users ( >> >> name STRING, >> >> age INT >> >> ) WITH ( >> >> 'connector' = 'datagen', >> >> 'rows-per-second' = '50' >> >> ); >> > >> > >> > >> > insert into `MyCatalog`.`default`.`user_hive_2` /*+ >> >> OPTIONS('sink.parallelism'='2') */ select * from gen_users; >> > >> > >> > [image: Screen Shot 2021-08-04 at 4.33.20 PM.png] >> > [image: Screen Shot 2021-08-04 at 4.33.32 PM.png] >> > [image: Screen Shot 2021-08-04 at 4.34.13 PM.png] >> > >> > >> >
Re: sql hints 在寫入透過 hive 創建的表時沒有作用
Hi, 感謝指正,我的目的是為了測試 sql hints 是否生效,選擇 `sink.parallelism` 是 單純因為這個配置比較好觀察結果。 我會再嘗試其他 hive streaming sink 的配置測試看看。謝謝。 Caizhi Weng 於 2021年8月5日 週四 上午10:36寫道: > Hi! > > 单独设置 sink 并发是 1.13 的新特性。可以升级到 1.13 试试看。 > > Tony Wei 于2021年8月5日周四 上午10:21写道: > > > Hi Experts, > > > > 我嘗試使用 sql hints 去覆寫 hive sink table 的配置,發現 sql hints 沒有生效。 > > 我測試了修改 `sink.parallelism` 來調整寫入的並行度,但並行度仍舊為 `1`。(sql 任務配置的並行度) > > > > 我運行的環境版本是 Flink 1.12.2,底下是我在 flink sql client 的操作流程和結果的截圖。 > > 寫入的 `user_hive_2` 表是透過 hive beeline 創建的,不是透過 flink sql ddl。 > > 同時我也確認了 `table.dynamic-table-options.enabled` 的配置是啟用的。 > > > > 請問是否是我在配置上或是使用上弄錯了什麼嗎?感謝解答。 > > > > CREATE CATALOG MyCatalog > >> WITH ( > >> 'type' = 'hive', > >> 'hive-conf-dir' = '/etc/hive/conf', > >> 'hadoop-conf-dir' = '/etc/hadoop/conf' > >> ); > >> > > > > > > CREATE TABLE gen_users ( > >> name STRING, > >> age INT > >> ) WITH ( > >> 'connector' = 'datagen', > >> 'rows-per-second' = '50' > >> ); > > > > > > > > insert into `MyCatalog`.`default`.`user_hive_2` /*+ > >> OPTIONS('sink.parallelism'='2') */ select * from gen_users; > > > > > > [image: Screen Shot 2021-08-04 at 4.33.20 PM.png] > > [image: Screen Shot 2021-08-04 at 4.33.32 PM.png] > > [image: Screen Shot 2021-08-04 at 4.34.13 PM.png] > > > > >
Re: sql hints 在寫入透過 hive 創建的表時沒有作用
Hi! 单独设置 sink 并发是 1.13 的新特性。可以升级到 1.13 试试看。 Tony Wei 于2021年8月5日周四 上午10:21写道: > Hi Experts, > > 我嘗試使用 sql hints 去覆寫 hive sink table 的配置,發現 sql hints 沒有生效。 > 我測試了修改 `sink.parallelism` 來調整寫入的並行度,但並行度仍舊為 `1`。(sql 任務配置的並行度) > > 我運行的環境版本是 Flink 1.12.2,底下是我在 flink sql client 的操作流程和結果的截圖。 > 寫入的 `user_hive_2` 表是透過 hive beeline 創建的,不是透過 flink sql ddl。 > 同時我也確認了 `table.dynamic-table-options.enabled` 的配置是啟用的。 > > 請問是否是我在配置上或是使用上弄錯了什麼嗎?感謝解答。 > > CREATE CATALOG MyCatalog >> WITH ( >> 'type' = 'hive', >> 'hive-conf-dir' = '/etc/hive/conf', >> 'hadoop-conf-dir' = '/etc/hadoop/conf' >> ); >> > > > CREATE TABLE gen_users ( >> name STRING, >> age INT >> ) WITH ( >> 'connector' = 'datagen', >> 'rows-per-second' = '50' >> ); > > > > insert into `MyCatalog`.`default`.`user_hive_2` /*+ >> OPTIONS('sink.parallelism'='2') */ select * from gen_users; > > > [image: Screen Shot 2021-08-04 at 4.33.20 PM.png] > [image: Screen Shot 2021-08-04 at 4.33.32 PM.png] > [image: Screen Shot 2021-08-04 at 4.34.13 PM.png] > >
sql hints 在寫入透過 hive 創建的表時沒有作用
Hi Experts, 我嘗試使用 sql hints 去覆寫 hive sink table 的配置,發現 sql hints 沒有生效。 我測試了修改 `sink.parallelism` 來調整寫入的並行度,但並行度仍舊為 `1`。(sql 任務配置的並行度) 我運行的環境版本是 Flink 1.12.2,底下是我在 flink sql client 的操作流程和結果的截圖。 寫入的 `user_hive_2` 表是透過 hive beeline 創建的,不是透過 flink sql ddl。 同時我也確認了 `table.dynamic-table-options.enabled` 的配置是啟用的。 請問是否是我在配置上或是使用上弄錯了什麼嗎?感謝解答。 CREATE CATALOG MyCatalog > WITH ( > 'type' = 'hive', > 'hive-conf-dir' = '/etc/hive/conf', > 'hadoop-conf-dir' = '/etc/hadoop/conf' > ); > CREATE TABLE gen_users ( > name STRING, > age INT > ) WITH ( > 'connector' = 'datagen', > 'rows-per-second' = '50' > ); insert into `MyCatalog`.`default`.`user_hive_2` /*+ > OPTIONS('sink.parallelism'='2') */ select * from gen_users; [image: Screen Shot 2021-08-04 at 4.33.20 PM.png] [image: Screen Shot 2021-08-04 at 4.33.32 PM.png] [image: Screen Shot 2021-08-04 at 4.34.13 PM.png]