Я установил kafka локально (на данный момент нет реестра кластера / схемы) и пытаюсь создать тему Avro, а ниже приведена схема, связанная с этой темой.
{
"type" : "record",
"name" : "Customer",
"namespace" : "com.example.Customer",
"doc" : "Class: Customer",
"fields" : [ {
"name" : "name",
"type" : "string",
"doc" : "Variable: Customer Name"
}, {
"name" : "salary",
"type" : "double",
"doc" : "Variable: Customer Salary"
} ]
}
Я хотел бы создать простуюSparkProducerApi
для создания некоторых данных на основе приведенной выше схемы и публикации их в kafka.Думая о создании примера данных, преобразующих в dataframe
, затем измените его на avro
и затем опубликуйте.
val df = spark.createDataFrame(<<data>>)
И затем, что-то вроде ниже:
df.write
.format("kafka")
.option("kafka.bootstrap.servers","localhost:9092")
.option("topic","customer_avro_topic")
.save()
}
Присоединение схемык этой теме можно сделать manually
.
Можно ли это сделать, просто используя Apache Spark APIs
вместо Java/Kafka Apis
?Это для пакетной обработки вместо streaming
.