真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Spark整合hive實現(xiàn)數(shù)據(jù)的讀取輸出

實驗環(huán)境: linux centOS 6.7 vmware虛擬機(jī)

烏魯木齊網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站設(shè)計等網(wǎng)站項目制作,到程序開發(fā),運營維護(hù)。成都創(chuàng)新互聯(lián)2013年開創(chuàng)至今到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)

spark-1.5.1-bin-hadoop-2.1.0

apache-hive-1.2.1

eclipse 或IntelJIDea 本次使用eclipse.

代碼:

import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaSparkContext;
import org.apache.spark.sql.DataFrame;
import org.apache.spark.sql.hive.HiveContext;
public class SparkOnHiveDemo {
public static void main(String[] args) {
		
		// 首先還是創(chuàng)建SparkConf
		SparkConf conf = new SparkConf().setAppName("HiveDataSource");
		// 創(chuàng)建JavaSparkContext
		JavaSparkContext sc = new JavaSparkContext(conf);
		// 創(chuàng)建HiveContext,注意,這里,它接收的是SparkContext作為參數(shù),不是JavaSparkContext
		HiveContext hiveContext = new HiveContext(sc.sc());
		
		//1.可以使用HiveContext 下面的sql(xxx語句)執(zhí)行HiveSQL語句
		//1 .刪除表,創(chuàng)建表
		// stars_infos ,stars_scores
		hiveContext.sql("DROP TABLE IF EXISTS stars_infos");
		hiveContext.sql("CREATE TABLE IF NOT EXISTS stars_infos(name STRING,age INT) "
				+ "row format delimited fields terminated by ','");
		
		//2.向表里面導(dǎo)入數(shù)據(jù)
		hiveContext.sql("LOAD DATA "
				+ "LOCAL INPATH "
				+ "'/root/book/stars_infos.txt' "
				+ "INTO TABLE stars_infos");
		
		hiveContext.sql("DROP TABLE IF EXISTS stars_scores");
		hiveContext.sql("CREATE TABLE IF NOT EXISTS stars_scores(name STRING,score INT) "
				+ "row format delimited fields terminated by ','");

		hiveContext.sql("LOAD DATA "
				+ "LOCAL INPATH "
				+ "'/root/book/stars_score.txt' "
				+ "INTO TABLE stars_scores");
		
		
		//3.從一張已經(jīng)存在的hive表里面拿數(shù)據(jù),轉(zhuǎn)換為DF
		DataFrame superStarDataFrame = hiveContext.sql("SELECT si.name,si.age,ss.score "
				+ "FROM stars_infos si "
				+ "JOIN stars_scores ss ON si.name=ss.name "
				+ "WHERE ss.score>=90");
			
		//4.把DF的數(shù)據(jù)再持久化到hive中去,千萬別和registerTemtable搞混了
		hiveContext.sql("DROP TABLE IF EXISTS superStar");
		superStarDataFrame.saveAsTable("superStar");
		
		//5.直接從Hive中得到DF
		hiveContext.table("superStar").show();
		
		sc.close();
	}
}

 元數(shù)據(jù):

可以下載附件,然后上傳到指定的目錄下。

 把程序打包jar后上傳到linux指定的目錄下,寫一個腳本。腳本附件見正文。具體內(nèi)容修改即可。

 運行腳本就可以了。當(dāng)然要保證MySQL數(shù)據(jù)庫正常,hive正常。

附件:http://down.51cto.com/data/2366931

新聞名稱:Spark整合hive實現(xiàn)數(shù)據(jù)的讀取輸出
地址分享:http://weahome.cn/article/jjcphi.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部