Flow PHP

ColumnChunk

Properties

$_TSPEC  : mixed
$column_index_length  : null|int
Size of ColumnChunk's ColumnIndex, in bytes *
$column_index_offset  : null|int
File offset of ColumnChunk's ColumnIndex *
$crypto_metadata  : null|ColumnCryptoMetaData
Crypto metadata of encrypted columns *
$encrypted_column_metadata  : null|string
Encrypted column metadata for this chunk *
$file_offset  : int
DEPRECATED: Byte offset in file_path to the ColumnMetaData
$file_path  : null|string
File where column data is stored. If not set, assumed to be same file as metadata. This path is relative to the current file.
$isValidate  : mixed
$meta_data  : null|ColumnMetaData
Column metadata for this chunk. Some writers may also replicate this at the location pointed to by file_path/file_offset.
$offset_index_length  : null|int
Size of ColumnChunk's OffsetIndex, in bytes *
$offset_index_offset  : null|int
File offset of ColumnChunk's OffsetIndex *

Methods

__construct()  : mixed
getName()  : mixed
read()  : mixed
write()  : mixed

Properties

$_TSPEC

public static mixed $_TSPEC = array(1 => array('var' => 'file_path', 'isRequired' => false, 'type' => \Thrift\Type\TType::STRING), 2 => array('var' => 'file_offset', 'isRequired' => true, 'type' => \Thrift\Type\TType::I64), 3 => array('var' => 'meta_data', 'isRequired' => false, 'type' => \Thrift\Type\TType::STRUCT, 'class' => '\Flow\Parquet\ThriftModel\ColumnMetaData'), 4 => array('var' => 'offset_index_offset', 'isRequired' => false, 'type' => \Thrift\Type\TType::I64), 5 => array('var' => 'offset_index_length', 'isRequired' => false, 'type' => \Thrift\Type\TType::I32), 6 => array('var' => 'column_index_offset', 'isRequired' => false, 'type' => \Thrift\Type\TType::I64), 7 => array('var' => 'column_index_length', 'isRequired' => false, 'type' => \Thrift\Type\TType::I32), 8 => array('var' => 'crypto_metadata', 'isRequired' => false, 'type' => \Thrift\Type\TType::STRUCT, 'class' => '\Flow\Parquet\ThriftModel\ColumnCryptoMetaData'), 9 => array('var' => 'encrypted_column_metadata', 'isRequired' => false, 'type' => \Thrift\Type\TType::STRING))

$column_index_length

Size of ColumnChunk's ColumnIndex, in bytes *

public null|int $column_index_length = null

$column_index_offset

File offset of ColumnChunk's ColumnIndex *

public null|int $column_index_offset = null

$encrypted_column_metadata

Encrypted column metadata for this chunk *

public null|string $encrypted_column_metadata = null

$file_offset

DEPRECATED: Byte offset in file_path to the ColumnMetaData

public int $file_offset = 0

Past use of this field has been inconsistent, with some implementations using it to point to the ColumnMetaData and some using it to point to the first page in the column chunk. In many cases, the ColumnMetaData at this location is wrong. This field is now deprecated and should not be used. Writers should set this field to 0 if no ColumnMetaData has been written outside the footer.

$file_path

File where column data is stored. If not set, assumed to be same file as metadata. This path is relative to the current file.

public null|string $file_path = null

As of December 2025, the only known use-case for this field is writing summary parquet files (i.e. "_metadata" files). These files consolidate footers from multiple parquet files to allow for efficient reading of footers to avoid file listing costs and prune out files that do not need to be read based on statistics.

These files do not appear to have ever been formally specified in the specification. and are potentially problematic from a correctness perspective [1].

[1] https://lists.apache.org/thread/ootf2kmyg3p01b1bvplpvp4ftd1bt72d

There is no other known usage of this field. Specifically, there are no known reference implementations that will read externally stored column data if this field is populated within a standard parquet file. Making use of the field for this purpose is not considered part of the Parquet specification.

$meta_data

Column metadata for this chunk. Some writers may also replicate this at the location pointed to by file_path/file_offset.

public null|ColumnMetaData $meta_data = null

Note: while marked as optional, this field is in fact required by most major Parquet implementations. As such, writers MUST populate this field.

$offset_index_length

Size of ColumnChunk's OffsetIndex, in bytes *

public null|int $offset_index_length = null

$offset_index_offset

File offset of ColumnChunk's OffsetIndex *

public null|int $offset_index_offset = null

Methods

__construct()

public __construct([mixed $vals = null ]) : mixed
Parameters
$vals : mixed = null

read()

public read(mixed $input) : mixed
Parameters
$input : mixed

write()

public write(mixed $output) : mixed
Parameters
$output : mixed
On this page

Search results