有没有办法使用 Snowflake 及其 Spark 连接器获取查询的行计数?



我正在我的 Spark 应用程序中运行一个返回大量数据的查询。我想知道出于日志记录目的查询了多少行数据。我似乎找不到一种方法来获取行数,而无需手动计算行数,或者调用一种方法为我计数,因为数据相当大,这对于日志记录来说变得昂贵。是否有保存行计数并可供抓取的地方?

我在这里读到Python连接器将行计数保存到对象模型中,但我似乎找不到Spark Connector或其底层JDBC的任何等效项。

我能找到的最优方法是rdd.collect().sizeSpark提供的RDD。它比呼叫rdd.count()快约 15%

任何帮助不胜感激 😃

限制存在于 Spark 的 API 中,这些 API 不直接提供已完成分布式操作的指标,例如保存到表或文件后的行计数指标。Snowflake 的 Spark Connector 仅限于 Apache Spark 为其集成提供的调用,并且 Snowflake Python 和 JDBC 连接器中可用的光标属性无法通过 Py/Spark 访问。

计算执行结果的问题的更简单形式,删除雪花细节,之前已经讨论过解决方案:Spark:如何获取写入行数?

相关内容

  • 没有找到相关文章

最新更新