公共成员函数 | 所有成员列表
cudf::io::chunked_parquet_reader 类参考

用于迭代读取 Parquet 文件并分块生成一系列表的 chunked parquet reader 类。 更多...

#include <parquet.hpp>

公共成员函数

 chunked_parquet_reader ()
 默认构造函数,不应使用。 更多...
 
 chunked_parquet_reader (std::size_t chunk_read_limit, parquet_reader_options const &options, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref())
 分块读取器的构造函数。 更多...
 
 chunked_parquet_reader (std::size_t chunk_read_limit, std::size_t pass_read_limit, parquet_reader_options const &options, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref())
 分块读取器的构造函数。 更多...
 
 ~chunked_parquet_reader ()
 析构函数,销毁内部读取器实例。 更多...
 
bool has_next () const
 检查给定文件中是否有尚未读取的数据。 更多...
 
table_with_metadata read_chunk () const
 读取给定 Parquet 文件中的行块。 更多...
 

详细描述

用于迭代读取 Parquet 文件并分块生成一系列表的 chunked parquet reader 类。

此类旨在解决读取非常大的 Parquet 文件时遇到的问题,即其列大小超出 cudf 列可存储的限制。通过使用此类按块读取文件内容,可以保证每个块的大小都在给定的限制内。

定义于文件 parquet.hpp 的第 516 行。

构造函数和析构函数文档

◆ chunked_parquet_reader() [1/3]

cudf::io::chunked_parquet_reader::chunked_parquet_reader ( )

默认构造函数,不应使用。

添加此函数仅是为了满足 cython。添加此函数是为了不泄露详细 API。

◆ chunked_parquet_reader() [2/3]

cudf::io::chunked_parquet_reader::chunked_parquet_reader ( std::size_t  chunk_read_limit,
parquet_reader_options const &  options,
rmm::cuda_stream_view  stream = cudf::get_default_stream(),
rmm::device_async_resource_ref  mr = cudf::get_current_device_resource_ref() 
)

分块读取器的构造函数。

此构造函数需要与 cudf::read_parquet() 中相同的 parquet_reader_option 参数,以及一个额外参数来指定每次读取的输出表的字节大小限制。

参数
chunk_read_limit每次读取返回的总字节数限制,如果为 0 则表示无限制
options用于读取 Parquet 文件的选项
stream用于设备内存操作和核函数启动的 CUDA 流
mr用于设备内存分配的设备内存资源

◆ chunked_parquet_reader() [3/3]

cudf::io::chunked_parquet_reader::chunked_parquet_reader ( std::size_t  chunk_read_limit,
std::size_t  pass_read_limit,
parquet_reader_options const &  options,
rmm::cuda_stream_view  stream = cudf::get_default_stream(),
rmm::device_async_resource_ref  mr = cudf::get_current_device_resource_ref() 
)

分块读取器的构造函数。

此构造函数需要与 cudf::read_parquet() 中相同的 parquet_reader_option 参数,以及额外的参数,用于指定每次读取的输出表的字节大小限制,以及读取时使用的临时内存量字节限制。 pass_read_limit 通过限制用于解压缩空间的内存量来影响一次可以读取多少个行组。 pass_read_limit 是一个提示,而不是绝对限制 - 如果单个行组无法容纳在给定限制内,它仍然会被加载。

参数
chunk_read_limit每次读取返回的总字节数限制,如果为 0 则表示无限制
pass_read_limit用于读取和解压缩数据的内存量限制,如果为 0 则表示无限制
options用于读取 Parquet 文件的选项
stream用于设备内存操作和核函数启动的 CUDA 流
mr用于设备内存分配的设备内存资源

◆ ~chunked_parquet_reader()

cudf::io::chunked_parquet_reader::~chunked_parquet_reader ( )

析构函数,销毁内部读取器实例。

由于内部 reader 对象的声明在此头文件中不存在,因此需要在可以访问该对象声明的单独源文件中定义此析构函数。

成员函数文档

◆ has_next()

bool cudf::io::chunked_parquet_reader::has_next ( ) const

检查给定文件中是否有尚未读取的数据。

返回值
一个布尔值,指示是否有数据剩余可读

◆ read_chunk()

table_with_metadata cudf::io::chunked_parquet_reader::read_chunk ( ) const

读取给定 Parquet 文件中的行块。

返回的表序列,如果按其顺序连接,保证形成一个完整的数据集,就像一次性读取整个给定文件一样。

如果给定文件为空,或者文件中的所有数据都已被先前的调用读取并返回,则将返回一个空表。

返回值
一个输出的 cudf::table 及其元数据

本类的文档生成自以下文件: