29#include <unordered_map>
34#include "iceberg/iceberg_data_export.h"
35#include "iceberg/result.h"
44 std::shared_ptr<Schema> schema;
45 std::shared_ptr<PartitionSpec> spec;
47 FileFormatType format = FileFormatType::kParquet;
48 std::shared_ptr<FileIO> io;
49 std::optional<int32_t> sort_order_id;
50 std::unordered_map<std::string, std::string> properties;
59 static Result<std::unique_ptr<DataWriter>> Make(
const DataWriterOptions& options);
62 Result<int64_t> Length()
const override;
63 Status Close()
override;
64 Result<WriteResult> Metadata()
override;
68 std::unique_ptr<Impl> impl_;
70 explicit DataWriter(std::unique_ptr<Impl> impl);
Definition data_writer.cc:31
Writer for Iceberg data files.
Definition data_writer.h:54
Base interface for data file writers.
Definition writer.h:37
StructLike wrapper for a vector of literals that represent partition values.
Definition partition_values.h:36
Definition arrow_c_data.h:57
Options for creating a DataWriter.
Definition data_writer.h:42