mindpandas.config

MindPandas配置文件

mindpandas.config.set_concurrency_mode(mode, **kwargs)

设置并发模式,可选并发模式有 "multithread""multiprocess",默认模式为 "multithread"。两种模式的介绍及使用请参考 MindPandas执行模式介绍及配置说明

参数:
  • mode (str) - 可设置为 "multithread""multiprocess"

  • **kwargs - 在 "multithread" 模式下运行时不需要额外的参数。在 "multiprocess" 模式下, kwargs 包括:

    • address (str) : master节点的IP地址。可选,默认使用 "127.0.0.1"

    • cpu (int) : 用户设定使用的CPU核数。可选,默认使用当前节点的所有核。

    • datamem (int) : 共享内存的大小,单位是MB。可选,默认使用当前空闲内存的30%。

    • mem (int) : MindPandas使用的总内存(包含共享内存),单位是MB。可选,默认使用当前空闲内存的90%。

    • tmp_dir (str) : 临时文件的存放路径。可选,默认使用 "/tmp/mindpandas/" 作为临时文件的存放路径。

    • tmp_file_size_limit (int) : 临时文件的大小限制,单位是MB。可选,默认上限为当前空闲磁盘空间的95%。

异常:
  • ValueError - mode 不是 "multithread""multiprocess"

mindpandas.config.get_concurrency_mode()

获取当前的并发模式,模式是 "multithread""multiprocess"

返回:

string,当前的并发模式。

mindpandas.config.set_benchmark_mode(mode)

用户可以选择是否打开”benchmark”模式进行性能分析。

参数:
  • mode (bool) - 可设置为 TrueFalse。为 True 时开启”benchmark”模式,为 False 时关闭”benchmark”模式。默认为 False

异常:
  • ValueError - mode 不是bool。

mindpandas.config.get_benchmark_mode()

获取当前环境”benchmark”模式的状态。

返回:

bool,当前”benchmark”模式是否开启。

mindpandas.config.set_partition_shape(shape)

用户可以设置数据分片的shape,其中shape[0]是行方向上的分片数量,shape[1]是列方向上的分片数量。例如,设置shape为 \((16, 16)\) 时,MindPandas会尝试将数据切分为16*16个分片。

参数:
  • shape (tuple) - 在每个轴上期望的分片数。shape是一个包含两个正整数的元组,第一个元素是行方向上的分片数量,第二个元素是列方向上的分片数量。

异常:
  • ValueError - shape不是tuple类型或者shape的值不是正整数。

mindpandas.config.get_partition_shape()

获取当前分片的维度。

返回:

tuple,沿每个轴的预期分片数。它是由两个正整数组成的元组。第一个元素是分片的行数,第二个元素是分片的列数。

mindpandas.config.set_adaptive_concurrency(adaptive, **kwargs)

用户可以选择是否开启自适应并发模式。

参数:
  • adaptive (bool) - 是否开启自适应并发模式。设置为 True 时开启,从 read_csv 读取的文件大小超过18MB时、使用”pandas.DataFrame”初始化的”mindpandas.DataFrame”时或者内存占用大于1GB时,将使用多进程模式,否则使用多线程模式。设置为 False 时关闭自适应并发模式,使用当前环境设置的并发模式。

  • **kwargs - 当 adaptiveFalse 时不需要额外的参数,为 Truekwargs 包括:

    • address (str) : master节点的IP地址。可选,默认使用 "127.0.0.1"

    • cpu (int) : 用户设定使用的CPU核数。可选,默认使用当前节点的所有核。

    • datamem (int) : 共享内存的大小,单位是MB。可选,默认使用当前空闲内存的30%。

    • mem (int) : MindPandas使用的总内存(包含共享内存),单位是MB。可选,默认使用当前空闲内存的90%。

    • tmp_dir (str) : 临时文件的存放路径。可选,默认使用 "/tmp/mindpandas/" 作为临时文件的存放路径。

    • tmp_file_size_limit (int) : 临时文件的大小限制,单位是MB。可选,默认上限为当前空闲磁盘空间的95%。

异常:
  • ValueError - adaptive 不是bool。

mindpandas.config.get_adaptive_concurrency()

获取是否使用自适应并发模式的标记位。

返回:

bool,是否使用自适应并发模式。

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类型。

mindpandas.config.get_min_block_size()

获取每个分片的当前最小块大小。

返回:

int,config中每个分片的当前 min_block_size