在磚筆記本的開發代碼

這個頁麵描述如何開發代碼在磚筆記本,包括自動完成,自動格式化Python和SQL,結合Python和SQL的筆記本,筆記本修訂曆史和跟蹤。

更多細節關於先進與編輯功能,如自動完成、變量選擇、multi-cursor支持,並排的差別,看到使用磚筆記本和文件的編輯器

訪問筆記本進行編輯

打開筆記本,使用工作區搜索功能或使用工作空間瀏覽器導航到筆記本並點擊筆記本的名稱或圖標。

鍵盤快捷鍵

顯示鍵盤快捷鍵,選擇幫助>鍵盤快捷鍵。取決於可用的快捷鍵光標是在代碼單元(編輯模式)(命令模式)。

查找和替換文本

查找和替換文本在一個筆記本,選擇編輯>查找和替換。當前突出顯示匹配的橙色和所有其他比賽用黃色突出顯示。

匹配的文本

替換當前匹配,點擊取代。替換所有匹配的筆記本,點擊替換所有

比賽之間移動,單擊上一頁下一個按鈕。你也可以按shift + enter輸入去前一個和後一個比賽,分別。

關閉查找和替換工具,單擊刪除圖標或按esc

變量的探險家

與磚運行時的12.1及以上,可以直接觀察到當前的Python變量在筆記本上的UI。

打開變量瀏覽器,點擊變量explorer圖標正確的欄。變量explorer打開時,顯示值和數據類型,包括形狀,每個變量當前定義的筆記本。(形狀PySpark dataframe”嗎?”,因為計算形狀可以計算昂貴。)

過濾顯示,搜索框中輸入文本。自動過濾列表類型。

變量的值會自動更新你的筆記本電池。

實例變量explorer麵板

模塊化代碼

預覽

這個特性是在公共預覽

磚運行時的11.2及以上,您可以創建和管理源代碼文件的磚工作區,然後將這些文件導入到你的筆記本電腦。

在使用源代碼文件的更多信息,見磚筆記本之間共享代碼使用Python和R模塊

運行選中的文本

你可以強調代碼或SQL語句在筆記本電池和運行選擇。這是非常有用的,當你想在代碼和快速迭代查詢。

  1. 強調你想要運行的線路。

  2. 選擇選擇Run > Run文本或使用鍵盤快捷鍵Ctrl+轉變+輸入。如果沒有文本突出顯示,運行選中的文本執行當前行。

    運行選中的行

如果您使用的是混合語言在一個單元中,你必須包括% <語言>行選擇。

運行選中的文本也執行倒塌的代碼,如果有任何選擇突出顯示。

特殊的細胞命令等運行%,%皮普,% sh都受支持。

運行選中的文本的局限性

你不能使用運行選中的文本細胞上有多個輸出選項卡(即細胞,你定義了一個數據概要或可視化)。

如果你不使用新的筆記本電腦編輯器,運行選中的文本隻能在編輯模式(即,當光標在一個代碼單元)。如果光標選中的文本在細胞外,運行選中的文本不工作。為了避免這種限製,啟用新的筆記本電腦編輯器

格式代碼細胞

磚提供了工具,允許你格式Python和SQL代碼快速輕鬆地在筆記本電池。這些工具減少努力保持代碼格式化並幫助在整個筆記本電腦執行相同的編碼標準。

格式Python細胞

預覽

這個特性是在公共預覽

磚支持Python代碼的格式使用黑色的在筆記本上。筆記本必須連接到一個集群黑色的tokenize-rt安裝Python包,黑色的格式化程序執行在集群上的筆記本相連。

磚運行時的11.2及以上,磚預設的黑色的tokenize-rt。你可以直接使用格式化程序,而不需要安裝這些庫。

磚運行時的11.1及以下,您必須安裝黑色= = 22.3.0tokenize-rt = = 4.2.1從PyPI上你的筆記本或集群使用Python格式化程序。你可以在你的筆記本上運行以下命令:

%皮普安裝黑色的= =22.3.0標記- - - - - -rt= =4.2.1

在集群上安裝該庫

關於安裝庫的更多細節,請參閱Python環境管理

在磚回購的文件和筆記本電腦,您可以配置Python格式化程序的基礎上pyproject.toml文件。要使用該功能,創建一個pyproject.toml回購根目錄中的文件,並根據配置它黑色的配置格式。編輯工具。黑色的] section in the file. The configuration is applied when you format any file and notebook in that Repo.

如何格式化Python和SQL細胞

你必須有可以編輯的權限筆記本上的格式代碼。

你可以用以下方式觸發格式化程序:

  • 格式一個細胞

    • 鍵盤快捷鍵:按下Cmd + Shift + F

    • 命令上下文菜單:

      • 格式SQL細胞:選擇SQL格式一個SQL命令上下文下拉菜單的細胞。這個菜單項是可見的隻有在SQL筆記本細胞或那些%的sql語言的魔力

      • 格式Python細胞:選擇Python的格式一個Python命令上下文下拉菜單的細胞。這個菜單項是可見的隻有在Python筆記本細胞或那些% python語言的魔力

    • 筆記本編輯菜單:選擇一個Python或SQL細胞,然後選擇編輯>格式細胞(s)

  • 多個單元格式

    選擇多個單元然後選擇編輯>格式細胞(s)。如果您選擇超過一種語言的細胞,隻格式化SQL和Python細胞。這包括那些使用%的sql% python

  • 格式在筆記本上所有Python和SQL細胞

    選擇編輯>格式筆記本。如果你的筆記本包含不止一個語言,隻格式化SQL和Python細胞。這包括那些使用%的sql% python

代碼格式化的局限性

  • 黑色的執行PEP 8標準4空間縮進。壓痕是不可配置的。

  • 格式不支持嵌入式Python字符串在SQL UDF。同樣,格式化SQL字符串裏麵不支持Python UDF。

版本曆史

磚筆記本維護筆記本的曆史版本,允許您查看和恢複之前的快照的筆記本。在版本可以執行以下操作:添加評論,恢複和刪除版本,和清晰的版本曆史。

你也可以同步與遠程數據磚Git存儲庫

訪問筆記本版本,點擊修訂曆史圖標正確的欄。筆記本出現修訂曆史。您也可以選擇文件>版本曆史

添加一個評論

添加一個評論到最新版本:

  1. 單擊版本。

  2. 點擊保存現在

    保存評論
  3. 在保存筆記本修改對話框中,輸入一個評論。

  4. 點擊保存。筆記本版本保存輸入的評論。

恢複一個版本

恢複一個版本:

  1. 單擊版本。

  2. 點擊恢複這個修改

    重新修訂
  3. 點擊確認。所選版本變成最新版本的筆記本。

刪除一個版本

刪除版本入口:

  1. 單擊版本。

  2. 點擊垃圾桶圖標垃圾

    刪除修改
  3. 點擊是的,抹去。從曆史中刪除選中的版本。

明確的版本曆史

曆史版本後不能恢複了。

清除一個筆記本的版本曆史:

  1. 選擇文件>清晰的版本曆史

  2. 點擊是的,清楚。筆記本版本曆史是清除。

代碼語言在筆記本

設置默認語言

旁邊的筆記本出現的默認語言筆記本的名字。

筆記本電腦默認的語言

要更改默認語言,單擊語言按鈕,從下拉菜單中選擇新的語言。繼續工作,確保現有命令的命令之前的默認語言自動前綴與語言神奇的命令。

混合語言

默認情況下,筆記本電腦的電池使用默認的語言。你可以覆蓋默認的語言在一個單元中通過單擊語言按鈕,從下拉菜單選擇一種語言。

單元語言下拉

或者,您可以使用語言神奇的命令% <語言>在一個細胞的開始。支持的神奇的命令是:% python,r %,% scala,%的sql

請注意

當你調用一個語言神奇的命令,該命令派往的REPL執行上下文的筆記本。變量定義在一個語言(語言),因此在REPL REPL的不可用另一種語言。repl隻能通過外部資源(如文件共享狀態在對象存儲DBFS或對象。

筆記本也支持一些輔助魔法命令:

  • % sh:允許您運行shell代碼在你的筆記本上。失敗的細胞如果shell命令有一個非零退出狀態,添加- e選擇。該命令隻運行在Apache火花司機,而不是工人。所有節點上運行shell命令,使用一個init腳本

  • % fs:允許您使用dbutils文件係統命令。例如,運行dbutils.fs.ls命令列表文件,您可以指定% fsls代替。有關更多信息,請參見如何處理文件數據磚嗎

  • %醫學博士:可以包括各種類型的文檔,包括文本、圖片、和數學公式和方程。請參閱下一節。

SQL語法突出顯示和自動完成在Python命令

語法高亮顯示和SQL自動完成可以使用SQL在Python命令時,如在嗎spark.sql命令。

探索Python中的SQL細胞結果筆記本使用Python

您可能想要使用SQL數據加載使用Python和探索它。在磚Python的筆記本,表結果從一個SQL語言細胞自動作為一個Python DataFrame分配給變量_sqldf

在磚運行時的13.0及以上,您也可以訪問DataFrame結果使用IPython的輸出緩存係統。提示櫃台出現在底部的輸出消息顯示細胞的結果。對於示例所示,你會參考的結果出[2]

請注意

  • 的變量_sqldf可能每次都重新分配嗎%的sql電池運行。避免失去參考DataFrame結果,將其分配給一個新的變量名之前運行%的sql細胞:

    new_dataframe_name=_sqldf
  • 如果查詢使用小部件參數化的結果並不像Python DataFrame可用。

  • 如果查詢使用關鍵詞緩存UNCACHE,結果不能作為一個Python DataFrame。

屏幕截圖顯示了一個例子:

sql結果dataframe

並行執行SQL細胞

當一個命令運行時和你的筆記本電腦連接到集群互動,您可以運行一個SQL細胞同時與當前命令。執行SQL細胞在一個新的、並行會話。

並行執行細胞:

  1. 運行單元

  2. 點擊現在運行。細胞是立即執行。

    運行一個SQL細胞與當前運行的細胞

因為細胞是運行在一個新的會話,臨時觀點,udf,隱式Python DataFrame(_sqldf)不支持並行執行的細胞。此外,默認目錄和數據庫名稱並行執行期間使用。如果您的代碼是指一個表在不同的目錄或數據庫中,您必須指定表名使用三級名稱空間(“目錄”,“模式”。“表”)

顯示圖像

存儲在顯示圖像FileStore使用語法:

% md ! (測試)(文件/ image.png)

例如,假設您有磚FileStore標誌圖像文件:

dbfs ls dbfs: / FileStore /
databricks-logo-mobile.png

當你在減價細胞包括以下代碼:

圖像在減價細胞

在細胞圖像呈現:

渲染圖像

顯示數學公式

筆記本電腦支持KaTeX顯示數學公式和方程。例如,

% md \ \ c = \ \ \ \下午√{b ^ ^ 2 + 2} \ \) \ \ b (a {_i} {_j} = {_i} {_j} \ \) $ $ c = \ \ \ \下午sqrt {b ^ ^ 2 + 2} $ $ \ \ [{_i} {_j} = b {_i} {_j} \ \]

顯示為:

使方程1

% md \ \ (f(\β)= -Y_t ^ T X_t \β+ \和日誌(1 + {e} ^{間t \子彈\β})+ \壓裂{1}{2}\δt S_t ^ ^{1} \三角洲\ \)\ \(\δ=(β\ \ mu_ {t - 1}) \ \)

顯示為:

使方程2

包括HTML

可以通過使用HTML包含在一個筆記本的功能displayHTML。看到HTML、D3和SVG的筆記本對於如何做到這一點的一個例子。

請注意

displayHTMLiframe是服務的領域databricksusercontent.com和iframe沙箱包括allow-same-origin屬性。databricksusercontent.com必須從瀏覽器訪問。如果現在被你的公司網絡,它必須被添加到一個允許列表。