在笔记本上使用 pyspark 从 table 中删除行
delete row from table using pyspark on Notebook
我正在 Databricks 笔记本上将 pyspark 脚本写到 insert/update/query cassandra tables,但是我找不到从 table 中删除行的方法,我尝试了 spark sql:
spark.sql("DELETE from users_by_email where email_address IN ('abc@test.com')")
我也看不到可以使用数据框删除数据。有什么解决方法吗?
Spark 不允许 update
和 Delete
查询数据帧。需要在删除代码中使用Python external API
您可以查看下方Python API 提供.delete()
删除功能
您可以加载数据框并对其进行过滤:
import pyspark.sql.functions as f
df = spark.sql("SELECT * from users_by_email")
df_filtered = df.filter(f.col("email_address") == "abc@test.com")
然后您可以使用覆盖选项或在新的 table.
中保存数据框
我正在 Databricks 笔记本上将 pyspark 脚本写到 insert/update/query cassandra tables,但是我找不到从 table 中删除行的方法,我尝试了 spark sql:
spark.sql("DELETE from users_by_email where email_address IN ('abc@test.com')")
我也看不到可以使用数据框删除数据。有什么解决方法吗?
Spark 不允许 update
和 Delete
查询数据帧。需要在删除代码中使用Python external API
您可以查看下方Python API 提供.delete()
删除功能
您可以加载数据框并对其进行过滤:
import pyspark.sql.functions as f
df = spark.sql("SELECT * from users_by_email")
df_filtered = df.filter(f.col("email_address") == "abc@test.com")
然后您可以使用覆盖选项或在新的 table.
中保存数据框