MaxCompute プロジェクトを作成した後、プロジェクトに入って開発、分析、O&M などの操作を実行する必要があります。このトピックでは、プロジェクトへの移動またはプロジェクトの表示方法、およびプロジェクトレベルのプロパティの設定または表示方法について説明します。
次の表に、プロジェクト操作の共通コマンドをリストします。
タイプ | 機能 | ロール | エントリポイント |
アクセス権限のあるプロジェクトに入ります。 | プロジェクトへのアクセス権限を持つユーザー | このトピックのコマンドは、MaxCompute クライアントで実行する必要があります。 | |
プロジェクトのプロパティ設定を表示します。 | プロジェクトオーナー | ||
プロジェクトのプロパティを設定します。 | プロジェクトオーナー | ||
現在のプロジェクトでサポートされているアカウントシステムを表示します。 | プロジェクトオーナー | ||
現在のプロジェクトに RAM ユーザーシステムを追加します。 | プロジェクトオーナー | ||
現在のプロジェクトから RAM ユーザーシステムを削除します。 | プロジェクトオーナー |
MaxCompute はプロジェクトを作成または削除するコマンドを提供していません。詳細については、「MaxCompute プロジェクトの作成」をご参照ください。
プロジェクト名の取得
MaxCompute プロジェクトは DataWorks ワークスペースとは異なります。プロジェクト名は次のように取得できます:
MaxCompute コンソールにログインし、左上隅でリージョンを選択します。
左側のナビゲーションウィンドウで、 を選択します。
プロジェクト管理 ページで、MaxCompute プロジェクトの名前を取得します。
プロジェクトへの移動
アクセス権限のあるプロジェクトに入ります。プロジェクトに入った後、プロジェクト内のオブジェクトに対して直接操作を実行できます。
コマンド構文
-- プロジェクトに入ります。 USE <project_name>;パラメーター
project_name:アクセスしたいプロジェクトの名前。プロジェクトが存在しない場合、またはプロジェクトにアクセスする権限がない場合は、エラーが返されます。
例
例 1:プロジェクトに入り、その中のオブジェクトにアクセスします。
-- 現在のプロジェクトは my_project です。アクセスするプロジェクトは my_project_test です。my_project_test へのアクセス権限があります。 odps@ my_project>USE my_project_test; -- プロジェクトに入った後、他の操作を実行できます。たとえば、my_project_test プロジェクトの test_src テーブルをクエリできます。 odps@ my_project_test>SELECT * FROM test_src;MaxCompute は my_project_test プロジェクトでテーブルを自動的に検索します。テーブルが存在する場合、テーブル内のデータが返されます。テーブルが存在しない場合は、エラーが返されます。
例 2:別のプロジェクトのオブジェクトにアクセスするには、そのオブジェクトに対する必要な権限を持ち、プロジェクト名を指定する必要があります。
以下は、MaxCompute でスキーマ機能が無効になっている場合の例です:
-- my_project_test プロジェクトから my_project2 プロジェクトの test_src テーブルにアクセスします。 odps@ my_project_test>SELECT * FROM my_project2.test_src;以下の例は、MaxCompute でスキーマ機能が有効になっている場合に適用されます:
-- my_project_test プロジェクトから my_project2 プロジェクトの test_src テーブルにアクセスします。my_project2 のデフォルトスキーマは Default です。 odps@ my_project_test>SELECT * FROM my_project2.default.test_src;
プロジェクトプロパティの表示
現在のプロジェクトのプロジェクトレベルのプロパティ設定を表示できます。MaxCompute では、セッションレベルのプロパティも表示できます。詳細については、「show flags」をご参照ください。
コマンド構文
SETPROJECT;プロパティの説明
以下は、プロジェクトの一般的なプロパティです。
プロパティ名 (KEY)
説明
値の範囲 (VALUE)
odps.sql.allow.fullscan
プロジェクトで全表スキャンを許可するかどうかを指定します。全表スキャンは大量の計算リソースを消費します。処理効率を向上させるために、この機能を有効にしないことを推奨します。
true:全表スキャンが許可されます。
false:全表スキャンは許可されません。
odps.table.lifecycle
プロジェクト内のテーブルにライフサイクルを設定する必要があるかどうかを指定します。
optional:テーブル作成時に Lifecycle 句は任意です。テーブルにライフサイクルを設定しない場合、テーブルは有効期限切れになりません。
mandatory:Lifecycle 句は必須です。テーブルにライフサイクルを設定する必要があります。
inherit:テーブル作成時にライフサイクルを設定しない場合、テーブルのライフサイクルは odps.table.lifecycle.value の値になります。
odps.table.lifecycle.value
テーブルのライフサイクル。単位:日。
1 から 37231。デフォルト値は 37231 です。
odps.security.ip.whitelist
インターネット経由でプロジェクトへのアクセスを許可する IP アドレスホワイトリスト。詳細については、「IP アドレスホワイトリストの管理」をご参照ください。
カンマ (,) で区切られた IP アドレスのリスト。
odps.security.vpc.whitelist
VPC 経由でプロジェクトへのアクセスを許可する IP アドレスホワイトリスト。詳細については、「IP アドレスホワイトリストの管理」をご参照ください。
VPC インスタンス ID1,VPC インスタンス ID2[IP アドレスリスト]。READ_TABLE_MAX_ROW
SELECT 文が返すことができるデータレコードの数。
1 から 10000。デフォルト値は 10000 です。
odps.sql.type.system.odps2
MaxCompute V2.0 の新しいデータ型を有効または無効にします。V2.0 データ型の詳細については、「データ型エディション (V2.0)」をご参照ください。
true:有効
false:無効
odps.sql.hive.compatible
Hive 互換モードを有効または無効にします。Hive 互換モードを有効にすると、MaxCompute は
inputRecordReader、outputRecordReader、Serdeなどのさまざまな Hive 固有の構文をサポートします。Hive 互換データ型の詳細については、「Hive 互換データ型エディション」をご参照ください。true:有効
false:無効
odps.sql.decimal.odps2
MaxCompute V2.0 の
DECIMAL(precision,scale)データ型を有効または無効にします。詳細については、「データ型エディション (V2.0)」をご参照ください。true:有効
false:無効
odps.sql.metering.value.max
単一の SQL 文の最大消費量。詳細については、「監視とアラートのための消費量制御」をご参照ください。
なし。
odps.sql.timezone
MaxCompute プロジェクトのタイムゾーン。タイムゾーンの詳細については、「タイムゾーン設定」をご参照ください。
なし。
odps.sql.unstructured.oss.commit.mode
OSS 外部テーブルにデータを書き込む際に、マルチパートアップロードを有効にするかどうかを指定します。 詳細については、「OSS にデータを書き込む」をご参照ください。
true:有効
false:無効
odps.sql.groupby.orderby.position.alias
group by句およびorder by句の整数定数を、SELECT リストの列の序数として処理するかどうかを指定します。説明既存のプロジェクトで、このパラメーターをプロジェクトレベルで有効にすると、既存のタスクの解析と実行に影響が及ぶ可能性があります。このパラメーターを変更する前に、このパラメーターを設定した後も既存のタスクが元のロジックに基づいて正しく実行できることを確認してください。そうでない場合は、このパラメーターをセッションレベルで設定してください。
true:有効
false:無効
odps.forbid.fetch.result.by.bearertoken
Logview の [結果] タブにジョブ実行結果が表示されないようにするかどうかを指定します。このパラメーターは、データセキュリティを保護するために使用されます。
true:ジョブの実行結果は表示されません。
false:ジョブの実行結果を表示します。
odps.cupidhistory.inprogress.remain.days
実行中の Spark on MaxCompute ジョブの履歴ログの保存期間。単位:日。
1 から 7。デフォルト値は 7 です。
odps.cupidhistory.remain.days
Spark on MaxCompute ジョブの履歴ログの保存期間。単位:日。
1 から 3。デフォルト値は 3 です。
odps.ext.oss.orc.native
プロジェクト内のジョブが外部テーブルを読み取る際に、ORC データファイルを解析するための実装をアップグレードするかどうかを指定します。元の実装はオープンソースの Java コミュニティに基づいています。新しい実装は C++ に基づいており、新しいバージョンの ORC ファイルをサポートし、オープンソースデータの解析パフォーマンスを数倍向上させます。
true:外部テーブルの読み取り時に、新しい C++ ベースのネイティブ実装を使用して ORC データファイルを解析します。
false:外部テーブルの読み取り時に、オープンソースコミュニティの元の Java ベースの実装を使用して ORC データファイルを解析します。
odps.ext.parquet.native
プロジェクト内のジョブが外部テーブルを読み取る際に、PARQUET データファイルを解析するための実装をアップグレードするかどうかを指定します。元の実装はオープンソースの Java コミュニティに基づいています。新しい実装は C++ に基づいており、オープンソースデータの解析パフォーマンスを数倍向上させます。アップグレード後、小さな PARQUET ファイルが多数あり、データ列が多い場合、データソースへのアクセスリクエスト数が増加する可能性があります。テーブルを作成する際、with serdeproperties 句と
parquet.file.cache.sizeおよびparquet.io.buffer.sizeパラメーターを使用して、データソースへの各アクセスでキャッシュされるデータ量を増やすことができます。true:外部テーブルの読み取り時に、新しい C++ ベースのネイティブ実装を使用して PARQUET データファイルを解析します。
false:外部テーブルの読み取り時に、オープンソースコミュニティの元の Java ベースの実装を使用して PARQUET データファイルを解析します。
odps.security.enabledownloadprivilege
プロジェクトのダウンロード権限制御ソリューションを有効にするかどうかを指定します。この機能を有効にすると、Tunnel を使用してテーブルやインスタンスをダウンロードするロールやユーザーの操作を制御できます。これにより、データセキュリティが向上し、データ漏洩を防ぎます。詳細については、「ダウンロード権限制御」をご参照ください。
true:ダウンロード権限制御を有効にします。
false:ダウンロード権限制御を無効にします。
odps.security.ip.whitelist.services
サービスホワイトリスト。このパラメーターは、ユーザーが DataHub や SLS などの Alibaba Cloud サービスを使用して MaxCompute プロジェクトにアクセスする際に、IP アドレスホワイトリストを設定するのを避けるために使用されます。
フォーマット:
service1,service2。サービス名は事前に MaxCompute に登録されている必要があります。
このパラメーターは、LogShipper サービスでよく使用されます。Service の値は
AliyunLogSLRService,AliyunLogDefaultServiceです。
プロジェクトプロパティの設定
プロジェクトのプロジェクトレベルのプロパティを設定できます。プロジェクトプロパティを設定するコマンドには 0〜5 分の遅延があります。コマンドが正常に実行された後、5 分待ってから結果を確認してください。MaxCompute では、セッションレベルのプロパティも設定できます。詳細については、「set」をご参照ください。
コマンド構文
SETPROJECT <KEY>=<VALUE>;パラメーター
KEY:プロパティ名。
VALUE:プロパティ値。プロパティの詳細については、「プロジェクトプロパティの表示」をご参照ください。
例
プロジェクトでの全表スキャンを許可します。
SETPROJECT odps.sql.allow.fullscan=true;
プロジェクトのアカウントシステムの表示
現在のプロジェクトでサポートされているアカウントシステムを表示できます。アカウントシステムには ALIYUN と RAM が含まれます。コマンド構文は次のとおりです:
LIST accountproviders;デフォルトでは、MaxCompute プロジェクトは Alibaba Cloud アカウントシステムのみを認識し、RAM ユーザーシステムは認識しません。
RAM ユーザーシステムの追加
現在のプロジェクトに RAM ユーザーシステムを追加できます。コマンド構文は次のとおりです:
ADD accountprovider ram;RAM ユーザーシステムの削除
現在のプロジェクトから RAM ユーザーシステムを削除できます。コマンド構文は次のとおりです:
REMOVE accountprovider ram;