這就跟你問聲好!
我插入一個pyspark dataframe Azure sql server,它需要很長時間。數據庫是一個s4但我dataframe 1700萬行和30列插入需要50分鍾。
有一種明顯的速度呢?我打開很多東西——開關連接器,運行scala中的工作而不是等等。我認為dataframe甚至不是大所以必須有一些方法來加快解決。
當dataframe這種規模的,目標表通常是空的。
提前謝謝!
@Hjalmar Friden:
有幾種方法可以提高數據插入的性能Azure SQL Server使用JDBC連接器:
5。使用批量插入:如果你將大量數據插入一個空表,考慮使用SQL Server批量插入命令而不是JDBC連接器。可以通過編寫一個CSV文件的數據幀,然後利用批量插入SQL命令將數據加載到SQL Server。這種方法可以使用JDBC速度遠遠超過對大型數據集。
注意,這些優化的一些可能需要修改代碼或數據的結構,所以重要的是要仔細測試每個方法,以確保它適合您的特定的用例。