Если вы хотите отфильтровать количество записей, вы можете применить агрегирование, как указано здесь
pipeline = "{'$match': {'type': 'apple'}}"
df = my_spark.read.format("mongo").option("uri",
"mongodb://localhost:27017/db_name.collection_name").option("pipeline", pipeline).load()
И если вы хотите указать только несколько столбцов, вы можете прочитать всю коллекцию затем выберите требуемый один раз, поскольку Spark будет лениво оценивать эти столбцы и применять прогнозируемые значения pushdown
df = my_spark.read.format("mongo").option("uri",
"mongodb://localhost:27017/db_name.collection_name").load().select('column1',column2')