磚的Python開發人員
本節提供了一個指導發展的筆記本,在磚使用Python語言的工作。第一小節提供了常見的工作流和任務教程的鏈接。第二小節提供鏈接到api、圖書館和關鍵工具。
開始的基本工作流程是:
導入代碼:從文件中導入您自己的代碼或者Git回購或試一試下麵列出的教程。磚建議使用交互式學習磚筆記本。
一個集群上運行您的代碼:要麼自己創建一個集群,或者確保你有權限使用一個共享的集群。附上你的筆記本到集群,並運行筆記本。
除此之外,可以拓展到更具體的主題:
教程
以下教程提供了示例代碼和筆記本學習常見的工作流。看到導入一個筆記本筆記本的例子說明導入到您的工作區。
交互式數據科學和機器學習
開始使用Apache火花DataFrames數據準備和分析:教程:使用PySpark DataFrames磚
教程:端到端毫升模型磚。附加的例子,請參閱教程:開始使用毫升和MLflow指南Python快速入門。
磚AutoML讓您快速掌握開發機器學習模型在自己的數據集。與完整的玻璃盒子的方法生成筆記本機器學習工作流程,你可以克隆,修改和重新運行。
工程數據
教程:使用PySpark DataFrames磚提供了一個介紹,以幫助您了解Apache火花DataFrames數據準備和分析。
在Python中調試筆記本
筆記本的例子說明了如何使用Python調試器(pdb)磚筆記本。使用Python調試器,您必須運行磚運行時的11.2或以上。
與磚運行時的12.1及以上,可以使用變量的探險家跟蹤Python變量的當前值在筆記本上的UI。您可以使用變量explorer觀察Python變量的值在步驟斷點。
請注意
斷點()
是不支持在IPython因此在磚筆記本電腦不工作。您可以使用進口pdb;pdb.set_trace ()
而不是斷點()
。
參考
以下部分列出關鍵特性和技巧來幫助你開始開發與Python磚。
Python api
運行的Python代碼之外的磚磚內通常可以運行,反之亦然。如果你有現有的代碼,將其導入數據磚開始。看到管理代碼與筆記本和磚回購下麵的細節。
磚可以運行的單機和Python分發工作負載。對於單機計算,您可以使用Python api和庫像往常一樣;例如,熊貓和scikit-learn將“隻是工作。“對於Python分發工作負載,磚提供了兩個流行的開箱即用的API:大熊貓火花,PySpark API。
熊貓API火花
請注意
的考拉開源項目現在建議切換到熊貓API火花。熊貓API火花可以在集群上運行磚運行時的10.0(不支持)及以上。為集群運行磚運行時9.1 LTS下麵,請使用考拉代替。
熊貓是一個Python包數據科學家常用的數據分析和處理。但是,大熊貓不規模大數據。熊貓API火花填補這一差距通過提供pandas-equivalent api, Apache火花。這開源API是一個理想選擇數據科學家熟悉熊貓但不是Apache火花。
管理代碼與筆記本和磚回購
磚的筆記本支持Python。這些筆記本提供Jupyter的功能相似,但隨著添加如內置使用大數據可視化,Apache火花集成調試和性能監控、跟蹤和MLflow集成機器學習實驗。開始的導入一個筆記本。一旦你獲得一個集群,你可以附加一個筆記本集群和運行筆記本。
提示
完全重置你的筆記本,它可以是有用的重啟iPython內核。對於Jupyter用戶來說,“重新啟動內核”選項在Jupyter對應分離和重新磚的筆記本。重新啟動內核在Python筆記本,點擊計算選擇器在筆記本上附加工具欄和懸停在集群或SQL倉庫列表中顯示一個菜單。選擇分離和重新。這分離的筆記本從集群和再植,重新啟動Python的過程。
磚回購允許用戶同步筆記本和其他文件和Git存儲庫。磚回購有助於代碼版本控製和協作,它可以簡化代碼的完整存儲庫導入數據磚,查看過去的筆記本版本,與IDE集成開發。開始的克隆一個偏遠的Git存儲庫。您可以打開或創建筆記本存儲庫的克隆,把筆記本一個集群,運行筆記本。
集群和庫
磚集群為任何規模的集群提供計算管理:從單節點集群到大型集群。您可以自定義集群硬件和庫根據您的需要。通過數據科學家通常會開始工作創建一個集群或使用現有的共享的集群。一旦你獲得一個集群,你可以附加一個筆記本集群或運行工作在集群上。
磚集群使用磚運行時,它提供了開箱即用的許多流行的庫,包括Apache火花,三角洲湖,熊貓,等等。你也可以安裝其他第三方或自定義Python庫使用筆記本和工作。
從默認的圖書館磚運行時。使用介紹磚運行時機器學習對機器學習的工作負載。預先安裝的庫的完整列表,請參閱磚的運行時版本說明。
定製您的環境中使用Notebook-scoped Python庫,它允許您修改您的筆記本電腦或工作環境庫從PyPI或其他存儲庫。的
%皮普安裝my_library
神奇的命令安裝my_library
當前連接集群中的所有節點,而不幹擾其他工作負載在共享的集群。安裝將非python庫作為集群庫根據需要。
更多細節,請參閱庫。
工作
你可以自動化Python如期工作負載或觸發創建和運行數據磚的工作在磚。工作可以運行筆記本,Python腳本,和Python輪子。
提示
安排一個Python腳本,而不是筆記本,使用spark_python_task
磁場下任務
身體的創建工作的要求。
機器學習
磚支持多種機器學習(ML)工作負載,包括傳統ML表格數據,深度學習計算機視覺和自然語言處理,推薦係統中,圖形分析等等。關於機器學習的一般信息在磚上,看到的介紹磚機器學習。
對於ML算法,您可以使用預先安裝的庫中介紹磚運行時機器學習,其中包括流行的Python工具如scikit-learn TensorFlow, Keras, PyTorch, Apache火花MLlib, XGBoost。你也可以安裝自定義庫。
對機器學習操作(MLOps),磚提供了一個開源庫MLflow托管服務。MLflow跟蹤讓您記錄模型開發和保存模型可重用的格式;的MLflow模型注冊允許您管理和自動化模型對生產的促進;和工作和模型服務允許托管模型作為批處理和流媒體工作和休息的端點。的更多信息和示例,請參見MLflow指南或者是MLflow Python API文檔。
開始使用常見的機器學習工作負載,看到以下頁麵:
培訓與MLflow scikit-learn和跟蹤:10分鍾教程:機器學習與scikit-learn磚
培訓深入學習模型:深度學習
Hyperparameter調優:並行化scikit-learn和MLflow hyperparameter調優
ide、開發工具和sdk
除了發展在磚筆記本的Python代碼,您可以使用集成開發環境(ide)開發外部如PyCharm Jupyter, Visual Studio代碼。外部發展環境和磚之間同步工作,有幾個選項:
代碼:你可以使用Git同步代碼。看到Git與磚回購的集成。
庫和工作:您可以創建外部庫(如車輪)和上傳數據磚。這些庫可以在進口磚筆記本,或者他們可以用來創造就業機會。看到庫和創建和運行數據磚的工作。
遠程機器上執行:你可以從你當地的IDE運行代碼交互開發和測試。IDE可以與磚磚上執行Apache火花和大規模計算集群。學會使用磚連接創建這個連接,看到的使用ide磚。
磚的sdk提供了一組支持自動化和集成與外部工具。您可以使用磚sdk管理資源集群和圖書館、代碼和其他工作區對象,工作負載和工作等。看到磚sdk。
在ide的更多信息,開發工具,和sdk,看到開發工具和指導。
額外的資源
的磚學院提供自學和教師指導課程在許多話題。
功能,支持PySpark和熊貓之間的互操作性
Python和SQL數據庫連接
的Python的磚SQL的連接器允許您使用Python代碼上運行SQL命令磚資源。
pyodbc允許您從您的本地Python代碼通過ODBC連接到數據存儲在數據磚Lakehouse。
常見問題和建議對於Python移動工作負載數據磚