

# Athena ノートブックエディタを使用する
<a name="notebooks-spark-editor"></a>

**注記**  
Athena ノートブックエディタは、Pyspark エンジンバージョン 3 でサポートされています。Apache Spark バージョン 3.5 でのノートブックの使用については、「[SageMaker ノートブック](https://docs.aws.amazon.com/sagemaker-unified-studio/latest/userguide/what-is-sagemaker-unified-studio.html)」を参照してください。

Athena ノートブックエクスプローラーでノートブックを管理し、Athena ノートブックエディタを使用してセッションで編集および実行します。要件に応じて、ノートブックセッションの DPU 使用率を設定できます。

ノートブックを停止すると、関連するセッションが終了します。すべてのファイルは保存されますが、宣言された変数、関数、クラスで行われている変更は失われます。ノートブックを再起動すると、Athena がノートブックファイルをリロードし、コードを再実行できるようになります。

Athena ノートブックエディタは、コードを記述して実行するためのインタラクティブな環境です。以下のセクションでは、環境の機能について説明します。

## ノートブックセッションと計算を理解する
<a name="notebooks-spark-sessions-and-calculations"></a>

各ノートブックは 1 つの Python カーネルに関連付けられており、Python コードを実行します。ノートブックは、コマンドを含むセルを 1 つ以上含めることができます。ノートブックでセルを実行するには、最初にノートブックのセッションを作成します。セッションは、ノートブックの変数と状態を追跡します。

ノートブックでセルを実行するということは、現在のセッションで計算を実行することを意味します。計算によってノートブックの状態が進行して、Amazon S3 からの読み込みや他のデータストアへの書き込みなどのタスクが実行される場合があります。セッションが実行されている限り、計算によってノートブックの状態は維持され、変更されます。

状態が不要になった場合、セッションを終了できます。セッションを終了してもノートブックは保持されますが、変数やその他の状態情報は破棄されます。同時に複数のプロジェクトに取り組む必要がある場合、プロジェクトごとにセッションを作成すると、セッションは互いに独立したものになります。

セッションには、DPU 単位で測定される専用の処理能力があります。セッションを作成する場合、そのセッションに複数の DPU を割り当てることができます。セッションが異なると、タスクの要件に応じて異なる容量を持つことができます。

## コマンドモードと編集モードを切り替える
<a name="notebooks-spark-command-mode-vs-edit-mode"></a>

ノートブックエディタは、セルにテキストを入力するための編集モードと、コピー、貼り付け、実行などのコマンドをエディタ自体に発行するためのコマンドモードである、モーダルユーザーインターフェイスを備えています。

編集モードとコマンドモードを使用するには、次のタスクを実行できます。
+ 編集モードに入るには、**ENTER** を押すか、セルを選択します。セルが編集モードの場合、セルの左側の余白は緑になります。
+ コマンドモードに入るには、**ESC** を押すか、セルの外側をクリックします。コマンドは通常、現在選択されているセルのみに適用され、すべてのセルには適用されないことに注意してください。エディタがコマンドモードの場合、セルの左側の余白は青くなります。
+ コマンドモードでは、キーボードショートカットとエディタの上にあるメニューを使用できますが、それぞれのセルにテキストを入力することはできません。
+ セルを選択するには、セルを選択します。
+ すべてのセルを選択するには、**Ctrl\+A** (Windows) または **Cmd\+A** (Mac) を押します。

## ノートブックエディタメニューでアクションを使用する
<a name="notebooks-spark-notebook-editor-menu"></a>

ノートブックエディタの上部にあるメニューのアイコンには、次のオプションがあります。
+ **保存** - ノートブックの現在の状態を保存します。
+ **下にセルを挿入** - 現在選択されているセルの下に新しい (空の) セルを追加します。
+ **選択したセルを切り取る** - 選択したセルを現在の場所から削除し、そのセルをメモリにコピーします。
+ **選択したセルをコピー** - 選択したセルをメモリにコピーします。
+ **セルを下に貼り付け** - コピーしたセルを現在のセルの下に貼り付けます。
+ **選択したセルを上に移動** - 現在のセルを上のセルの上に移動します。
+ **選択したセルを下に移動** - 現在のセルを下のセルの下に移動します。
+ **実行** - 現在の (選択済み) セルを実行します。出力は現在のセルのすぐ下に表示されます。
+ **すべて実行** - ノートブック内のすべてのセルを実行します。各セルの出力は、セルのすぐ下に表示されます。
+ **停止 (カーネルを中断)** - カーネルを中断して現在のノートブックを停止します。
+ **フォーマットオプション** - 次のいずれかのセルのフォーマットを選択します。
  + **コード** - Python コードに使用します (デフォルト)。
  + **マークダウン** - [GitHub スタイルのマークダウン](https://docs.github.com/en/get-started/writing-on-github)形式でテキストを入力する場合に使用します。マークダウンをレンダリングするには、セルを実行します。
  + **Raw NBConvert** - 未修正の形式でテキストを入力する場合に使用します。**[Raw NBConvert]** (未加工の NBConvert) とマークされたセルは、Jupyter [nbconvert](https://nbconvert.readthedocs.io/en/latest/usage.html) コマンドラインツールで HTML などの別の形式に変換できます。
+ **見出し** - セルの見出しレベルを変更する場合に使用します。
+ **コマンドパレット** - Jupyter Notebook コマンドとそのキーボードショートカットが含まれています。キーボードショートカットの詳細については、このドキュメント後半のセクションを参照してください。
+ **セッション** - このメニューのオプションを使用して、セッションの詳細を[表示](notebooks-spark-getting-started.md#notebooks-spark-getting-started-viewing-session-and-calculation-details)したり、[セッションパラメータを編集](notebooks-spark-getting-started.md#notebooks-spark-getting-started-editing-session-details)したり、セッションを[終了](notebooks-spark-getting-started.md#notebooks-spark-getting-started-terminating-a-session)したりします。

## 生産性を高めるためにコマンドモードのキーボードショートカットを使用する
<a name="notebooks-spark-command-mode-keyboard-shortcuts"></a>

一般的なノートブックエディタコマンドモードのキーボードショートカットを次に示します。これらのショートカットは、**ESC** を押してからコマンドモードに入ると使用できます。エディタ後半のコマンドの一覧を表示するには、**ESC \+ H** を押します。


****  

| Key | Action | 
| --- | --- | 
| 1 - 6 | セルタイプをマークダウンに変更し、見出しレベルを入力した数値に設定する | 
| a | 現在のセルの上にセルを作成する | 
| b | 現在のセルの下にセルを作成する | 
| c | 現在のセルをメモリにコピーする | 
| d d | 現在のセルを削除する | 
| h | キーボードショートカットのヘルプ画面を表示する | 
| j | 1 つ下のセルに移動する | 
| k | 1 つ上のセルに移動する | 
| m | 現在のセル形式をマークダウンに変更する | 
| r | 現在のセル形式を raw に変更する | 
| s | ノートブックを保存する | 
| v | メモリのコンテンツを現在のセルの下に貼り付ける | 
| x | 選択した 1 つまたは複数のセルを切り取る | 
| y | セルの形式をコードに変更する | 
| z | [Undo] (元に戻す) | 
| Ctrl\+Enter  | 現在のセルを実行してコマンドモードに入る | 
| Shift\+Enter、または Alt\+Enter | 現在のセルを実行して出力の下に新しいセルを作成し、編集モードで新しいセルを入力する | 
| Space | ページダウン | 
| Shift\+Space | ページアップ | 
| Shift \+ L | セル内の行番号の表示/非表示を切り替える | 

## コマンドモードのショートカットをカスタマイズする
<a name="notebooks-spark-editing-command-mode-shortcuts"></a>

ノートブックエディタには、コマンドモードのキーボードショートカットをカスタマイズするオプションがあります。

**コマンドモードのショートカットを編集するには**

1. ノートブックエディタメニューから、**[Command palette]** (コマンドパレット) を選択します。

1. コマンドパレットから、**[Edit command mode keyboard shortcuts]** (コマンドモードのキーボードショートカット) コマンドを選択します。

1. **[Edit command mode shortcuts]** (編集コマンドモードのショートカット) インターフェイスを使用して、必要なコマンドをキーボードにマッピングまたは再マッピングします。

   コマンドモードのショートカットの編集方法を確認するには、**[Edit command mode shortcuts]** (コマンドモードのショートカットの編集) 画面の一番下までスクロールします。

Athena for Apache Spark のマジックコマンドを使用する方法については、「[マジックコマンドを使用する](notebooks-spark-magics.md)」を参照してください。

**Topics**
+ [ノートブックセッションと計算を理解する](#notebooks-spark-sessions-and-calculations)
+ [コマンドモードと編集モードを切り替える](#notebooks-spark-command-mode-vs-edit-mode)
+ [ノートブックエディタメニューでアクションを使用する](#notebooks-spark-notebook-editor-menu)
+ [生産性を高めるためにコマンドモードのキーボードショートカットを使用する](#notebooks-spark-command-mode-keyboard-shortcuts)
+ [コマンドモードのショートカットをカスタマイズする](#notebooks-spark-editing-command-mode-shortcuts)
+ [マジックコマンドを使用する](notebooks-spark-magics.md)