著者 Hailing Jiang
最終更新日 2021年11月17日

警告
本記事はTeradata CorporationによるGetting Startedに掲載された内容を抄訳したものです。掲載内容の正確性・完全性・信頼性・最新性を保証するものではございません。正確な内容については、原本をご参照下さい。
また、修正が必要な箇所や、ご要望についてはコメントをよろしくお願いします。

概要

独自のJupyterHubクラスターをお持ちのお客様には、Teradata Jupyterエクステンションを既存のクラスターに統合するための2つのオプションがあります。

① Teradata Jupyter Docker イメージを使用する。
② 既存のDockerイメージをカスタマイズしてTeradataエクステンションを含める。

このページでは、2つのオプションの詳細な手順を説明します。手順は、お客様のJupyterHubのデプロイがZero to JupyterHub with Kubernetesをベースにしていることを前提にしています。

Vantageの新しいインスタンスが必要な場合は、Google Cloud、Azure、AWSのクラウドにVantage Expressという無料版をインストールすることができます。また、VMware、VirtualBox、またはUTMを使用して、ローカルマシン上でVantage Expressを実行することもできます。

Teradata Jupyter Docker イメージの使用

Teradataは、jupyter/datascience-notebookイメージをベースにした、すぐに実行可能なDockerイメージを提供しています。Teradata SQLカーネル、Teradata PythonおよびRライブラリとドライバー、Teradata Jupyter拡張をバンドルし、Teradataデータベースと対話しながら生産性を向上させることができます。また、このイメージには、SQLカーネル、拡張機能、Teradataライブラリの使用方法を示すサンプルノートブックが含まれています。

このイメージは以下のように使用することができます。

・ローカルのDockerコンテナで個人用Jupyter Notebookサーバを起動する。
・JupyterHubを使用したチーム向けJupyterLabサーバの実行

ローカルDockerコンテナで個人用JupyterLabサーバーを起動する手順については、インストールガイドをご覧ください。ここでは、お客様の既存のJupyterHub環境でTeradata Jupyter Dockerイメージを使用する方法を中心に説明します。

Teradata Jupyter Docker イメージをレジストリにインストールします。

① Vantage Modules for Jupyter のページにアクセスし、Docker イメージをダウンロードします。tarballで、teradatajupyterlabext_VERSION.tar.gzという形式になっています。

② イメージをロードします。

docker load -i teradatajupyterlabext_VERSION.tar.gz

③ イメージをDockerレジストリにプッシュします。

docker push

シンプルにするために、読み込んだ画像の名前を変更することを検討するとよいでしょう。

docker_tag
docker tag OLD_IMAGE_NAME NEW_IMAGE_NAME

JupyterHubでTeradata Jupyter Docker イメージを使用する

① Teradata Jupyter DockerイメージをJupyterHubクラスタで直接使用するには、JupyterHubドキュメントに記載されているようにoverrideファイルを変更します。REGISTRY_URLとVERSIONを上記の手順で適切な値に置き換えてください。

singleuser:
  image:
  name: REGISTRY_URL/teradatajupyterlabext_VERSION
  tag: latest

② JupyterHubのドキュメントに記載されているように、クラスタに変更を適用

複数のプロファイルを使用することで、ユーザーがJupyterHubにログインする際に使用する画像を選択することができます。複数のプロファイルを設定する詳細な手順と例については、JupyterHubのドキュメントを参照してください。

Teradata Jupyter Dockerイメージのカスタマイズ

Teradata Jupyter Dockerイメージにバンドルされていないパッケージやノートブックが必要な場合、Teradataイメージをベースイメージとして使用し、その上に新しいイメージをビルドすることをお勧めします。

以下は、Teradataイメージの上にビルドし、追加のパッケージとノートブックを追加するDockerfileの例です。Dockerfileを使用して新しいDockerイメージを構築し、イメージを指定のレジストリにプッシュし、新しいイメージをシングルユーザーイメージとして使用するために上記のようにオーバーライドファイルを変更し、上記のようにクラスタに変更を適用します。REGISTRY_URL と VERSION は適切な値に置き換えてください。

FROM REGISTRY_URL/teradatajupyterlabext_VERSION:latest

# install additional packages
RUN pip install --no-cache-dir astropy

# copy notebooks
COPY notebooks/. /tmp/JupyterLabRoot/DemoNotebooks/

既存のDockerイメージをカスタマイズしてTeradataの拡張機能を含める

Teradata SQLカーネルとエクステンションは、現在使用している既存のイメージに含めることができます。

① Vantage Modules for Jupyterページから、zip圧縮されたTeradata Jupyter extensionsパッケージバンドルがダウンロードできます。 既存のDockerイメージがLinuxベースである場合は、Linux版のダウンロードを使用します。 そうでない場合は、使用しているプラットフォーム用にダウンロードします。 .zipファイルには、Teradata SQL Kernel、エクステンション、サンプルノートブックが含まれています。

② バンドルファイルを作業ディレクトリに解凍してください。

③ 以下は、既存のDockerイメージにTeradata Jupyterエクステンションを追加するためのDockerfileの例です。Dockerfileを使用して新しいDockerイメージを構築し、イメージを指定のレジストリにプッシュし、新しいイメージをシングルユーザーイメージとして使用するために上記のようにオーバーライドファイルを変更し、変更をクラスタに適用します。

FROM REGISTRY_URL/your-existing-image:tag
ENV NB_USER=jovyan \
  HOME=/home/jovyan \
  EXT_DIR=/opt/teradata/jupyterext/packages

USER root

##############################################################
# Install kernel and copy supporting files
##############################################################

# Copy the kernel
COPY ./teradatakernel /usr/local/bin
RUN chmod 755 /usr/local/bin/teradatakernel

# Copy directory with kernel.json file into image
COPY ./teradatasql teradatasql/

##############################################################
# Switch to user jovyan to copy the notebooks and license files.
##############################################################

USER $NB_USER

# Copy notebooks
COPY ./notebooks/ /tmp/JupyterLabRoot/TeradataSampleNotebooks/

# Copy license files
COPY ./ThirdPartyLicenses /tmp/JupyterLabRoot/ThirdPartyLicenses/

USER root

# Install the kernel file to /opt/conda jupyter lab instance
RUN jupyter kernelspec install ./teradatasql --prefix=/opt/conda

##############################################################
# Install Teradata extensions
##############################################################

COPY ./teradata_*.tgz $EXT_DIR

WORKDIR $EXT_DIR

RUN jupyter labextension install --no-build teradata_database* && \
  jupyter labextension install --no-build teradata_resultset* && \
  jupyter labextension install --no-build teradata_sqlhighlighter* && \
  jupyter labextension install --no-build teradata_connection_manager* && \
  jupyter labextension install --no-build teradata_preferences* && \
  jupyter lab build --dev-build=False --minimize=False && \
  rm -rf *

WORKDIR $HOME

# Give back ownership of /opt/conda to  jovyan
RUN chown -R jovyan:users /opt/conda

# Jupyter will create .local directory
RUN rm -rf $HOME/.local

④ Teradata package for PythonとTeradata package for Rはオプションでインストールすることができます。
・Teradata Package for Python – teradataml download page
・Teradata Package for R – tdplyr download page

さらに詳しく

・Teradata Jupyter Extensions Website
・Teradata Vantage™ Modules for Jupyter Installation Guide
・Teradata® Package for Python User Guide

Teradata Vantageへのお問合せ

Teradata Vantage へのお問合せ

广告
将在 10 秒后关闭
bannerAds