【问题标题】:error: not found: value from_avro (Databricks)错误:未找到:值 from_avro (Databricks)
【发布时间】:2019-01-04 20:00:41
【问题描述】:

我正在尝试从 Kafka 流式传输 Avro 数据并尝试通过以下操作使用 from_Avro https://docs.databricks.com/spark/latest/structured-streaming/avro-dataframe.html#avro-dataframe

Getting error : not found: value from_avro

val df = spark
.readStream
.format("kafka")
.option("kafka.bootstrap.servers", servers)
.option("subscribe", "t")
.load()
.select(
from_avro($"key", SchemaBuilder.builder().stringType()).as("key"),
from_avro($"value", SchemaBuilder.builder().intType()).as("value"))

using dependencies : bijection-avro_2.12-0.9.6.jar,spark-avro_2.11-4.0.0.jar

【问题讨论】:

  • 您使用 Databricks 平台吗?看起来 from_avroto_avro 是专有扩展(不存在于公共存储库中)。
  • 我没有使用 Databricks 平台,我使用了公共 repo 中提供的 from_json 并正在寻找 from_Avro。
  • 因为您不应该使用 Databricks 文档。这不是 Spark 文档。
  • 如果您的消息来自 Confluent Avro,这将不起作用,您必须使用自己的 Decoder 类定义这些函数

标签: apache-spark apache-kafka spark-streaming


【解决方案1】:

添加此导入语句 导入 org.apache.spark.sql.avro.functions._

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-12-02
    • 2018-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-14
    • 1970-01-01
    • 2013-09-21
    相关资源
    最近更新 更多