事前準備
WeData Studio機能の有効化
注意:
現在、WeData Studio機能は許可リスト機能です。利用する必要がある場合は、WeDataチームに連絡して有効化してください。 ビッグデータストレージ・コンピューティングエンジンの購入
注意:
WeData Studioが接続をサポートするビッグデータストレージ・コンピューティングエンジンは以下の通りです:
1. DLCエンジン:標準エンジン-Sparkタイプには、「機械学習-Spark MLlib」タイプのリソースグループが含まれている必要があります。
2. EMRエンジン:EMR on CVM-Hadoopタイプ、バージョン3.5.0には、EGコンポーネントとSparkコンポーネントが含まれている必要があります。
EMRエンジンを使用する場合は、EMRが使用するセキュリティグループでWeData Studioのネットワークセグメント(30.22.32.0/19)が許可されているかを確認する必要があります。許可されていない場合は、セキュリティグループに対して次の操作を行ってください:
インバウンドで許可が必要です:30.22.32.0/19 ポート TCP:8888
Studio開発IDE
Studio全体機能には、Studio開発IDE、データカタログナビゲーション、Gitソースコード管理の3つのモジュールが含まれます。
Studioモジュールへのアクセス
データ開発 > Studioをクリックします。Studioに入るには、まず個人実行環境を起動する必要があります。プロジェクト+ユーザーごとに分離され、各ユーザーは各プロジェクトで1つの個人実行環境を専有します。
個人実行環境の初回起動には数分かかりますが、その後再度入る場合は秒単位で応答できます。
ファイルディレクトリ管理
Studioのファイルディレクトリ構造は、Workspace、GitFolder、ごみ箱、お気に入りの4つの部分で構成されています。
Workspaceはローカルフォルダです。
GitFolderはGitフォルダであり、リモートGitリポジトリに接続してコード管理を行うことをサポートします。
ごみ箱は、現在のユーザーが削除したフォルダとファイルを保存するために使用されます。
お気に入りは、現在のユーザーがお気に入りに追加したフォルダとファイルを保存するために使用されます。
ファイル管理操作
Studioのファイルディレクトリ管理の対象には、フォルダ、Notebook(.ipynb)、SQL(.sql)、ファイル(.py、.csvなど)が含まれます。各オブジェクトでサポートされる管理操作は次のとおりです:
|
フォルダを新規作成 | ✓ | ✓ | × |
Notebookを新規作成 | ✓ | ✓ | × |
ファイルを新規作成 | ✓ | ✓ | × |
移動 | ✓ | ✓ | ✓ |
コピー | × | × | ✓ |
パスをコピー | ✓ | ✓ | ✓ |
相対パスをコピー | ✓ | ✓ | ✓ |
名前を変更 | ✓ | ✓ | ✓ |
アップロード | ✓ | ✓ | × |
ダウンロード | ✓ | ✓ | ✓ |
削除 | ✓ | ✓ | ✓ |
お気に入りに追加 | ✓ | ✓ | ✓ |
権限設定 | ✓ | × | ✓ |
Notebookの新規作成
新しいフォルダの作成
新規フォルダをクリックし、フォルダ名と所属フォルダパスを入力します。
Notebookファイルの新規作成
新規Notebookをクリックし、Notebook名と所属フォルダパスを入力します。
Notebookファイルの編集
右側のIDE領域では、セルの新規作成、セルの切り取り、セルのコピー、セルの貼り付け、セルの削除、セルの移動、セルの編集、セルの言語タイプの変更など、一連の操作をサポートしています。
Notebookの実行
Notebookファイルを実行するには実行カーネルを選択する必要があります。WeDataはリモートカーネル方式を採用し、タスクをビッグデータストレージ・コンピューティングエンジンに送信して実行します。使用されるのはエンジンのコンピューティングリソースです。
カーネルの選択
1. セル上部の実行をクリックすると、カーネル作成のポップアップが自動的に開きます。
2. IDE右上角のkernel未接続をクリックすると、カーネル作成のポップアップが開きます。
カーネル設定
DLCエンジンを例にすると、現在のプロジェクトにDLCエンジンのみがバインドされている場合、Notebookファイルなどのカーネル設定ページは次のとおりです:
属性項目 | 属性項目の説明 | 利用制限 |
DLCリソースグループ | 現在のプロジェクトにバインドされている1つのDLCエンジン内のリソースグループを選択します。 | DLCエンジン:標準エンジン-SparkタイプのDLCエンジンのみをサポートします。 リソースグループ:ビジネスシナリオが「機械学習」タイプ、フレームワークタイプが「Spark MLlib」のリソースグループのみをサポートします。 |
リソース再利用モードを有効にします。 | 有効にすると、作成済みのSpark Appを選択してカーネルを作成できます。これにより、エンジンリソースを節約し、カーネル作成時間を短縮できます。 | 2つのNotebookファイルが同じSpark Appを使用している場合、実行環境は共有されます。 |
Spark App名 | 現在のプロジェクト、現在のユーザーが作成済みの1つのSpark Appを選択できます。 | - |
リソース再利用モードを無効にします。 | 無効にすると、新しいSpark Appを作成します。 | 新しいSpark Appを作成すると、ファイル間の実行環境を分離できますが、通常は数分かかります。 |
Spark App名 | Spark App名を入力します。後で再利用して選択しやすくするためです。 | - |
自動解放時間 | Spark Appが非アクティブになった場合の自動解放時間を選択します。 | - |
カスタムイメージ | デフォルトではDLCリソースグループ内蔵イメージです。ユーザーはTCRカスタムイメージを選択できます。 | - |
詳細パラメータ | 作成するSpark Appのスペックパラメータを入力します。 | - |
実行結果の確認
DataFrameデータ構造について、display()関数を使用してデータを表示する場合、およびSQL構文のデータクエリ結果のシナリオにおいて、WeDataは定向的な最適化を行い、データ結果をテーブル形式で表示および操作することをサポートしています。
データ結果の確認
データ結果のプレビューをサポートし、カスタム領域のデータを選択して右クリックやショートカットキーでコピーできます。列名をクリックして昇順・降順に並べ替えることもサポートしています。
説明:
最大10,000行のデータプレビューをサポートし、データサイズは2Mを超えません。
データ検索
キーワードを入力してあいまい検索を行うことができ、検索結果はハイライト表示されます。「<」、「>」ボタンをクリックすると、複数の検索結果間を切り替えることができます。
フィールド設定
データ結果に表示する列名を設定でき、ピンボタンをクリックして指定したフィールドを上部に固定して表示できます。
フィールドフィルタリング
フィルターボタンをクリックすると、複数のフィルター条件を追加してデータ結果をフィルタリングできます。
データダウンロード
ダウンロードをクリックすると、データ結果をcsv、Excel、txtファイルとしてダウンロードできます。
説明:
最大10,000行のデータダウンロードをサポートし、データサイズは2Mを超えません。
動的パラメータの実装
Notebookは動的パラメータの定義をサポートし、パラメータ化されたファイルコードのデバッグ機能を実現します。
パラメータの定義
1. コードで定義します。
dlcutils.widgets.text()関数を使用して、パラメータ名、デフォルト値、Tagを定義します:
関数名 | パラメータ定義 | 例を示します。 |
dlcutils.widgets.text(name: str, default: str, label: str = "") | name:パラメータ名 default:パラメータのデフォルト値 label:パラメータタグ | dlcutils.widgets.text("fav_food" , "bean","favorite food") |
2. 可视化インターフェースで定義します。
上部ツールバーの「パラメータ」ボタンをクリックし、ポップアップウィンドウでパラメータ名、パラメータ値、パラメータTagを入力します:
パラメータの取得
dlcutils.widgets.get()関数を使用してパラメータの値を取得します:
関数名 | パラメータ定義 | 例を示します。 |
dlcutils.widgets.get(name: str) | name:パラメータ名 | dlcutils.widgets.get(fav_food) |
説明:
Notebookのデバッグ実行時、コードが出力するパラメータ値は、ポップアップウィンドウのパラメータ値を使用して関数で定義されたデフォルト値に置き換えられます。
ファイルバージョン管理
保存をクリックすると、現在のファイルに対して保存バージョンが生成されます。右側の「バージョン履歴」をクリックすると、すべての履歴バージョンを確認でき、バージョン比較やバージョンロールバックなどの操作をサポートします。
バージョン比較:
ファイル権限管理
1. 「プロジェクト管理 > データ開発設定」に進み、タスク権限制御のスイッチをオンにします。
説明:この機能はDLCエンジンにのみ有効で、EMRエンジンは現在サポートされていません。
2. Studioに入り、Workspace内のフォルダまたはファイル名を右クリックし、権限設定を選択します。
説明:
Workspaceのみがファイル権限管理をサポートします。GitFolderは権限を設定できず、プロジェクト内のすべてのメンバーが閲覧および操作できます。
3. 権限設定のポップアップウィンドウで、権限設定項目を追加、編集、または削除できます。
プロジェクト管理者は、デフォルトですべてのフォルダとファイルの管理権限を持ちます。
フォルダまたはファイルの作成者は、デフォルトで作成したオブジェクトの管理権限を持ちます。
フォルダ内のサブファイルまたはファイルは、デフォルトで親フォルダの権限設定を継承します。
属性項目 | 属性項目の説明 |
権限対象 | 選択可能:ロール、ユーザー、プロジェクトの全メンバー |
権限項目 | 選択可能:管理、なし |
データカタログ
データ検索
データカタログは、Catalog、データベース、テーブル、フィールドの階層で表示されます。ユーザーは開発中に閲覧でき、コードを通じてデータにアクセスできます。
注意:
データカタログを使用するための前提条件は、現在のプロジェクトにバインドされているDLCエンジンの所在地域でTC-Catalogがすでに有効になっていることです。
「検索」ボタンをクリックすると、Catalog名、データベース名、テーブル名を入力してあいまい検索できます。
データアクセス
コード内でPySparkを使用してデータカタログの内容を読み書きできます。
クイック操作:
1. データテーブル、フィールドの後ろにある「挿入」ボタンをクリックすると、テーブル名、フィールド名を右側のIDEに挿入できます。
2. データテーブル、フィールドの後ろにある「コピー」ボタンをクリックすると、テーブル名、フィールド名をクリップボードにコピーできます。その後、IDEに貼り付けて使用できます。
Gitソースコード管理
Git設定の初期化
プロジェクトGit設定
各プロジェクトは1つのGitリポジトリのアドレスのみ接続できます。このアドレスはプロジェクト管理者またはプロジェクト管理権限を持つ他のユーザーが設定します。プロジェクト内の各ユーザーは、自分の個人設定を初期化する必要があります。
操作手順:
1. プロジェクト管理 > Git設定に入り、現在のプロジェクトで使用するGitリポジトリアドレス、Gitプロバイダー、ブランチなどの情報を入力します。
2. ネットワーク設定の初期化、ネットワーク接続テストの順にクリックします。
3. ネットワーク接続テストが成功した後、個人情報 > 個人設定で個人Git情報の設定を行います。
|
Gitリポジトリアドレス | 接続するリモートGitリポジトリのアドレスを入力します。 |
Gitプロバイダー | GitLab、GitLab Enterprise Editionの選択をサポートします。 |
Gitブランチ | 接続するリモートGitリポジトリのブランチを入力します。 |
ネットワーク環境 | パブリックアクセスまたはVPCの選択をサポートします。 1. ネットワーク環境がパブリックアクセスの場合、ページで「ネットワーク設定の初期化」をクリックすると、システムが自動的にユーザーのネットワーク接続を行います。 2. ネットワーク環境がVPCの場合、ユーザーはターミナルノードサービスを購入し、Gitが存在するネットワークにバインドし、ターミナルノードサービスIDをここに入力する必要があります。 |
ネットワーク接続性テスト | リモートGitリポジトリとのネットワーク接続を確認します。 |
個人Git設定
1. 個人情報 > 個人設定をクリックし、Git権限設定でユーザー名、Token情報を入力します。
2. 「接続テスト」をクリックし、テストが成功した後、「個人実行環境の初期化」をクリックできます。
3. Studioの個人実行環境をリモートGitリポジトリに接続します。その後、Studio内のコードをリモートGitリポジトリでホスティングできます。
Git管理操作
上記の初期化設定が完了した後、再度Studioに入ると、システムはリモートGitリポジトリ内のコードファイルをGitFolderに自動的に一度プルします。その後の更新はユーザーが手動でプルする必要があります。
Studio Gitソースコード管理機能は、一般的なGit操作をサポートします。これには以下が含まれますが、これらに限定されません:
送信(commit):ローカルの変更を作業ブランチに送信し、変更の説明を追加します。
プッシュ(push):新しいブランチをリモートGitリポジトリにプッシュします。
プル(pull):リモートGitリポジトリからローカルに内容をプルします。
ブランチマージ(merge):作業ブランチの変更を別のブランチにマージします。例えばメインブランチです。
マージコンフリクトの解決:ブランチマージ中にコードコンフリクトが発生した場合、識別と解決をサポートします。
履歴の表示:現在のブランチの履歴を表示します。
Notebookタスクオーケストレーション
新規ワークフローの作成
1. 「データ開発-ワークフロー編成」に入ります。
2. オーケストレーションスペースのディレクトリにワークフローを新規作成します。
新規Notebookタスクの作成
1. オフライン開発 > オーケストレーションスペースに入り、Notebookタスクを新規作成します。既存のNotebookファイルを参照でき、ファイルのソースとしてStudioディレクトリまたはリモートGitリポジトリを選択できます。
Studioディレクトリの場合は、Studio WorkspaceまたはGitFolderからNotebookファイルを1つ選択します。
リモートGitリポジトリの場合は、プロジェクトにバインドされているリモートGitリポジトリとブランチからNotebookファイルを1つ選択します。
Notebookタスク設定
注意:
オーケストレーションスペースのNotebookタスクとStudioディレクトリまたはリモートGitリポジトリ内のNotebookファイルは参照関係にあります。オーケストレーションスペースでファイル内容を変更することはできませんが、Notebookファイルを実行する環境設定は変更できます。
1. ページ右上で、接続するストレージ・コンピューティングエンジンとスケジューリングリソースグループの情報を選択します。
2. サイドバーの「タスク設定」で、イメージとスペックパラメータを調整できます。
Notebookタスクの実行
実行をクリックして、現在のNotebookタスクをデバッグします。デバッグ実行が成功した後、タスクを送信できます。