Details
-
Bug
-
Status: Open
-
Minor
-
Resolution: Unresolved
-
None
-
None
-
None
-
None
Description
val myaSchema=
"""
{ |
"namespace": "com.apache.schema", |
"type": "record", |
"name": "StudentActivity", |
"fields": [ |
{
| "name": "id",
| "type": "int"
| }
, |
{ |
"name": "course_details", |
"type": { |
"name": "course_details", |
"type": "record", |
"fields": [ |
{ | "name": "course_struct_course_time", | "type": "string" | } |
] |
} |
} |
] |
} """.stripMargin |
var json = """{
"id": 101, |
"course_details": { | "course_struct_course_time":"2014-01-05" | } |
}""".stripMargin |
val nn = new org.apache.avro.Schema.Parser().parse(myaSchema)
val converter = new JsonAvroConverter
var record = converter
.convertToGenericDataRecord(json.getBytes(CharEncoding.UTF_8), nn)
val fields = new Array[Field](2)
fields(0)=new Field("id", DataTypes.INT)
val fld_s = new java.util.ArrayList[StructField]
fld_s.add(new StructField("course_struct_course_time", DataTypes.STRING))
fields(1)=new Field("course_details", "struct",fld_s)
try
{ val writer = CarbonWriter.builder.withSchema(new Schema(fields)).sortBy(Array("name,id")) .outputPath("D:/Hadoop/carbon_1_3/sdk/carbon_bln_2").isTransactionalTable(false).buildWriterForAvroInput writer.write(record) writer.close() } catch {
case e: Exception =>
}