FLINK SQLバッチ


<依存性> 
<依存性>
<のgroupId> org.apache.flink </のgroupId>
<たartifactId> FLINK・テーブルplanner_2.11 </たartifactId>
<バージョン> 1.9.0 </バージョン>
</依存>
<依存性>
< groupId> org.apache.flink </のgroupId>
<たartifactId> FLINKテーブル-API-Javaにbridge_2.11 </たartifactId>
<バージョン> 1.9.0 </バージョン>
</依存>
<依存性>
<のgroupId> ORG .apache.flink </のgroupId>
<たartifactId> FLINKテーブル-API-スカラ-bridge_2.11 </たartifactId>
<バージョン> 1.9.0 </バージョン>
</依存>
<依存>
<groupIdを> org.apache.flink </ groupIdを>
<たartifactId> FLINKストリーミング-scala_2.11 </たartifactId>
<バージョン> 1.9.0 </バージョン>
</依存>
<依存性>
<のgroupId> org.apache.flink </のgroupId>
<たartifactId> FLINK、卓上共通</たartifactId>
<バージョン> 1.9.0 </バージョン>
</依存関係>
</依存関係>




org.apache.flink.api.java.DataSetインポート、
インポートorg.apache.flink.api.java.ExecutionEnvironment;
インポートorg.apache.flink.table.api.Table;
インポートorg.apache.flink.table.api。 java.BatchTableEnvironmentは、

パブリッククラスFLinkSqlBatch {
公共の静的な無効メイン(文字列[]引数)が例外をスロー{
// 1)は、実行環境取得
ExecutionEnvironment = ExecutionEnvironment.getExecutionEnvironment ENVを();
BatchTableEnvironment tableEnv = BatchTableEnvironment.create(ENV);
/ **
1.csv *
*チャンネル、件名、REFER、REG、ORD、PV、UV
*友人、3人の被験者、H5,100,100,100,100の円
*友人、数学、H5,100,100,100,100の円
*お友達の輪、科学、H5,100,100,100,100
*友人、プログラミングのサークル、H5,100,100,100,100
*友人のサークル、英語、H5,100,100,100,100
*共通の友人のサークル、H5,100,100,100,100
* /
// 2)のデータを読み込むため
のDataSet <AdPojo> csvInput = ENV
.readCsvFile(「D:\ \コードが")\\ \\ \\ \\ 1.csvリソース\\ SRC \\ FLINK-SQLメイン学ぶ
最初の行無視// .ignoreFirstLine()
「、チャネル.pojoType(AdPojo.classを、"対象"" 、 "REFER"、 "REG"、 "ORD"、 "PV"、 "UV");

// 3)は、データセットテーブル変換し、TABLE1として登録する
表topScore = tableEnv.fromDataSet(csvInput);
tableEnv.registerTable( "TABLE1"、topScore);

// 4)カスタムSQL文の
表groupedByCountry = tableEnv.sqlQuery(「チャンネルを選択し 、主題、REG、TABLE1"からORD、PV、UV)を参照;
// 5)转换回セット
データセット<AdPojo>結果= tableEnv.toDataSet(groupedByCountry、AdPojo.class)。
// 6)打印
result.print()。
}
}




AdPojo {チャネル= '友人の輪'、被写体= '英語'、= 'H5'、REG参照= '100'、ORD = '100'、PV = '100'、UV =」100 '}
AdPojo {チャネル='友人のサークル、被写体= 'ユニバーサル'、= REFER 'H5'、REGを= '100'、ORD = '100'、PV = '100'、UV = '100'}
AdPojo {チャンネル= '友人の輪'、被写体= '3人の被験者'、= 'H5'、REG参照= '100'、ORD = '100'、PV = '100'、UV = '100'}
AdPojo {チャンネル= '友人の輪'、被写体= '科学' 、= 'H5'、REG = '100'、ORD = '100'、PV = '100'、UV = '100'} REFER
、AdPojo {チャンネル= '友人の輪'、被写体= '数学=' H5参照'REG =' 100 'ORD =' 100 'PV =' 100 'UV =' 100 '}
AdPojoチャンネル{='友人の輪がプログラム'=被験者' '参照='H5' 、REG = '100'、ORD = '100'、PV = '100'、UV = '100'}




おすすめ

転載: www.cnblogs.com/maoxiangyi/p/11586461.html