我有一个火花工作(1.4.1)接收卡夫卡事件流.我想在tachyon上不断保存它们作为镶木地板.
val lines = KafkaUtils.createStream(ssc, zkQuorum, group, topicMap).map(_._2)
lines.window(Seconds(1), Seconds(1)).foreachRDD { (rdd, time) =>
if (rdd.count() > 0) {
val mil = time.floor(Duration(86400000)).milliseconds
hiveContext.read.json(rdd).toDF().write.mode(SaveMode.Append).parquet(s"tachyon://192.168.1.12:19998/persisted5$mil")
hiveContext.sql(s"CREATE TABLE IF NOT EXISTS persisted5$mil USING org.apache.spark.sql.parquet OPTIONS ( path 'tachyon://192.168.1.12:19998/persisted5$mil')")
}
}
Run Code Online (Sandbox Code Playgroud)
然而,我发现随着时间的推移,每次镶木地板上都会产生火花,每1秒的镶木地板部件会产生火花,速度越来越慢
15/08/22 22:04:05 INFO : open(tachyon://192.168.1.12:19998/persisted51440201600000/part-r-00000-db03b24d-6f98-4b5d-bb40-530f35b82633.gz.parquet, 65536)
15/08/22 22:04:05 INFO : open(tachyon://192.168.1.12:19998/persisted51440201600000/part-r-00000-3a7857e2-0435-4ee0-ab2c-6d40224f8842.gz.parquet, 65536)
15/08/22 22:04:05 INFO : open(tachyon://192.168.1.12:19998/persisted51440201600000/part-r-00000-47ff2ac1-da00-4473-b3f7-52640014bc5b.gz.parquet, 65536)
15/08/22 22:04:05 INFO : open(tachyon://192.168.1.12:19998/persisted51440201600000/part-r-00000-61625436-7353-4b1e-bb8d-e8afad3a582e.gz.parquet, 65536)
15/08/22 22:04:05 INFO : open(tachyon://192.168.1.12:19998/persisted51440201600000/part-r-00000-e711aa9a-9bf5-41d5-8523-f5edafa69626.gz.parquet, 65536)
15/08/22 22:04:05 INFO : open(tachyon://192.168.1.12:19998/persisted51440201600000/part-r-00000-4e0cca38-cf75-4771-8965-20a30c863100.gz.parquet, 65536)
15/08/22 22:04:05 INFO : open(tachyon://192.168.1.12:19998/persisted51440201600000/part-r-00000-d1510ed4-2c99-43e2-b3d1-38d3d54e626d.gz.parquet, …Run Code Online (Sandbox Code Playgroud) 我试图想办法循环一个模板参数列表,但没有成功
我不能使用c ++ 11可变参数模板功能,它需要在编译时完成
我可以假设在否定之后将没有积极的论据
任何的想法 ?
template< int F1, int F2 ,int F3>
struct TemplatedClass
{
TemplatedClass();
update()
{
/*
for each positive template argument
call a method
*/
}
};
Run Code Online (Sandbox Code Playgroud) 在声明常量char时使用低级或大写C是否有区别?
FIELD1 DCL C'1'
FIELD2 DCL c'1'
Run Code Online (Sandbox Code Playgroud)
代码运行就好像没有区别,但我在文档中没有提到它.