取消
顯示的結果
而不是尋找
你的意思是:

人們是如何開發在一個團隊中使用python庫磚嗎?

spott_submittab
新的貢獻者二世

過去,在磚之前,我將試著把常用的功能和特性的筆記本,放在一個python庫,整個團隊工作和發展。這允許好的代碼重用和維護團隊內的最佳實踐。

我這樣做明智地使用“pip安裝- e。”和“% autoreload”過去,讓我同時在筆記本電腦和筆記本取決於圖書館。

有辦法做這種磚的發展?別人如何開發這類庫使用磚嗎?人們做大部分是複製粘貼發展不同的筆記本嗎?

9回複9

Kaniz
社區經理
社區經理

你好@spott_submittable!我的名字叫Kaniz,我這裏的技術主持人。很高興認識你,謝謝你的問題!看看你的同行在社區有一個先回答你的問題。否則我將與我的團隊跟進,回到你soon.Thanks。

werners1
尊敬的貢獻者三世

這是一個非常有趣的問題。

我們將使用databricks-connect可重用的代碼庫。所以我們在IDE開發庫,把他們放進一個圖書館,把標簽貼到集群(ofc使用git)。

然而,這是一個次優的國際海事組織方法大量代碼駐留在筆記本電腦,所以我們有一個混合的筆記本代碼和庫代碼庫。

還databricks-connect不是最新數據磚後發布。這是一個遺憾。

我真的很想有一個單獨的環境,我們有筆記本的優點和ide的優勢,像女士VS代碼。

dazfuller
貢獻者三世

我們這樣做的方法就是盡可能多的可重用的代碼打包成一個共同的庫,然後測試它在一英寸的生活單元測試(我傾向於使用unittest門檻降低,但框架最適合您)。這包括將任何用戶定義的函數或火花API函數通過與火花在本地運行單元測試。然後我們在Azure DevOps構建管道(盡管這個使用Github的行為),綁帶,測試,構建,然後部署圖書館磚可以拉的筆記本。理想情況下離開筆記本讀入和寫出數據幀,但是大部分的在圖書館工作。

假設使用筆記本電腦,而不是提交整個工作jar /輪文件。

我做了一篇博客文章單元測試PySpark庫這對任何人都是在線閱讀。

我通常在以下拉庫產品毛羽

flake8

pep8-naming

flake8-docstrings

flake8-bandit

flake8-eradicate

這些線頭,確保命名約定,檢查文檔字符串創建正常,檢查常見的安全問題,並識別代碼注釋掉。我很殘酷的構建和測試失敗,產品毛羽失敗,或覆蓋率低於90%然後然後整個構建失敗。

我還寫了一個自動生成文檔和發布Azure的靜態Web應用程序(身份驗證)所以內部團隊上的任何人都可以使用它。

希望所有幫助

werners1
尊敬的貢獻者三世

你如何管理你的本地火花實例?(版本管理、安裝等)?

歡迎來到磚社區:讓學習、網絡和一起慶祝

加入我們的快速增長的數據專業人員和專家的80 k +社區成員,準備發現,幫助和合作而做出有意義的聯係。

點擊在這裏注冊今天,加入!

參與令人興奮的技術討論,加入一個組與你的同事和滿足我們的成員。

Baidu
map