【问题标题】:Convert CSV file to AVRO in scala在scala中将CSV文件转换为AVRO
【发布时间】:2017-06-02 06:25:52
【问题描述】:

我是 scala 的新手。我正在尝试将 CSV 文件转换为 avro 格式。我试图用谷歌搜索这个并且找不到任何东西。我已经给出了我使用的示例输入文件和 AVSC 格式(再次来自谷歌)。

{"namespace": "example.avro",
 "type": "record",
 "name": "User",
 "fields": [
     {"name": "name", "type": "string"},
     {"name": "favorite_number",  "type": ["int", "null"]},
     {"name": "favorite_color", "type": ["string", "null"]}
 ]
}

示例文件:

name_1,12,yellow
name_2,22,red
name_3,32,green

另外,我怎样才能将它放大到一个 Control A 分隔文件。

【问题讨论】:

    标签: scala avro


    【解决方案1】:

    最明显的解决方案是使用来自databricks 的spark-avro。 它看起来像这样:

    import com.databricks.spark.avro._
    import org.apache.spark.sql.SparkSession
    
    val spark = SparkSession.builder().master("local").getOrCreate()
    val df = spark.read.format("csv").load("data.csv")
    df.write.avro("converted.avro")
    

    与仅用于测试目的的替代方法一样,您可以使用this script on python

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-04
      • 2020-07-07
      相关资源
      最近更新 更多