forked from jamesbrucepower/node-avro-io
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathexample_writer.js
19 lines (19 loc) · 870 Bytes
/
example_writer.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
var avro = require('./index').DataFile.AvroFile();
var schema = {
"name": "data",
"type": "record",
"fields": [
{"name":"key","type": "string"},
{"name":"value","type": "string"},
{"name":"flag","type": "boolean"},
{"name":"subrecord","type":"record","fields":[
{"name":"key","type":"string"},
{"name":"value","type":["string","int","null"]}
]}
]
};
var writer = avro.open("test.avro", schema, { flags: 'w', codec: 'deflate' });
writer
.append({ key:"john", value:"hive", flag: true, subrecord: { key: "preference", value: {"int":2}}})
.append({ key:"eric", value:"lola", flag: true, subrecord: { key: "postcode", value: {"null":null}}})
.end({ key:"fred", value:"wonka", flag: false, subrecord: { key: "city", value: {"string":"michigan"}}});