建立一張表:
create table day_video_traffics_topn_stat(
day varchar(8) not null,
cms_id bigint(10) not null,
traffics bigint(20) not null,
primary key (day,cms_id)
);
建立乙個實體類dayvideotrafficsstat:
case class dayvideotrafficsstat(day:string,cmsid:long,traffics:long)
在statdao中新增方法:
/**
* 批量儲存daycityvideoaccessstat到資料庫
*/def insertdaycityvideoaccesstopn(list: listbuffer[daycityvideoaccessstat]): unit =
pstmt.executebatch() // 執行批量處理
connection.commit() //手工提交
} catch finally
}
在spark主應用程式中新增乙個方法,並且在主函式中呼叫這個方法:
//按流量統計主站最受歡迎的topn課程
def videotrafficstopnstat(spark:sparksession,accessdf:dataframe):unit = )
statdao.insertdayvideotrafficsaccesstopn(list)
})} catch
}
執行程式,觀察資料庫插入結果:
在dao層新增乙個方法deletedata,用來刪除指定日期的資料
//刪除表中指定日期的,已有的資料
def deletedata(day:string):unit =
}catch finally
}
SparkSQL 實戰應用
sparksql 實戰應用 資料集 movielens 1m datase users.dat userid gender age occupation zip code movies.dat movieid title genres ratings.dat userid movieid ratin...
Spark Sql之DataFrame實戰詳解
在spark 1.3新加的最重要的新特性之一dataframe的引入,很類似在r語言中的dataframe的操作,使得spark sql更穩定高效。1 dataframe簡介 在spark中,dataframe是一種以rdd為基礎的分布式資料據集,類似於傳統資料庫聽二維 dataframe帶有sch...
Spark SQL操作Hive實戰
在目前企業級 spark大資料開發中,大多數情況下都是採用hive來作為資料倉儲的。spark提供了對hive的支援,spark通過hivecontext可以直接操作hive中的資料。基於hivecontext,我們可以使用sql hql兩種方式來編寫sql語句 對hive進行操作,包括 建立表 刪...