這篇文章主要為大家展示了“hive執(zhí)行spark任務(wù)的示例分析”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“hive執(zhí)行spark任務(wù)的示例分析”這篇文章吧。
站在用戶的角度思考問題,與客戶深入溝通,找到安慶網(wǎng)站設(shè)計與安慶網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個性化、用戶體驗(yàn)好的作品,建站類型包括:網(wǎng)站設(shè)計制作、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、主機(jī)域名、網(wǎng)絡(luò)空間、企業(yè)郵箱。業(yè)務(wù)覆蓋安慶地區(qū)。
public static void main(String[] args) throws Exception{
if (args.length < 1) {
System.err.println(" Usage: JavaWordCount
System.out.println(" examle: ./bin/spark-submit --name \"WorktrendJob\" "+ "--master spark://192.168.0.61:7077 --executor-memory 1G "
+ "--class et.theme.vis.job.WorktrendJob spark-1.jar "+ "/data/china/china.txt file:///data/china ");
System.exit(1);
}
SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd" );
DATE_MATH = sdf.format(new Date());
System.out.println("--------****WorktrendJob*****----------------");
System.out.println("-----------------------------------------------");
System.out.println("-----------spark開始計算------------------------");
//job name
SparkConf sparkConf = new SparkConf().setAppName("MyCustomerJob");
//spark連接
JavaSparkContext ctx = new JavaSparkContext(sparkConf);
//創(chuàng)建hive連接
HiveContext hiveContext = new HiveContext(ctx);
//MySQL 配置
Properties connectionProperties = new Properties();
connectionProperties.setProperty("user", MYSQL_USER);
connectionProperties.setProperty("", MYSQL_PASSWORD);
//查詢所有
DataFrame queryall = queryAll(hiveContext,null);
//注冊臨時表
queryall.registerTempTable("first");
//查詢臨時表計算1
String sql = "";
//查詢 計算2
String sql1 = "";
//將計算結(jié)果轉(zhuǎn)化DataFrame
DataFrame sql_a = hiveContext.sql(sql);
DataFrame sql_b = hiveContext.sql(sql1);
// 合并2個DataFrame 相當(dāng)與 left join
DataFrame join = sql_a.join(sql_b,sql_b.col(DATE_END).equalTo(sql_a.col(DATE_END)),"left_outer");
//在mysql建表
sql_a.write().mode(SaveMode.Append).jdbc(MYSQL_JDBC_URL, "test", connectionProperties);
//關(guān)閉
ctx.stop();
}
public static DataFrame queryAll(HiveContext hiveContext, String arg){
String sql = "";
DataFrame queryAll = hiveContext.sql(sql);
//查詢結(jié)果轉(zhuǎn)化成RDD抽象數(shù)據(jù)集
JavaRDD
@Override
public WorktrendInfo call(Row v1) throws Exception {
//將RDD抽象數(shù)據(jù)集放入vo.class
CustomerInfo customerInfo = new CustomerInfo();
customerInfo.setCity(v1.getString(0));
return null;//將customerInfo返回
}
});
//將結(jié)果vo轉(zhuǎn)化成DataFrame ~return
DataFrame df = hiveContext.createDataFrame(name, WorktrendInfo.class);
return df;
}
以上是“hive執(zhí)行spark任務(wù)的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!