mindpandas.config
MindPandas配置文件
- mindpandas.config.set_concurrency_mode(mode, **kwargs)[源代码]
设置并发模式,可选并发模式有”multithread”和”multiprocess”,默认模式为”multithread”。两种模式的介绍及使用请参考 MindPandas执行模式介绍及配置说明 。
- 参数:
mode (str) - 可设置为”multithread”或”multiprocess”。
kwargs - 在”multithread”模式下运行时不需要额外的参数。在”multiprocess”模式下, kwargs 包括:
address: 主节点的ip地址,必填。
- 异常:
ValueError - mode 不是”multithread”或”multiprocess”。
样例:
>>> # Change the mode to multiprocess. >>> import mindpandas as pd >>> pd.set_concurrency_mode('multiprocess', address='127.0.0.1')
- mindpandas.config.get_concurrency_mode()[源代码]
获取当前的并发模式,模式是”multithread”或”multiprocess”。
- 返回:
string,当前的并发模式。
样例:
>>> # Get the current concurrency mode. >>> import mindpandas as pd >>> mode = pd.get_concurrency_mode()
- mindpandas.config.set_partition_shape(shape)[源代码]
用户可以设置数据分片的shape,其中shape[0]是行方向上的分片数量,shape[1]是列方向上的分片数量。例如,设置shape为(16, 16)时,MindPandas会尝试将数据切分为16*16个分片。
- 参数:
shape (tuple) - 在每个轴上期望的分片数。shape是一个包含两个正整数的元组,第一个元素是行方向上的分片数量,第二个元素是列方向上的分片数量。
- 异常:
ValueError - shape不是tuple类型或者shape的值不是正整数。
样例:
>>> # Set the shape of each partition to (16, 16). >>> import mindpandas as pd >>> pd.set_partition_shape((16, 16))
- mindpandas.config.get_partition_shape()[源代码]
获取当前分片的维度。
- 返回:
tuple,沿每个轴的预期分片数。它是由两个正整数组成的元组。第一个元素是分片的行数,第二个元素是分片的列数。
样例:
>>> # Get the current partition shape. >>> import mindpandas as pd >>> mode = pd.get_partition_shape()
- mindpandas.config.set_adaptive_concurrency(adaptive)[源代码]
用户可以设置自适应并发,让 read_csv 基于文件大小自动选择并发模式。可选项为”True”或”False”。设置为True时,从 read_csv 读取的文件大小超过18MB,或者使用”pandas.DataFrame”初始化的”mindpandas.DataFrame”,内存占用大于1GB时将使用多进程模式,否则使用多线程模式。设置为False时,会使用当前的并发模式。
- 参数:
adaptive (bool) - 为True时开启自适应模式,为False时关闭自适应模式。
- 异常:
ValueError - adaptive 不是True或者False。
样例:
>>> # Set adaptive concurrency to True. >>> import mindpandas as pd >>> pd.set_adaptive_concurrency(True)
- mindpandas.config.get_adaptive_concurrency()[源代码]
获取是否使用自适应并发的标记位。
- 返回:
bool,自适应并发标记位的值。
样例:
>>> # Get the adaptive concurrency flag. >>> import mindpandas as pd >>> adaptive = pd.get_adaptive_concurrency()
- mindpandas.config.set_min_block_size(min_block_size)[源代码]
用户可以使用此API设置每个分片的最小块大小, min_block_size 表示分片的每个轴的最小尺寸。每个分片的大小将大于或等于 (min_block_size, min_block_size) ,除非原始数据就小于 (min_block_size, min_block_size) 。例如,对于一个只有16列、分片维度为(2, 2)的”DataFrame”,如果 min_block_size 设置为32,在分片时不会进一步拆分列。
- 参数:
min_block_size (int) - 分片最小块的最小行数和列数。
- 异常:
ValueError - min_block_size 不是int类型。
样例:
>>> # Set the min block size of each partition to 8. >>> import mindpandas as pd >>> pd.set_min_block_size(8)