【问题标题】:how to fetch row attribute values in foreachpartition如何在foreachpartition中获取行属性值
【发布时间】:2020-03-11 06:41:13
【问题描述】:

我在努力

def customFunction(rows):
    for row in rows:
        key = row.key #this value is boolean instead of actual value same with row["key"]
        val = row.value #this value is boolean instead of actual value same with row["val"]
        #do something with key value

spark = SparkSession \
    .builder \
    .appName("Python Spark SQL Hive integration example") \
    .config("spark.sql.warehouse.dir", warehouse_location) \
    .enableHiveSupport() \
    .getOrCreate()


# spark is an existing SparkSession
spark.sql("CREATE TABLE IF NOT EXISTS src (key INT, value STRING) USING hive")
spark.sql("LOAD DATA LOCAL INPATH 'examples/src/main/resources/kv1.txt' INTO TABLE src")

# Queries are expressed in HiveQL
df = spark.sql("SELECT key, value FROM src")

# assumption that df row size is of billions
df.rdd.foreachPartition(customFunction)

我在自定义函数中的键、val 变量中获取布尔值。我们如何获取行属性实际值?

这是在 aws emr 5.29、python 2.7 上运行的,python 代码是通过 spark-submit 执行的

【问题讨论】:

标签: python python-2.7 apache-spark pyspark


【解决方案1】:

如果这有帮助,在 customFunction 内部,我试图将值 key 用于 dynamodb 并且当键为 NULL 时它正在存储一个布尔值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多