<dependency>
<groupId>org.apache.parquet</groupId>
<artifactId>parquet-column</artifactId>
<version>1.12.0</version>
</dependency>
Configuration configuration = new Configuration();
String outputPath = "path/to/parquet/file.parquet";
MessageType schema = MessageTypeParser.parseMessageType("message Schema { required int32 id; required string name; }");
GroupWriteSupport.setSchema(schema, configuration);
ParquetWriter<Group> writer = new ParquetWriter<Group>(new Path(outputPath), new GroupWriteSupport(), CompressionCodecName.SNAPPY, ParquetWriter.DEFAULT_BLOCK_SIZE, ParquetWriter.DEFAULT_PAGE_SIZE, ParquetWriter.DEFAULT_PAGE_SIZE, false, true, ParquetProperties.WriterVersion.PARQUET_2_0, configuration);
Group group = new SimpleGroup(schema);
group.add("id", 1);
group.add("name", "John");
writer.write(group);
writer.close();
String filePath = "path/to/parquet/file.parquet";
ParquetReader<Group> reader = ParquetReader.builder(new GroupReadSupport(), new Path(filePath)).build();
Group group;
while ((group = reader.read()) != null) {
int id = group.getInteger("id", 0);
String name = group.getString("name", 0);
System.out.println("ID: " + id + ", Name: " + name);
}
reader.close();