プロジェクトでの作業を整理します
目的: プロジェクトとカタログを作成し、このカタログをプロジェクトに追加して、 OLP コマンド ライン インターフェース( CLI )を使用してパブリックカタログをプロジェクトにリンクします。
複雑さ: 初心者向け
所要時間: 30 分
前提条件: 資格情報 を確認します
ソースコード: ダウンロード
この例では、プロジェクトを作成する方法、および OLP CLI を使用してプロジェクトのメンバーとリソースを管理する方法を示します。
プロジェクトは、管理されたアクセス権を持つリソース ( カタログ、パイプライン、スキーマ ) のコレクションです。 プロジェクトに関連付けられているリソースでの計算、ストレージ、および転送操作の使用状況は、 HERE platform のクレジット使用状況レポートでプロジェクト ID によって自動的に把握されます。 プロジェクト管理者は、他のユーザー、アプリ、およびグループにプロジェクトへのアクセス権を付与できます。 プロジェクトアクセス権を持つユーザーは、プロジェクトリソースを作成および管理できます。
このチュートリアルを実行 するには、 CLI がインストールされ、プラットフォームとリポジトリ資格情報の両方がローカルマシンに設定されている必要があります。
プラットフォーム資格情報が正しく設定されていることを確認する には、「資格情報の確認」チュートリアルで予期した結果が返されていることを確認してください。
プロジェクトを作成
プロジェクトに一意の識別子と名前を付けます。
注
プロジェクトの識別子と名前は一意である必要があります。 識別子の先頭または末尾にハイフンを使用することはできません。また、 4 ~ 16 文字の小文字の英数字(ハイフンを含む)を使用する必要があります。
{{YOUR_PROJECT_ID}}
次 {{YOUR_PROJECT_NAME}}
のコマンドで、とを自分の ID と名前に置き換えて実行します。
olp project create {{YOUR_PROJECT_ID}} {{YOUR_PROJECT_NAME}}
OLP CLI から次のメッセージが返されます。
Project {{YOUR_PROJECT_HRN}} has been created.
{{YOUR_PROJECT_HRN}}
新しいプロジェクトリソースの次のステップで必要に応じてメモしてください。
Workspace ポータルでプロジェクトを作成および管理することもできます。
アプリおよびユーザーがプロジェクトにアクセスできることを確認するには olp access list
、次のようにコマンドを実行します。
olp project access list {{YOUR_PROJECT_HRN}}
コマンドが成功すると、 CLI は次の内容を返します。
type HRN id name
app hrn:<partition>:account::<realm>:app/<AppId> <AppId> <AppName>
user hrn:<partition>:account::<realm>:user/<UserId> <UserId> <UserName>
既定 olp project create
では、このコマンドは、プロジェクトを作成したユーザーと、資格情報に関連付けられているアプリの両方にプロジェクトへのアクセス権を付与します。 この動作は --skip-sharing-with-user
フラグで上書きできます。このフラグを使用すると、プロジェクトをユーザーと共有しないようにできます。 プロジェクトのアクセス権がない場合、ユーザーは HERE ポータルでプロジェクトを表示および管理できません。
アプリおよびユーザーがポータルのプロジェクトにアクセスできることを確認することもできます。 この操作を行う には、プロジェクト管理者ポータルセクションに移動し、リストから{{YOUR_PROJECT_NAME}}
を選択します。 ユーザー名とアプリ名がプロジェクトの詳細ページの [ アクセス権と権限 ] セクションに一覧表示されていることを確認します。
特定のユーザー、アプリ、またはグループのプロジェクトへのアクセス権を付与するには olp project access grant
、次のようにコマンドを使用します。
olp project access grant {{YOUR_PROJECT_HRN}} --app <appId> --user <uderId> --group <groupId>
プロジェクトの範囲にカタログを作成します
カタログに一意の識別子と名前を付け {{YOUR_USERNAME}}-sdii-tutorial
ます ( 例 : ) 。
sdii-versioned.json
以下の内容のカタログ用の構成ファイルを作成し、 {{YOUR_CATALOG_ID}}
独自の識別子で置き換えます。
{
"id": "{{YOUR_CATALOG_ID}}",
"name": "Simulated sensor data archive (From tutorial)",
"summary": "Archive of simulated sensor data",
"description": "Archive of simulated sensor data in form of SDII messages containing road sign observations.",
"tags": ["Tutorial", "SDII", "SensorData", "RoadSign", "Simulated"],
"layers": [
{
"id": "sdii-message-archive",
"name": "sdii-message-archive",
"summary": "Archive of simulated sensor data in form of SDII messages containing road sign observations",
"description": "Archive of simulated sensor data in form of SDII messages containing road sign observations.\n\nThis data is meant to be used for demonstration purposes and \"playing\" with data.",
"tags": ["Tutorial", "SDII", "SensorData", "RoadSign", "Simulated"],
"contentType": "application/x-protobuf",
"layerType": "versioned",
"volume": {
"volumeType": "durable"
},
"partitioning": {
"scheme": "generic"
},
"schema": {
"hrn": "hrn:here:schema::olp-here:com.here.sdii:sdii_message_v3:3.3.8"
}
}
]
}
カタログを作成するには olp catalog create
、コマンドを使用します。 {{YOUR_CATALOG_ID}}
次 {{YOUR_PROJECT_HRN}}
のコマンドで、独自のカタログ ID とプロジェクトの HERE リソースネーム で置き換えて実行します。
olp catalog create {{YOUR_CATALOG_ID}} \
"Simulated sensor data archive from tutorial" \
--config sdii-versioned.json \
--scope {{YOUR_PROJECT_HRN}}
注
レルムで請求タグが必要な場合 は、layer
セクションにbillingTags: ["YOUR_BILLING_TAG"]
プロパティを追加して設定 ファイルを更新します。
--scope
このパラメーターの値がプロジェクトの HERE リソースネーム と等しいため、 param を確認します。 このパラメーターを指定して、プロジェクトの範囲にカタログを作成します。 同様に、このパラメーターは、プロジェクトに関連付けられているリソースの更新、表示、削除などの他の操作で使用する必要があります。 スコープの詳細については、『 CLI 開発者ガイド』の「 Scopes 」セクションを参照してください。
コマンドが成功すると、 CLI は次の内容を返します。
Catalog {{YOUR_CATALOG_HRN}} has been created.
このステートメントによって返される HERE リソースネーム は、このカタログを特定するための CLI および HERE Data SDK for Java & Scala の以降のすべての操作で使用するものです。
次 olp catalog show
のコマンドを使用して、想定されているカタログ設定を確認できます。
olp catalog show {{YOUR_CATALOG_HRN}} \
--scope {{YOUR_PROJECT_HRN}}
CLI は、 JSON ファイルの値と一致する値を返します。 特に、バージョン付レイヤーが正常に作成および設定されたことを示す出力は、次のようになります。
...
layers
type id name
Versioned sdii-message-archive sdii-message-archive
...
新しいカタログがプラットフォームポータルのプロジェクトと共有されていることを確認することもできます。 この操作を行うには、ポータルに移動し、リストから{{YOUR_PROJECT_NAME}}
を選択します。 新しいカタログが、プロジェクトの詳細ページの [ リソース ] セクションに一覧表示されます。
プラットフォームポータルで新しいカタログ設定を検査することもできます。 この操作を行うには、ポータルに移動し、リストからSimulated sensor data archive (From tutorial)
を選択します。
カタログの設定を確認してください
JSON 設定のフィールドが、ポータルに表示されている値に対応していることに注意してください。
カタログおよびレイヤーを設定したタグは、 データタブの カタログ名の下の各カタログ一覧表に表示され、レイヤー一覧表は単一のカタログ内に表示されます。 「 sensordata 」など、特定のタグを持つすべてのカタログを検索することもできます。
カタログをクリックして、下の「レイヤー」セクションの「 sdi-message-archive 」レイヤーを選択します。 レイヤーとその種類の詳細について は、「 Data ユーザー ガイド」を参照してください。
上記の JSON ファイルは、生のセンサーデータメッセージのアーカイブを含むようにレイヤーを設定します。 このレイヤーの各パーティションには、 JSON ファイルが contentType
フィールドに示す、 1 つの protobuf エンコードされたセンサーデータメッセージが含まれています。 layerType
IS "versioned"
および volumeType
IS "durable"
。パーティション データが永続的に使用されることを示します。 クライアントが既存のパーティションに新しいデータを公開した場合、古いデータはそのレイヤーの以前のバージョンで引き続き利用できます。 partitioning
スキームはです "generic"
。つまり、メッセージがカタログで空間的に分割されていません。 そのため 、 [ 検査 ] タブをクリックしても、パーティションの視覚的な表示を表示できません。 代わりに、タブに「空間データがありません」と表示されます。
レイヤー にバンドルされているスキーマの詳細を表示するには、レイヤー(スキーマ)タブをクリックします。 スキーマの HERE リソースネーム もレイヤー設定ファイルで指定されます。 「資格情報の確認」で学習したように、 HERE リソースネーム はカタログやスキーマなどのリソースを識別します。 クライアントアプリケーションは、スキーマ HERE リソースネーム を使用して、スキーマの仕様および言語バインディングを使用してデータを処理およびデコードするための関連アーティファクトを検出できます。 プラットフォームポータル自体 は、スキーマアーティファクトを使用してパーティションの内容をデコードし、その値を [Inspect] タブに表示します。
新しく作成されたカタログが空のため、デコードするパーティションがありません。
また olp catalog layer show
、次のコマンドを使用して、カタログレイヤーの設定を確認することもできます。
olp catalog layer show {{YOUR_CATALOG_HRN}} sdii-message-archive \
--scope {{YOUR_PROJECT_HRN}}
パブリックカタログをプロジェクトにリンクします
その他のチュートリアルでは、データソースとしてパブリックカタログを使用しています。 プロジェクトの範囲内でこのカタログにアクセスできるように、 hrn: here::data::opp-here: rib-2 パブリックカタログをプロジェクトにリンクします。
これを行うには olp project resource link
、コマンドを使用します。
{{PUBLIC_CATALOG_HRN}}
hrn:here:data::Olp-here:rib-2 で置き換え、 {{YOUR_PROJECT_HRN}}
次のコマンドでプロジェクトの HERE リソースネーム で置き換えてから、実行します。
olp project resource link {{YOUR_PROJECT_HRN}} {{PUBLIC_CATALOG_HRN}}
コマンドが成功すると、 CLI は次のメッセージを返します。
Project resource hrn:here:data::olp-here:rib-2 has been linked.
パブリックカタログがプロジェクトに正常にリンクされたことを確認するには olp project resource list
、次のようにコマンドを実行します。
olp project resource list {{YOUR_PROJECT_HRN}}
コマンドが成功すると、 CLI は次のメッセージを返します。
Available resources in the project:
HRN Type Relation
hrn:here:data::olp-here:rib-2 catalog reference
{{YOUR_CATALOG_HRN}} catalog home
パイプラインやスキーマなど、プロジェクトに関連付けることができる他の種類のリソースがありますが、このチュートリアルではカタログのみをリンクします。 また、プロジェクトとそれに関連付けられているリソースの間には、さまざまな種類の関係があります。
リソースがプロジェクトの範囲内に作成された場合、関係タイプは「ホーム」になります。 パブリックカタログをプロジェクトにリンクする場合、関係タイプは「参照」になります。
公開カタログがプラットフォームポータルのプロジェクトと共有されていることを確認することもできます。 これを行うに は、 [ プロジェクト ] タブに移動し、一覧から{{YOUR_PROJECT_NAME}}
検索します。
プロジェクトを開き、以前にリンクしたパブリックカタログがプロジェクトの詳細ページの [ リソース ] セクションに表示されていることを確認します。
また、プラットフォームポータルでアクセス可能な任意のカタログの設定を検査することもできます。 この操作を行うに は、ポータルに移動し、名前でパブリックカタログを探します。
このチュートリアルで作成したカタログを 、「ストリームアプリケーションをローカルで実行」で実装されているストリーミングアプリケーションの出力カタログとして使用できます。
プロジェクトの詳細 については、「プロジェクトの管理」を参照してください。
OLP CLI プロジェクトのアクセス管理コマンドの詳細について は、「プロジェクトアクセスコマンド」の関連セクションを参照してください。
OLP CLI プロジェクト管理コマンドの詳細 については、「プロジェクトコマンド」の関連セクションを参照してください。
OLP CLI カタログコマンドの詳細について は、関連するカタログコマンドを参照してください。
空間的に分割されていないレイヤー ( つまり、パーティション分割スキームが「汎用」のレイヤー ) でスキーマデコードが実行されていることを確認する場合 は、 HERE Map Content カタログの管理ロケーションレイヤーを検査できます。