以NPM文档(https://www.npmjs.com/package/parquets)中的以下示例为例,如何将生成的实木复合地板文件直接写入minio。我要避免将镶木地板文件写入磁盘,然后再执行第二次操作以将文件移至minio。
下面的示例在调用close()后立即将文件写入磁盘。
// advanced fruits table
let schema = new ParquetSchema({
name: { type: 'UTF8' },
colours: { type: 'UTF8', repeated: true },
stock: {
repeated: true,
fields: {
price: { type: 'DOUBLE' },
quantity: { type: 'INT64' },
}
}
});
// the above schema allows us to store the following rows:
let writer = await ParquetWriter.openFile(schema, 'fruits.parquet');
await writer.appendRow({
name: 'banana',
colours: ['yellow'],
stock: [
{ price: 2.45, quantity: 16 },
{ price: 2.60, quantity: 420 }
]
});
await writer.appendRow({
name: 'apple',
colours: ['red', 'green'],
stock: [
{ price: 1.20, quantity: 42 },
{ price: 1.30, quantity: 230 }
]
});
await writer.close();