我正在尝试使用spark连接到mongoDB。当我尝试通过自动推断架构来读取MongoDB中的数据时,我会看到所有值。 但是,当我尝试显式指定模式时,我遇到问题,当尝试查看数据集中的值时,它会给我空值。
我正在使用Java并创建了java类来定义架构。
请有人帮我解决问题
在代码段下方: -
public class MVTest {
public static void main(final String[] args) throws InterruptedException {
SparkSession spark = SparkSession.builder().appName("Test")
.master("local[2]")
.config("spark.mongodb.input.uri", "mongodb://localhost/mongoFocusDump.PositionResultDocuments")
.config("spark.mongodb.output.uri","mongodb://localhost/mongoFocusDump.PositionResultDocuments").getOrCreate();
JavaSparkContext jsc = new JavaSparkContext(spark.sparkContext());
Dataset<MongoSchema> df = MongoSpark.load(jsc).toDS(MongoSchema.class);
df.printSchema();
df.select("simulationScenario").show();
jsc.close();
}
}
输出: -
+------------------+
|simulationScenario|
+------------------+
| null|
| null|
| null|
| null|
| null|
| null|
| null|
| null|
| null|
| null|
| null|
| null|
| null|
| null|
| null|
| null|
| null|
| null|
| null|
| null|
+------------------+