请问关于spark先写入hdfs然后主动加载到hive的疑问

你好,我最近也是遇到了sparkstreaming写入hive存在延迟的问题,为了提高写入速率,我也是想先写入HDFS在主动加载到hive中,我在网上搜索到你的相关内容使这样的:

// RDD转为Dataset
Dataset<Row> dataFrame = ss.createDataFrame(orderRDD, OrderKafkaMessage.class);.repartition(1);
// 写入hdfs,用orc格式
dataFrame.write().format("orc").save(fullPath1);
ss.sql("use " + hiveDatabase);
String sql = "ALTER TABLE ods_pile_order ADD PARTITION(ymd='" + ymd + "',hms='" + hms + "')LOCATION '" + fullPath1 + "'";
ss.sql(sql);

我自己按照你这个做个测试,如果只是按照你写的代码段这么去修改,好像并不能实现hive主动加载hdfs数据,即按照你这么做后,hive中还是无法查询到相关orc格式数据(当然,textfile格式是可以的),必须得在你写的代码片段后加上

ss.catalog.refreshTable(tableName)

才能够在hive中查询到hdfs中数据,请问你也是这样做的吗?还是只是按照你的代码片段里面的那些代码就可以实现主动加载?