精华内容
下载资源
问答
  • Dask

    万次阅读 2019-06-11 14:26:15
    DASK 一、Dask简介 Dask是一个并行计算库,能在集群中进行分布式计算,能以一种更方便简洁的方式处理大数据量,与Spark这些大数据处理框架相比较,Dask更轻。Dask更侧重与其他框架,如:Numpy,Pandas,Scikit-...

    DASK
    一、Dask简介
    Dask是一个并行计算库,能在集群中进行分布式计算,能以一种更方便简洁的方式处理大数据量,与Spark这些大数据处理框架相比较,Dask更轻。Dask更侧重与其他框架,如:Numpy,Pandas,Scikit-learning相结合,从而使其能更加方便进行分布式并行计算。
    二、Dask数据结构
    Dask存在三种最基本的数据结构,分别是:Arrays、Dataframes以及Bags,接下来详细介绍这三种数据结构以及其应用场景。
    2.1. Arrays
    Dask中的Arrays(位于包dask.arrays下),其实就是对Numpy中的ndarray的部分接口进行了改进,从而方便处理大数据量。对于大数据集,特别是其大小大于内存时,如果我们要对其计算,按照传统的方式,,我们会将其全部塞进内存里,那么这就会报Out-Of-Memory错误,当然,我们也可以一次读取一部分数据,那么我们是否可以提前将大数据集进行分块处理了,我们只需要控制每块数据集不超过内存,从而满足In-Memory计算了?Dask就是这样做的。盗用Dask官网的一张图:
    在这里插入图片描述
    从上图中可以看出,Dask Arrays里面的每块其实就是Numpy Array,那么我们很好奇,Dask是如何分块的了,我们从dask.array里面的from_array(dask.array.core)方法来解析一下:
    在这里插入图片描述
    在这里插入图片描述
    我们发现对于一个Numpy Array,Dask对其分块的方式一共有6种,总结来看就是:对一个多维Numpy Array,假设其维度为:(D1, D2, …, Dn),那么chunks表示沿着不同Axis对其进行划分的块数,Dask会对这六种不同的方式转换成一种统一的方式(统一转换成第三种方式),如下所示:
    在这里插入图片描述
    其转换方式如下所示:
    在这里插入图片描述
    这里有一点需要注意,当chunks的值是类似‘1kiB’、‘1MiB’这种表示块大小的时候,那么在划分的时候,需要保证每块大小不能超过chunks限制的大小,例如:
    在这里插入图片描述
    因为 1kiB = 1000字节,而np.float32是4个字节,也就是将shape=(2000,)的数组分块时,没块的大小不能超过1000字节,如果将其分成8块,这每块的大小为250*4=1000,刚好满足块大小的限制。具体是怎么计算的了?
    我们假设chunks=1000 Byte,待分块的Numpy Array dtype=float32, 即该数组每个元素占用了4个字节,因此我们知道,块中的元素个数不能超过 1000/4 = 250个,因此我们只需从最大块开始划分。
    2.2. Dataframes
    Dataframe是基于Pandas Dataframe改进的一个可以并行处理大数据量的数据结构,即使对大于内存的数据也是能够处理的(注意:dask.array并不能直接处理大于内存的处理,从其源码中可以看出从Numpy Array转为Dask Array时,首先需要将Numpy Array放入内存)。
    Dask Dataframe的分区如下所示:
    在这里插入图片描述
    即以行来进行分区划分。我们接下来以dask.dataframe.read_csv(dask.dataframe.io.csv)来解析一下Dask是如何进行分区的。
    在这里插入图片描述
    接着通过read_pandas方法,然后通过read_bytes方法基于blocksize对每个文件进行一行一行的块划分(注意这里返回的是Delayed对象),最后通过text_blocks_to_pandas转成Dask Dataframe,那么为什么即使是Out-Of-Memory的数据仍然可以正常导入了,其实我们从下面的代码里面可以看出:
    在这里插入图片描述
    在这里有一个重要的概念——Delayed(延迟计算),这个之后会讲解,这里就暂时将其看作是一个指针,其并没有真的将所有分块后的数据读入内存,只是在内存中存放了一个指针指向了这些块数据。
    通过以上的步骤,我们知道了当我读取一个csv文件时,其实Dask会将其转换成一个Delayed List,列表中的每一个Delayed对象计算后的大小都不会超过blocksize。那么当我们有了一个csv文件的Delayed对象后,我们怎么将其转换成Dask Dataframe了?我们接着分析:
    在from_delayed(dask.dataframe.io.io.py)方法中我们可以看到:
    在这里插入图片描述
    因为我们知道这里的dfs其实是一个Delayed列表,那么就需要了解Delayed.dask是什么东西?为此我们进入到Delayed(dask.delayed.py)类中的dask属性:
    在这里插入图片描述
    在这里只要知道这里其实就是构建了一个任务图,接着创建Dask Dataframe:
    在这里插入图片描述
    具体过程如下所示(dask.dataframe.core.py):
    在这里插入图片描述
    我们发现最后其实就是基于构建的任务依赖图创建一个Dataframe。
    2.3. Bags
    对于Bags,其最主要的是用于半结构化的大数据集,比如日志或者博客等等,我们从其read_text(dask.bag.text.py)中来解析如何创建一个Dask Bag对象:
    在这里插入图片描述
    从里面的delayed方法我们可以看出,该方法最后返回的是一个Delayed对象。针对Delayed对象我们之后再介绍。
    三、High Level Graph简介
    正如我们在前一节中看到的,创建Dask Dataframe时,其实是通过HighLevelGraph构建了一个任务图,那么这个任务图是什么了?其实他本质上就是一个字典结构(Dict),从组成元素来看,一共由两部分组成,一个是动作(可看做是Task Graph中的节点),一个是依赖(可看做是Task Graph中的边),其定义为:
    在这里插入图片描述
    我们以官网上的一个例子来详细了解一下:
    在这里插入图片描述
    对于这个例子中的df,其指向的是最后一层的输出:
    在这里插入图片描述
    四、Dask分布式简介
    Dask之所以能够高效的处理大数据量,在于其可进行分布式计算,对于分布式计算,那么就面临着两大基本问题:
    1.如何通信或者说数据如何传输?
    2.如何调度或者说Scheduler如何将Task分发给Worker?
    在Dask 分布式中(也可以是伪分布式,即在本机中通过线程或者进程来并行处理,在本文中不作介绍),共有三种角色:Client端,Scheduler端以及Worker端,其中Client负责提交Task给Scheduler,Scheduler负责对提交的Task按照一定的策略分发给Worker,Worker进行实际的计算、数据存储,在此期间,Scheduler时刻关注着Worker的状态。
    接下来我们将就这两个方面说明Dask是如何处理的。
    1.如何通信问题
    说到通信,无非需要解决两个问题:通信各节点怎么能互相找到,在Dask中,也就是Client端、Scheduler端及Worker端怎么能相互发现?首先在Dask中,需要通信的各个节点都需要有自己的一个身份ID,在Dask中是通过URI来表示的,例如tcp://192.168.0.1:35072,在Dask中,通常是通过TCP进行通信(也可以用TLS何Inproc);另一个问题,怎么传输信息,也就是待传输的数据格式如何定义?我们知道当Client提交一个Task给Scheduler时,最后的Task计算是由Worker来做的,同时需要考虑网络带宽,因此节点之间传输的数据量尽可能的少,同时传输速度尽可能快。因此,我们需要一个协议(Protocol)来指导数据的编码和解码,这里的数据不仅仅指Python Object,也指Python Function。
    在Dask中,需要传输的原始Message是通过字典来表示的,如下所示:
    在这里插入图片描述
    接下来就是将其进行序列化,在Dask中目前是通过MsgPack与Pickle和CloudPickle进行序列化及反序列化。
    2.如何调度问题
    当在Client端提交了一批Task,那么Scheduler如何调度,这直接影响到整个分布式计算的效率。我们首先了解一下整体流程如下图所示:
    在这里插入图片描述
    当整个提交的Task完成后,用于可以通过Scheduler从Worker中获取Task运行结果。
    在整个任务调度中,对于每个Worker,会经历接受新Task -> 等待依赖Task完成 -> 计算Task -> 保存数据 -> Garbage回收。而Scheduler的任务就是追踪所有的Worker,在Dask中,Scheduler会对下面三种实体的状态进行记录:
    1.分解后的Task Graph。每个任务及对应的状态都是会被Scheduler记录
    2.与Worker的连接
    3.与Client的连接
    对于每个任务,在Scheduler中有多个不同的状态表示,以及对应的状态转移过程,通过Scheduler中的TaskState类可以获取Scheduler管理的所有任务当前状态信息。
    对于每个Worker,可以通过Scheduler中的WorkerState获取Scheduler管理的所有Worker。
    对于Scheduler,为了能够更好的对Task进行调度,他会维护两个结构:一个用来收集那些资源占用情况占比过大(大大超过了平均值)的Worker,另一个用来收集那些资源占用率不高的Worker,以便可以立即执行Task。
    对于每个Client,可以通过Scheduler中的ClientState获取Scheduler管理的所有Client。
    在Scheduler中,监听着Client和Worker的状态,基于以下的动作从而更新Scheduler对于Client或Worker的状态:
    对于Worker:
    1.Task完成了
    2.Task失败了
    3.Task缺少必要的数据
    4.添加Worker
    5.移除Worker
    对于Client:
    1.更新Task Graph,添加更多Task
    2.释放结果Key值,即不再需要Scheduler返回Task Graph运行结果了
    从上面的介绍中,我们知道了Scheduler记录了关于所有Task、Client和Worker的信息,那么基于这些信息,该如何有效的进行调度?或者说Scheduler怎么从一个任务池中选择待分发的任务,又如何从候选Worker中选择可以接受任务的Worker?
    对于Worker的选择,Scheduler会根据当前待分配任务的限制(比如是否限制GPU等)得到一个满足基本条件的Worker列表,然后会基于Worker的当前资源占用信息(比如当前内存占用率,当前运行Task数),还会综合考虑分配至哪个Worker上,在Worker间传输的数据最少,具体的Worker选择策略见 decide_worker方法。
    对于Task的选择,Dask有自己的一套准则:
    1.保证相对公平,即多个Client提交的Task,尽量保证先到先服务的原则
    2.尽量优先运行重要的Task序列,从而减少总体运行时间和集群负载
    3.尽量优先运行依赖了多个Task的任务,因为只有运行了这种任务,才能释放其所依赖Task占用的资源
    4.尽量优先运行相关较高的Task
    要保证上面的设计原则都完全满足是很困难的,最终Dask采用了一些启发原则,具体见dask/order.py。
    五、延迟计算与即时计算
    在Dask中有两种方式的计算,一种是延迟计算,称为Delayed,另一种是即时计算,称为Future,这两种计算是什么意思了?我们先从Delayed进行介绍。
    1.Delayed
    我们只需要在一个普通的Python Function上面通过dask.delayed函数进行封装,就能得到一个Delayed对象,如下所示:
    在这里插入图片描述
    所示Delayed只是构建一个Task Graph,并没有进行实际的计算,只有调用compute的时候,才开始进行计算。这对于处理那些可进行并行处理的操作有着很大的作用,不论是对于大数据量或是CPU密集型任务。
    2.Future
    对于Delayed,其并没有立即计算,只是构建了一个Task Graph,而对于Future是立即执行的,可以通过submit、map方法将一个Function提交给Scheduler,在后台,Scheduler会对提交的任务进行处理并分发给Workers进行实际的计算。当任务提交后,会返回一个指向任务运行结果的Key值,即Future对象,我们可以跟踪其当前状态,当然我们也可以通过result和gather方法等待任务完成后从而将结果收集到本地。
    六、Dask机器学习库简介
    目前Dask-ML对Sklearn支持较好,对Xgboost也能直接调用使用,对Tensorflow,由于TF已经在分布式处理上非常优秀了,所有Dask-ML并没有对其分布式过程进行过多的处理,其主要是在通过TF训练模型过程中,通过start_tensorflow指定集群的Parameter Server和 Worker Server,这些Server对应的就是Dask中的Workers。针对Dask-ML,如下图所示:
    在这里插入图片描述
    七、Dask与Tensorflow的结合
    对于Dask与TF的结合,分为两个部分,一个是训练阶段,一个是预测阶段。对于训练阶段,相对来说较复杂些,可以参考这个链接:
    http://matthewrocklin.com/blog/work/2017/02/11/dask-tensorflow
    而对于预测阶段,就相对容易一些:
    总体步骤就是:
    1.将样本封装成Dask样本数据。这里有个问题需要注意,对于csv文本数据,我们可以很容易通过read_csv这样的方式得到Dask Dataframe格式数据,但是对于Image类型数据,因为Dask Dataframe仅支持二维Numpy Array内部数据,所以对于图片的处理需要借助Dask Array和Delayed进行处理。
    2.通过client提交predict任务。
    3.在predict任务中进行模型加载及实际预测任务。
    八、Dask分布式性能诊断
    TO DO
    九、Dask与K8s的结合
    目前Dask与K8s的结合,主要有如下几种方式:
    在这里插入图片描述
    目前自己测试,主要是基于Helm Repo中的stable/dask为基础镜像,然后添加一些必须的包依赖,构建的一个镜像,大小大约1.83G。

    展开全文
  • dask

    2020-04-26 22:54:41
    dask demo测试

    dask demo测试

    展开全文
  • DASK

    千次阅读 2019-08-19 08:49:27
    一、什么是DASK? Dask 是一个开源项目,为你提供 NumPy 数组、Pandas Dataframes 以及常规 list 的抽象,允许你使用多核处理器并行运行它们的操作。 参考: 在 Python 中,如何运用 Dask 数据进行并行数据分析 ...

    一. Dask介绍

    Dask是一款用于分析计算的灵活并行计算库。
    Dask 是一个开源项目,为你提供 NumPy 数组、Pandas Dataframes 以及常规 list 的抽象,
    	允许你使用多核处理器并行运行它们的操作。
    Dask是一个并行计算库,能在集群中进行分布式计算,能以一种更方便简洁的方式处理大数据量,
        与Spark这些大数据处理框架相比较,Dask更轻。Dask更侧重与其他框架,
        如:Numpy,Pandas,Scikit-learning相结合,从而使其能更加方便进行分布式并行计算。
    Dask由两部分组成:
        ·针对计算优化的动态任务调度。这与Airflow,Luigi,Celery或Make类似,但针对交互式计算工作负载进行了优化。
        · "大数据"集合, 像并行数组,数据框和列表一样,它们将通用接口(如NumPy,Pandas或Python迭代器)扩展到大于内存或分布式环境。 
            这些并行集合运行在动态任务调度器之上。
    

    二. dask安装

    · 在线安装:
        pip install dask: # 仅安装核心部分
        pip install "dask[complete]" : 安装完整版本
    · 离线安装:
        方法步骤[https://blog.csdn.net/weixin_39916734/article/details/95345351] 
        注意: dask的有一些库要求的python版本 > 2.7.8 或者 3.4——版本过低容易被坑
    

    三. 数据结构

    · Arrays:
        Dask中的Arrays(位于包dask.arrays下),其实就是对Numpy中的ndarray的部分接口进行了改进,从而方便处理大数据量。
        对于大数据集,特别是其大小大于内存时,如果我们要对其计算,按照传统的方式,我们会将其全部塞进内存里,
        那么这就会报Out-Of-Memory错误,当然,我们也可以一次读取一部分数据,那么我们是否可以提前将大数据集进行分块处理了,
        我们只需要控制每块数据集不超过内存,从而满足In-Memory计算了?Dask就是这样做的。
    · Dataframes:
        Dataframe是基于Pandas Dataframe改进的一个可以并行处理大数据量的数据结构,即使对大于内存的数据也是能够处理的.
    · Bags:
        对于Bags,其最主要的是用于半结构化的大数据集,比如日志或者博客等等
    

    四. High Level Graph简介

    比如我们在创建Dask Dataframe时,其实是通过HighLevelGraph构建了一个任务图,那么这个任务图是什么?
    其实他本质上就是一个字典结构(Dict),从组成元素来看,一共由两部分组成,
    一个是动作(可看做是Task Graph中的节点),一个是依赖(可看做是Task Graph中的边)
    

    四. 分布式简介

    在Dask 分布式中(也可以是伪分布式,即在本机中通过线程或者进程来并行处理),共有三种角色:Client端,Scheduler端以及Worker端,
    · Client负责提交Task给Scheduler
    · Scheduler负责对提交的Task按照一定的策略分发给Worker
    · Worker进行实际的计算、数据存储,在此期间,Scheduler时刻关注着Worker的状态。
    

    五. 延时计算与即时计算

    · Delayed: 
        只需在一个普通的Python Function上面通过dask.delayed函数进行封装,就能得到一个Delayed对象
        只是构建了一个Task Graph,并没有进行实际的计算,只有调用compute的时候,才开始进行计算
    · Future:
        对于Future是立即执行的,可以通过submit、map方法将一个Function提交给Scheduler,
        在后台,Scheduler会对提交的任务进行处理并分发给Workers进行实际的计算。
        当任务提交后,会返回一个指向任务运行结果的Key值,即Future对象,
        我们可以跟踪其当前状态,当然我们也可以通过result和gather方法等待任务完成后从而将结果收集到本地
    

    二. 简单使用

    · 读取csv
        import dask.dataframe as dd
        df = dd.read_csv('2015-*-*.csv')
        df.groupby(df.user_id).value.mean().compute()
    · 读取hdf5
        import dask.array as da
        f = h5py.File('myfile.hdf5')
        x = da.from_array(f['/big-data'], chunks=(1000, 1000))
        x - x.mean(axis=1).compute()
    · Dask Bag
        import dask.bag as db
        b = db.read_text('2015-*-*.json.gz').map(json.loads)
        b.pluck('name').frequencies().topk(10, lambda pair: pair[1]).compute()
    · Dask delayed
        from dask import delayed
        L = []
        for fn in filenames:                  # Use for loops to build up computation
            data = delayed(load)(fn)          # Delay execution of function
            L.append(delayed(process)(data))  # Build connections between variables
        result = delayed(summarize)(L)
        result.compute()
    · Client
        client = Client(processes=True)
        from_sequence(seq[, partition_size, npartitions]): Create a dask Bag from Python sequence.
        dask.compute(): Compute several dask collections at once.
    

    参考:

    1. Dask教程: https://www.cnblogs.com/HelloGreen/p/8817863.html
    2. Dask: https://blog.csdn.net/jack_jmsking/article/details/91433854
    3. python︱大规模数据存储与读取、并行计算:Dask库简述: https://blog.csdn.net/sinat_26917383/article/details/78044437
    展开全文
  • dask Documentation

    2018-07-19 14:26:54
    dask Documentation 英文文档。。。。。。。。。。。。
  • 快问 使用daskdask_cudf转换数据的实用程序。 大多数对象可以带任一个对象,并且仍将进行处理。
  • Python和Dask:扩展DataFrame 该存储库包含有关Python和Dask的幻灯片,练习和答案:缩放数据框。 本教程的目标是教给您一个在熊猫中处理表格数据方面经验丰富的人,以解决不适合在一台计算机上存储的问题。 为什么...
  • dask cheatsheet

    2018-11-23 18:26:05
    DASK FOR PARALLEL COMPUTING CHEAT SHEET
  • dask-sql dask-sql在dask之上添加一个SQL查询层。 这使您可以使用常见SQL操作来查询和转换dask数据框。 查询将作为常规的dask操作运行,这些操作可以分布在dask群集中。 因此,该项目的目标类似于Hadoop世界中的...
  • Dask JupyterLab扩展 该软件包提供了一个JupyterLab扩展来管理Dask集群,并将Dask的仪表板图直接嵌入JupyterLab窗格中。 解释性视频(5分钟) 要求 JupyterLab> = 1.0分布> = 1.24.1 安装 要安装Dask JupyterLab...
  • 请参阅文档页面,以获取有关使用云资源部署Dask的更多信息。 达斯EC2 在配置了dask.distributed ,Jupyter Notebook和Anaconda的Amazon EC2上轻松启动集群。 安装 您还可以使用pip安装dask-ec2 : $ pip install ...
  • 我们建议您改用dask-jobqueue: : 在运行兼容的作业调度程序的群集之上部署群集。 例子 从Python启动 from dask_drmaa import DRMAACluster cluster = DRMAACluster () from dask . distributed import Client ...
  • 达斯克·阿夫罗(Dask-Avro) Avro Dask阅读器。 免费软件:MIT许可证 文档: : 。 Python版本:2.7、3.5+ 特征 该项目为提供了格式的阅读器。 提供了一种方便的功能,可以读取一个或多个Avro文件并对其进行任意...
  • introduction dask

    2019-07-16 03:44:54
    DASK provides multi-core and distributed parallel execution on larger-than-memory datasets. We can think of Dask at a high and a low level High level collections: DASK provides high-level...

    Overview

    • DASK provides multi-core and distributed parallel execution on larger-than-memory datasets.
      We can think of Dask at a high and a low level

    • High level collections: DASK provides high-level Array, Bag, and DataFrame collections that mimic NumPy, lists, and Pandas but can operate in parallel on datasets that don’t fit into memory. DASK’s high-level collections are alternatives to NumPy and Pandas for large datasets.

    • Low Level schedulers: DASK provides dynamic task schedulers that execute task graphs in parallel. These execution engines power the high-level collections mentioned above but can also power custom, user-defined workloads. These schedulers are low-latency (around 1ms) and work hard to run computations in a small memory footprint. DASK’s schedulers are an alternative to direct use of threading or multiprocessing libraries in complex cases or other task scheduling systems like Luigi or IPython parallel.

    Tutorials:

    0. High Level Data Structured

    1. Array(VS NumPy)
    • Dask arrays support most of the NumPy interface like the following
    1. Bag(VS List) https://docs.dask.org/en/latest/bag-overview.html
    • Parallel: like Spark RDD and toolz
    • Like list we can map, filter, fold, and groupby
    • Common Uses: Dask bags are often used to parallelize simple computations on unstructured or semi-structured data like text data, log files, JSON records, or user defined Python objects. Make BIG file easy!!!
    1. Dataframe(VS Pandas)
    • SAME API with Pandas: Pandas影响力太大了,spark也在出koalas来使用pandas的api操作spark
    • Common Uses and Anti-Uses:总结就是单机能处理还是用pandas吧. 并且,能避免使用dataframe的话还是避免使用,毕竟计算效率比较低(但是做data analytics时候几乎无法避免)
    #Dask DataFrame is used in situations where Pandas is commonly needed, usually when Pandas fails due to data size or computation speed:
    Manipulating large datasets, even when those datasets don’t fit in memory
    Accelerating long computations by using many cores
    Distributed computing on large datasets with standard Pandas operations like groupby, join, and time series computations
    
    #Dask DataFrame may not be the best choice in the following situations:
    If your dataset fits comfortably into RAM on your laptop, then you may be better off just using Pandas. There may be simpler ways to improve performance than through parallelism
    If your dataset doesn’t fit neatly into the Pandas tabular model, then you might find more use in dask.bag or dask.array
    If you need functions that are not implemented in Dask DataFrame, then you might want to look at dask.delayed which offers more flexibility
    If you need a proper database with all that databases offer you might prefer something like Postgres
    

    1. Dask Scheduler(delay, submit) - Lazy Execution

    https://github.com/dask/dask-examples/blob/master/delayed.ipynb
    https://github.com/dask/dask-examples/blob/master/futures.ipynb
    Just like Airflow, if you want to make calculation in some order. Both DASK and Airflow are easy to scale up.

    2. Distributed

    Dask comes with four available schedulers:
    
    "threaded": a scheduler backed by a thread pool
    "processes": a scheduler backed by a process pool
    "single-threaded" (aka "sync"): a synchronous scheduler, good for debugging
    distributed: a distributed scheduler for executing graphs on multiple machines, see below.
    

    3. Distributed ML

    https://github.com/dask/dask-examples/blob/master/machine-learning.ipynb
    https://github.com/dask/dask-examples/blob/master/dataframe.ipynb
    #method-1-in memory
    from sklearn.externals import joblib
    with joblib.parallel_backend(‘dask’):
    grid_search.fit(X, y)

    #method-2-disk memory
    Most estimators in scikit-learn are designed to work on in-memory arrays. Training with larger datasets may require different algorithms.

    All of the algorithms implemented in Dask-ML work well on larger than memory datasets, which you might store in a dask array or dataframe.

    4. Summary: Dask VS Spark

    过了一遍教程之后,觉得Dask和Spark太像了,除了Spark是全平台但Dask是python only。Dask的delay功能也可以被Airflow替代。官方更详细的解释在这里。https://docs.dask.org/en/stable/spark.html

    展开全文
  • 达斯克·库伯内特斯 适用于Dask的本地Kubernetes集成。
  • Dask教程

    千次阅读 2019-09-30 01:37:50
    Dask 介绍 Dask是一款用于分析计算的灵活并行计算库。 Dask由两部分组成: 针对计算优化的动态任务调度。这与Airflow,Luigi,Celery或Make类似,但针对交互式计算工作负载进行了优化。 “大数据”集合, 像并行数组...
  • 达斯克-ML Dask-ML使用与流行的机器学习库(例如 , 等)一起,使用在Python中提供可扩展的机器学习。 您可以通过单击以下按钮在小型云实例上尝试Dask-ML: 执照 新的BSD。 请参阅。
  • dask 安装

    2020-05-29 14:00:48
    pip install dask[complete] -i https://pypi.tuna.tsinghua.edu.cn/simple
  • 在工作队列系统上部署Dask 轻松部署Dask在诸如PBS,Slurm或SGE之类的工作排队系统上分发。 请参阅以获取更多信息。 执照 新的BSD。 请参阅。
  • dask_stitch 在dask中进行map_overlap调用的线性混合拼接
  • Dask示例笔记本 该存储库包含易于运行的Dask示例笔记本。 它们旨在提供教育性知识,并为用户提供常见工作流程的入门。 如果您下载此存储库,它们应该易于在本地运行。 单击下面的链接,也可以在云上使用它们: 贡献...
  • 关于pangeo-dask 主页: : 软件包许可证:麻省理工学院 原料许可证: 摘要:pangeo dask依赖项 当前构建状态 所有平台: 当前发行信息 姓名 资料下载 版本 平台类 安装pangeo-dask 安装pangeo-dask从conda-...
  • dask-image:大数据的分布式图像处理 吉纳维芙·巴克利(Genevieve Buckley)的演讲,2020年 上(仅以英语演示) (英语演示,日语字幕) 本讲座介绍dask-image,这是一个用于分布式图像处理的python库。 dask-...
  • 在AzureML上运行Dask 该库显示如何运行的集群计算集群。 它被设计为可在AzureML Notebook VM(在2019年8月15日之后创建)上运行,但它也应在本地计算机上运行。 请按照以下安装说明进行操作,然后开始: 这里是...
  • dask-stories-源码

    2021-05-24 13:33:42
    该存储库包含来自经验丰富的Dask用户的故事,旨在帮助新用户了解Dask如何应用于其领域。 如果您对Dask感到好奇,请阅读各种提交的故事。 如果您今天使用Dask解决有趣的问题,我们希望与您分享您的故事。 像您这样...
  • dask-lightgbm-源码

    2021-05-04 02:33:47
    Dask-LightGBM-已淘汰 此存储库已弃用 该存储库已弃用,不再维护。 该代码已迁移到LightGBM软件包-https: 。 使用LightGBM和Dask进行分布式培训。 该存储库使您能够对Dask.Array和Dask.DataFrame集合使用LightGBM...
  • dask 大数据Pandas, but for big data 熊猫,但大数据 Ever dealt with dataframes several GBs in size, perhaps exceeding the capacity of the RAM in your local machine? Pandas can’t handle dataframes ...
  • 原文来自:Dask Examples XGBoost可以通过Dask来并行化训练。 XGBoost提供了一个强大的预测框架,在Kaggle竞赛和工业界都表现不错,它具有很好的性能和易解释性。(例如,很容易从XGBoost模型中找到重要的特征。) ...
  • <div><p>Parts of dask need bokeh, so added it as a dep. Also added <code>dask-jobqueue</code> extension to dask. <p>And added foss version of it all as that seems to work more stable.</p><p>该提问来源...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,188
精华内容 875
关键字:

Dask