我有一个火花作业,可以从多个来源获取数据并汇总到一个表中。仅当有新数据时,作业才应更新表。我可以想到的一种方法是从现有表中获取数据,然后与传入的新数据进行比较。比较发生在spark层中。我想知道是否有更好的比较方法可以改善比较性能。
[如果有人对此有任何建议,请告诉我。
非常感谢。
您应该在数据库中没有上次更新时间吗?您使用的方法听起来不具有可扩展性,因此,如果您有办法为表中的每一行设置更新时间,它将解决此问题。
我可以想到的一种方法是从现有的方法中获取数据表,并与其中的新数据进行比较
恕我直言,这是错误的。
相反,您可以创建大查询分区表并创建一个分区列以加载数据,并且在加载新数据时,您可以检查新数据是否具有相同的分区列。在hive或bigquery中命中分区级别的数据比选择整个数据并进行火花比较更为有用/有效。
同样适用于配置单元。