Hello,

I am working on the following schema:

1. Repeat

std::shared_ptr<parquet::schema::GroupNode> GetSchema()
{
parquet::schema::NodeVector fields;
{
auto element = parquet::schema::PrimitiveNode::Make("string", parquet::
Repetition::OPTIONAL,
parquet::Type::BYTE_ARRAY, parquet::ConvertedType::UTF8);
auto list = parquet::schema::GroupNode::Make("list", parquet::Repetition::
REPEATED, {element});
fields.push_back(
parquet::schema::GroupNode::Make("path", parquet::Repetition::REQUIRED, {
list}, parquet::ConvertedType::LIST));

fields.push_back(
parquet::schema::PrimitiveNode::Make(
"vstr", parquet::Repetition::OPTIONAL, parquet::Type::BYTE_ARRAY, parquet::
ConvertedType::UTF8));
fields.push_back(
parquet::schema::PrimitiveNode::Make(
"vint", parquet::Repetition::OPTIONAL, parquet::Type::INT64, parquet::
ConvertedType::NONE));
fields.push_back(
parquet::schema::PrimitiveNode::Make(
"vfloat", parquet::Repetition::OPTIONAL, parquet::Type::DOUBLE, parquet::
ConvertedType::NONE));
fields.push_back(
parquet::schema::PrimitiveNode::Make(
"vbool", parquet::Repetition::OPTIONAL, parquet::Type::BOOLEAN, parquet::
ConvertedType::NONE));
}

return std::static_pointer_cast<parquet::schema::GroupNode>(
parquet::schema::GroupNode::Make("schema", parquet::Repetition::REQUIRED,
fields));
}


...

parquet::schema::NodeVector columnNames_{};

std::shared_ptr<parquet::schema::GroupNode> schema = GetSchema();

this->pq_oss_stream = parquet::StreamWriter{
parquet::ParquetFileWriter::Open(outfile, schema, builder.build())};

...

vector<string> current_path ...; //

this->pq_oss_stream << current_path << optional<uint32_t>{{}} << optional<
float>{{}} << optional<bool>{{}} << parquet::EndRow;


How do I write the current_path to pq_oss_stream?

-- 
*Kartik Thakore*

Reply via email to