溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Python中的Dask有什么作用

發(fā)布時間:2021-08-12 14:30:23 來源:億速云 閱讀:180 作者:chen 欄目:編程語言

本篇內(nèi)容主要講解“Python中的Dask有什么作用”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Python中的Dask有什么作用”吧!

前言

Python由于其易用性而成為最流行的語言,它提供了許多庫,使程序員能夠開發(fā)更強(qiáng)大的軟件,以并行運(yùn)行模型和數(shù)據(jù)轉(zhuǎn)換。

有這么一個庫,它提供了并行計算、加速了算法,甚至允許您將NumPy和pandas與XGBoost庫集成在一起。讓我們認(rèn)識一下吧。

什么是Dask

Dask是一個開源項(xiàng)目,它允許開發(fā)者與scikit-learn、pandas和NumPy合作開發(fā)他們的軟件。它是一個非常通用的工具,可以處理各種工作負(fù)載。

這個工具包括兩個重要的部分;動態(tài)任務(wù)調(diào)度和大數(shù)據(jù)收集。前面的部分與Luigi、芹菜和氣流非常相似,但它是專門為交互式計算工作負(fù)載優(yōu)化的。

后一部分包括數(shù)據(jù)幀、并行數(shù)組和擴(kuò)展到流行接口(如pandas和NumPy)的列表。

事實(shí)上,Dask的創(chuàng)建者M(jìn)atthew  Rocklin先生確認(rèn)Dask最初是為了并行化Pandas和NumPy而創(chuàng)建的,盡管它現(xiàn)在提供了比一般的并行系統(tǒng)更多的好處。

Dask的數(shù)據(jù)幀非常適合用于縮放pandas工作流和啟用時間序列的應(yīng)用程序。此外,Dask陣列還為生物醫(yī)學(xué)應(yīng)用和機(jī)器學(xué)習(xí)算法提供多維數(shù)據(jù)分析。

可擴(kuò)展性

Dask如此受歡迎的原因是它使Python中的分析具有可擴(kuò)展性。

這個工具的神奇之處在于它只需要最少的代碼更改。該工具在具有1000多個核的彈性集群上運(yùn)行!此外,您可以在處理數(shù)據(jù)的同時并行運(yùn)行此代碼,這將簡化為更少的執(zhí)行時間和等待時間!

Python中的Dask有什么作用

該工具完全能夠?qū)?fù)雜的計算計算調(diào)度、構(gòu)建甚至優(yōu)化為圖形。這就是為什么運(yùn)行在10tb上的公司可以選擇這個工具作為首選的原因。

Dask還允許您為數(shù)據(jù)數(shù)組構(gòu)建管道,稍后可以將其傳輸?shù)较嚓P(guān)的計算資源??傊@個工具不僅僅是一個并行版本的pandas。

如何工作

現(xiàn)在我們已經(jīng)理解了Dask的基本概念,讓我們看一個示例代碼來進(jìn)一步理解:

import dask.array as da  f = h6py.File('myfile.hdf5')  x = da.from_array(f['/big-data'],                    chunks=(1000, 1000))

對于那些熟悉數(shù)據(jù)幀和數(shù)組的人來說,這幾乎就是你放置數(shù)據(jù)的地方。

在本例中,您已經(jīng)將數(shù)據(jù)放入了Dask版本中,您可以利用Dask提供的分發(fā)特性來運(yùn)行與使用pandas類似的功能。

為何如此流行

作為一個由PyData生成的現(xiàn)代框架,Dask由于其并行處理能力而備受關(guān)注。

在處理大量數(shù)據(jù)——尤其是比RAM大的數(shù)據(jù)塊——以便獲得有用的見解時,這是非常棒的。公司受益于Dask提供的強(qiáng)大分析,因?yàn)樗趩螜C(jī)上進(jìn)行高效的并行計算。

這就是為什么Gitential、Oxlabs、DataSwot和Red  Hat等跨國公司已經(jīng)在他們的日常工作系統(tǒng)中使用Dask的主要原因??偟膩碚f,Dask之所以超級受歡迎是因?yàn)?

  • 集成:Dask提供了與許多流行工具的集成,其中包括PySpark、pandas、OpenRefine和NumPy。

  • 動態(tài)任務(wù)調(diào)度:它提供了動態(tài)任務(wù)調(diào)度并支持許多工作負(fù)載。

  • 熟悉的API:這個工具不僅允許開發(fā)人員通過最小的代碼重寫來擴(kuò)展工作流,而且還可以很好地與這些工具甚至它們的API集成。

  • 向外擴(kuò)展集群:Dask計算出如何分解大型計算并有效地將它們路由到分布式硬件上。

  • 安全性:Dask支持加密,通過使用TLS/SSL認(rèn)證進(jìn)行身份驗(yàn)證。

優(yōu)缺點(diǎn)

讓我們權(quán)衡一下這方面的利弊。

使用Dask的優(yōu)點(diǎn):

  • 它使用pandas提供并行計算。

  • Dask提供了與pandas API類似的語法,所以它不那么難熟悉。

使用Dask的缺點(diǎn):

  • 在Dask的情況下,與Spark不同,如果您希望在創(chuàng)建集群之前嘗試該工具,您將無法找到獨(dú)立模式。

  • 它在Scala和R相比可擴(kuò)展性不強(qiáng)。

到此,相信大家對“Python中的Dask有什么作用”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI