我是 Python 和 DataFrame 的新手。在這里,我正在編寫 Python 代碼以在 AWS Glue 中運行 ETL 作業。請在下面找到相同的代碼片段。test_DyF = glueContext.create_dynamic_frame.from_catalog(database="teststoragedb", table_name="testtestfile_csv")test_dataframe = test_DyF.select_fields(['empid','name']).toDF()現在上面的 test_dataframe 是類型pyspark.sql.dataframe.DataFrame現在,我需要遍歷上面的test_dataframe。據我所知,我只能看到collector toLocalIterator。請找到以下示例代碼for row_val in test_dataframe.collect():但這兩種方法都非常緩慢且效率不高。我不能使用 pandas,因為 AWS Glue 不支持它。請找到我正在做的步驟來源信息:productid|matchval|similar product|similar product matchvalproduct A|100|product X|100product A|101|product Y|101product B|100|product X|100product C|102|product Z|102預期結果:product |similar productsproduct A|product X, product Yproduct B|product Xproduct C|product Z
1 回答

翻閱古今
TA貢獻1780條經驗 獲得超5個贊
這是我正在寫的代碼
我正在使用 productID 獲得源的不同數據框
循環遍歷這個不同的數據框集
a) 從源中獲取產品的 matchval 列表
b) 基于matchval過濾器識別相似產品
c) 循環獲取連接的字符串 ---> 使用 rdd.collect 的循環影響性能
您能否就可以做的事情分享任何更好的建議?
添加回答
舉報
0/150
提交
取消