1

我正在从 Elasticsearch 索引中读取 PySpark SQL Dataframe,读取选项为es.read.metadata=True. 我想按元数据字段上的条件过滤数据,但得到一个空结果,尽管应该有结果。是否有可能得到实际结果?

当我在数据帧上使用时,我确实得到了结果limit,即使数字很大,甚至比数据帧的大小还要大。

此外,我在使用其他不_metadata相关的字段时确实得到了结果。

例如:

df.where(df._metadata._score > 1.0).select(df._metadata._id).show()

结果为空:

+--------------+
|_metadata[_id]|
+--------------+
+--------------+

但是使用时limit

df.limit(1000000).where(df._metadata._score > 1.0).select(df._metadata._id).show()

结果不为空:

+--------------------+
|      _metadata[_id]|
+--------------------+
|cICqm2gBHl8Vy6RZyu_L|
+--------------------+
4

0 回答 0