18 #include <cudf/utilities/export.hpp>
24 #include <string_view>
27 namespace CUDF_EXPORT
cudf {
59 std::vector<parquet_column_schema>&& children,
61 : _name{name}, _type{type}, _children{std::move(children)}, _cudf_type{cudf_type}
70 [[nodiscard]]
auto name()
const {
return _name; }
77 [[nodiscard]]
auto type()
const {
return _type; }
84 [[nodiscard]]
auto const&
children() const& {
return _children; }
90 [[nodiscard]]
auto children() && {
return std::move(_children); }
99 [[nodiscard]]
auto const&
child(
int idx)
const& {
return children().at(idx); }
105 [[nodiscard]]
auto child(
int idx) && {
return std::move(children().at(idx)); }
121 [[nodiscard]]
auto cudf_type()
const {
return _cudf_type; }
127 std::vector<parquet_column_schema> _children;
155 [[nodiscard]]
auto const&
root() const& {
return _root; }
161 [[nodiscard]]
auto root() && {
return std::move(_root); }
201 std::vector<size_type> num_rowgroups_per_file,
203 std::vector<row_group_metadata> rg_metadata,
205 : _schema{std::move(schema)},
207 _num_rowgroups{num_rowgroups},
208 _num_rowgroups_per_file{std::move(num_rowgroups_per_file)},
209 _file_metadata{std::move(file_metadata)},
210 _rowgroup_metadata{std::move(rg_metadata)},
220 [[nodiscard]]
auto const&
schema()
const {
return _schema; }
229 [[nodiscard]]
auto num_rows()
const {
return _num_rows; }
250 [[nodiscard]]
auto const&
metadata()
const {
return _file_metadata; }
272 std::vector<size_type> _num_rowgroups_per_file;
273 key_value_metadata _file_metadata;
274 std::vector<row_group_metadata> _rowgroup_metadata;
275 column_chunk_metadata _column_chunk_metadata;
300 std::span<std::unique_ptr<cudf::io::datasource>
const> sources);
327 std::span<parquet::FileMetaData const> parquet_metadatas,
328 std::span<std::string const> column_names,
Indicator for the logical data type of an element in a column.
Non-owning references to the memory resources used by a cuDF operation.
Interface classes for providing input data to the readers from files, host memory,...
APIs for querying the default CUDA stream and per-thread default stream status.
cuda::stream_ref const get_default_stream()
Get the current default stream.
std::unique_ptr< table > read_parquet_column_chunk_bounds(std::span< parquet::FileMetaData const > parquet_metadatas, std::span< std::string const > column_names, cuda::stream_ref stream=cudf::get_default_stream(), cudf::memory_resources mr=cudf::get_current_device_resource_ref())
Decode parquet column-chunk min/max statistics for selected leaf columns.
std::vector< parquet::FileMetaData > read_parquet_footers(std::span< std::unique_ptr< cudf::io::datasource > const > sources)
Constructs FileMetaData objects from parquet dataset.
parquet_metadata read_parquet_metadata(source_info const &src_info)
Reads metadata of parquet dataset.
Type
Basic data types in Parquet, determines how data is physically stored.
rmm::device_async_resource_ref get_current_device_resource_ref()
Get the current device memory resource reference.
int32_t size_type
Row index type for columns and tables.
type_id
Identifies a column's logical element type.
@ EMPTY
Always null with no underlying data.
Type definitions for the cuDF-IO API.
APIs for getting and setting the current device memory resource.
Parquet footer schema structs.
Schema of a parquet column, including the nested columns.
auto const & child(int idx) const &
Returns schema of the child with the given index.
auto name() const
Returns parquet column name; can be empty.
auto const & children() const &
Returns schemas of all child columns.
auto type() const
Returns parquet physical type of the column.
auto children() &&
Returns schemas of all child columns.
auto num_children() const
Returns the number of child columns.
parquet_column_schema(std::string_view name, Type type, std::vector< parquet_column_schema > &&children, data_type cudf_type)
constructor
parquet_column_schema()
Default constructor.
auto child(int idx) &&
Returns schema of the child with the given index.
auto cudf_type() const
Returns the cudf data type for this column.
Schema of a parquet file.
parquet_schema()=default
Default constructor.
auto root() &&
Returns the schema of the struct column that contains all columns as fields.
auto const & root() const &
Returns the schema of the struct column that contains all columns as fields.
parquet_schema(parquet_column_schema root_column_schema)
constructor
Source information for read interfaces.
Class definition for cudf::table.