ablog

不器用で落着きのない技術者のメモ

AWS Glue で Jupyter Notebook を使う

Project Jupyter

Project Jupyter (/ˈdʒuːpɪtər/ (About this soundlisten)) is a nonprofit organization created to "develop open-source software, open-standards, and services for interactive computing across dozens of programming languages". Spun-off from IPython in 2014 by Fernando Pérez, Project Jupyter supports execution environments in several dozen languages. Project Jupyter's name is a reference to the three core programming languages supported by Jupyter, which are Julia, Python and R, and also a homage to Galileo's notebooks recording the discovery of the moons of Jupiter. Project Jupyter has developed and supported the interactive computing products Jupyter Notebook, JupyterHub, and JupyterLab, the next-generation version of Jupyter Notebook.

Project Jupyter - Wikipedia

Jupyter Notebook

Jupyter Notebook (formerly IPython Notebooks) is a web-based interactive computational environment for creating Jupyter notebook documents. The "notebook" term can colloquially make reference to many different entities, mainly the Jupyter web application, Jupyter Python web server, or Jupyter document format depending on context. A Jupyter Notebook document is a JSON document, following a versioned schema, and containing an ordered list of input/output cells which can contain code, text (using Markdown), mathematics, plots and rich media, usually ending with the ".ipynb" extension.

A Jupyter Notebook can be converted to a number of open standard output formats (HTML, presentation slides, LaTeX, PDF, ReStructuredText, Markdown, Python) through "Download As" in the web interface, via the nbconvert library or "jupyter nbconvert" command line interface in a shell. To simplify visualisation of Jupyter notebook documents on the web, the nbconvert library is provided as a service through NbViewer which can take a URL to any publicly available notebook document, convert it to HTML on the fly and display it to the use

Project Jupyter - Wikipedia

Jupyter Notebookはサーバが提供する対話型開発環境内で維持されるライブドキュメントであるため、コード、出力、説明用テキストを含めることができます(図4)。Jupyterセッション内では、サーバがHTTPを使用して通常のWebブラウザにノートブックファイルをレンダリングし、レンダリング済みドキュメントの静的および動的コンテンツに対してはHTTPとWebsocketを組み合わせて使用します。バックエンドではサーバがオープンソースのメッセージングプロトコルであるZeroMQ(ØMQ)を使用してコード実行カーネルと通信します。
f:id:yohei-a:20200523173230p:plain
図4:Jupyterセッション内では、サーバがコードを実行するバックエンドサーバとやりとりしながら、ノートブックファイルの内容をWebブラウザレンダリングする。(画像提供:Project Jupyter)

PYNQ開発がFPGAベースのシステム設計を迅速化 | DigiKey
開発エンドポイントの作成

ワーカータイプ
開発エンドポイントに割り当てられる事前定義されたワーカーのタイプ。値として Standard、G.1X、または G.2X を使用します。

  • Standard ワーカータイプでは、各ワーカーが 4 vCPU、16 GB のメモリ、50 GB のディスク、ワーカーごとに 2 個のエグゼキュターを提供します。
  • G.1X ワーカータイプでは、各ワーカーが 1 DPU (4 vCPU、16 GB のメモリ、64 GB のディスク) にマッピングされ、ワーカーごとに 1 個のエグゼキュターを提供します。メモリを大量に消費するジョブには、このワーカータイプをお勧めします。
  • G.2X ワーカータイプでは、各ワーカーが 2 DPU (8 vCPU、32 GB のメモリ、128 GB のディスク) にマッピングされ、ワーカーごとに 1 個のエグゼキュターを提供します。メモリを大量に消費するジョブには、このワーカータイプをお勧めします。

既知の問題: G.2X WorkerType で開発エンドポイントを作成すると、開発エンドポイントの Spark ドライバーは 4 vCPU、16 GB のメモリ、および 64 GB のディスクで実行されます。


ワーカー数
開発エンドポイントに割り当てられた、 定義された workerType のワーカーの数。このフィールドは、ワーカータイプとして G.1X または G.2X を選択した場合にのみ使用できます。
定義可能なワーカーの最大数は、299 (G.1X) および 149 (G.2X) です。


データ処理単位 (DPU)
AWS Glue が開発エンドポイントに使用する DPU の数。数値は 1 より大きくする必要があります。

開発エンドポイントの追加 - AWS Glue

保存

  • [File] - [Download as] - [Notebook(ipynd)] でファイルをダウンロードする

f:id:yohei-a:20200523172020p:plain

  • Upload でアップロードする。

f:id:yohei-a:20200523172055p:plain

データを生成する