请帮助我在这种情况下,我想读取SparkDataframe的大小(mb/gb)不在行计数。假设我的数据库中有500 mb的空间留给用户,而用户希望再插入700 mb的数据,那么如何从jdbc驱动程序中识别表大小,以及如何从700 mb sparkDataframe中仅读取500 mb的数据。
efzxgjgh1#
在程序中限制数据大小是不正确的。您应该捕获异常并将其显示给用户。由用户决定是增加数据库大小还是从数据库中删除不需要的数据。对于上面的问题,spark有一个称为size估计器的东西。我以前没用过。但很有可能你无法得到准确的数据大小,因为它是一个估计器
import org.apache.spark.util.SizeEstimator SizeEstimator.estimate(df)
有关更多信息,请参阅此页。
1条答案
按热度按时间efzxgjgh1#
在程序中限制数据大小是不正确的。您应该捕获异常并将其显示给用户。由用户决定是增加数据库大小还是从数据库中删除不需要的数据。
对于上面的问题,spark有一个称为size估计器的东西。我以前没用过。但很有可能你无法得到准确的数据大小,因为它是一个估计器
有关更多信息,请参阅此页。