MaxComputeプロジェクトを作成した後、プロジェクトを入力して、開発、分析、O&Mなどの後続の操作を実行する必要があります。このトピックでは、プロジェクトへの移動、プロジェクトの表示、プロジェクトのプロジェクトレベルのプロパティの設定、プロジェクトのプロジェクトレベルのプロパティの表示など、プロジェクトでの一般的な操作について説明します。
プロジェクトの一般的な操作を次の表に示します。
API 操作 | 説明 | ロール | プラットフォーム |
アクセス権限があるプロジェクトに移動します。 | プロジェクトアクセス権限を持つユーザー | このトピックで説明するステートメントをMaxComputeクライアントで実行します。 | |
プロジェクトのプロパティを表示します。 | プロジェクト所有者 | ||
プロジェクトのプロパティを設定します。 | プロジェクト所有者 | ||
プロジェクトでサポートされているアカウントシステムの情報を表示します。 | プロジェクト所有者 | ||
プロジェクトのResource Access Management (RAM) アカウントシステムを追加します。 | プロジェクト所有者 | ||
プロジェクトのRAMアカウントシステムを削除します。 | プロジェクト所有者 |
注意事項
プロジェクトはワークスペースではありません。 プロジェクト名を取得するには、 MaxComputeコンソール
をクリックし、[プロジェクト] ページの [プロジェクト名] 列に名前を表示します。
MaxComputeは、プロジェクトの作成と削除に使用されるステートメントを提供しません。 プロジェクトの作成方法については、「MaxComputeプロジェクトの作成」をご参照ください。
プロジェクトに移動する
アクセス権限がある特定のプロジェクトに移動します。 プロジェクトに移動すると、プロジェクト内のすべてのオブジェクトを管理できます。
構文
-- Go to a project. use <project_name>;
パラメーター
project_name: 行きたいプロジェクトの名前。 プロジェクトが存在しない場合、またはプロジェクトに対するアクセス権限がない場合は、エラーが返されます。
例
例1: 特定のプロジェクトに移動し、プロジェクト内のオブジェクトにアクセスします。
-- The current project is my_project, and the project to which you want to go is my_project_test. You have access permissions on the my_project_test project. odps@ my_project>use my_project_test; -- After you go to the my_project_test project, you can perform other operations. For example, you can query the test_src table in the my_project_test project. odps@ my_project_test>select * from test_src;
MaxComputeは、my_project_testプロジェクトでtest_srcテーブルを検索します。 テーブルが存在する場合、テーブル内のデータが返されます。 テーブルが存在しない場合、エラーが返されます。
例2: 別のプロジェクトからプロジェクト内のオブジェクトにアクセスするには、オブジェクトに対する権限を付与し、オブジェクトが属するプロジェクトの名前を指定します。
MaxComputeでスキーマ機能が有効になっていない場合に使用できるサンプルコード:
-- Access the test_src table in the my_project2 project from the my_project_test project. odps@ my_project_test>select * from my_project2.test_src;
MaxComputeでスキーマ機能が有効になっている場合に使用できるサンプルコード:
-- Access the test_src table in the my_project2 project from the my_project_test project. By default, the schema of the my_project2 project is named DEFAULT. odps@ my_project_test>select * from my_project2.default.test_src;
説明スキーマ機能の詳細については、「スキーマ関連の操作」をご参照ください。
プロジェクトのプロパティを表示する
プロジェクトのプロジェクトレベルのプロパティを表示します。 MaxComputeでは、プロジェクトのセッションレベルのプロパティを表示することもできます。 詳細については、「SET操作」の「フラグの表示」セクションをご参照ください。
構文
setproject;
プロパティ
プロジェクトの共通プロパティを次の表に示します。
プロパティ (キー)
説明
有効値 (value)
odps.sql.allow.fullscan
プロジェクトでテーブル全体のスキャンを有効にするかどうかを指定します。 フルテーブルスキャンは多数のリソースを占有し、データ処理効率を低下させます。 したがって、この機能を有効にしないことを推奨します。
true: フルテーブルスキャンが有効になっています。
false: フルテーブルスキャンは無効です。
odps.table.lifecycle
プロジェクトのテーブルのライフサイクルを設定するかどうかを指定します。
optional: テーブル作成ステートメントでは、ライフサイクル句はオプションです。 テーブルのライフサイクルを設定しない場合、テーブルは期限切れになりません。
必須: ライフサイクル句は、テーブル作成ステートメントで必須です。
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アドレスのホワイトリストの管理」をご参照ください。
RegionID_VPCID[IPアドレス] 。
READ_TABLE_MAX_ROW
SELECTステートメントによって返されるデータレコードの最大数。
1から10000。 デフォルト値: 10000。
odps.sql.type.system.odps2
MaxCompute V2.0データ型エディションを有効にするかどうかを指定します。 MaxCompute V2.0データ型エディションの詳細については、「MaxCompute V2.0データ型エディション」をご参照ください。
true: MaxCompute V2.0データ型エディションが有効です。
false: MaxCompute V2.0データ型エディションは無効です。
odps.sql.hive.com patible
Hive互換データ型エディションを有効にするかどうかを指定します。 MaxComputeは、Hive互換データ型エディションが有効になった後にのみ、
inputRecordReader
、outputRecordReader
、Serde
などのHive構文をサポートします。 Hive互換データ型エディションの詳細については、「Hive互換データ型エディション」をご参照ください。true: Hive互換データ型エディションが有効です。
false: Hive互換データ型エディションは無効です。
odps.sql.de cimal.odps2
MaxCompute V2.0データ型エディションで
DECIMAL(precision,scale)
を有効にするかどうかを指定します。 詳細については、「MaxCompute V2.0データ型エディション」をご参照ください。true: MaxCompute V2.0データ型エディションのDECIMAL型が有効になっています。
false: MaxCompute V2.0データ型エディションのDECIMAL型は無効です。
odps.sql.metering.value.max
SQL文によって消費されるリソースの上限。 詳細については、「消費制御」をご参照ください。
非該当
odps.sql.timezone
アクセスしたMaxComputeプロジェクトのタイムゾーン。 タイムゾーンの詳細については、「タイムゾーン設定操作」をご参照ください。
非該当
odps.sql.unstructured.oss.commit.mo de
Object Storage Service (OSS) のマルチパートアップロード機能を有効にして、OSS外部テーブルにデータを書き込むかどうかを指定します。 詳細については、「OSSへのデータの書き込み」をご参照ください。
true: マルチパートアップロード機能が有効になっています。
false: マルチパートアップロード機能は無効です。
odps.sql.groupby.orderby.position.alias
SELECTステートメントの列IDとして、
GROUP BY
句とORDER BY
句で整数定数を使用するかどうかを指定します。説明このパラメーターが既存のプロジェクトに対してtrueに設定されている場合、データの解析やその他の操作が実行されない可能性があります。 このパラメーターをtrueに設定すると、既存のプロジェクトに対して元のロジックを正しく実行できることを確認する必要があります。 それ以外の場合は、このパラメーターをセッションに設定します。
true: GROUP BYおよびORDER BY句の整数定数は、SELECTステートメントの列IDとして使用できます。
false: GROUP BYおよびORDER BY句の整数定数は、SELECTステートメントの列IDとして使用できません。
odps.forbid.fetch.result.by.bearertoken
Logviewの [結果] タブにジョブの結果を表示するかどうかを指定します。 このパラメーターは、データセキュリティを保護するために使用されます。
true: Logviewの [結果] タブにジョブの結果が表示されません。
false: ジョブの結果は、Logviewの [結果] タブに表示されます。
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 ++ ネイティブライブラリにアップグレードするかどうかを指定します。 C ++ ネイティブライブラリを使用して、新しいバージョンのORCデータファイルを解析し、オープンソースデータの解析パフォーマンスを大幅に向上させることができます。
true: C ++ ネイティブライブラリが使用されます。
false: オープンソースコミュニティのJavaライブラリが使用されます。
odps.ext.parquet.native
プロジェクト内のジョブが外部テーブルからデータを読み取ってParquetデータファイルを解析するときに、オープンソースコミュニティのJavaライブラリをC ++ ネイティブライブラリにアップグレードするかどうかを指定します。 C ++ ネイティブライブラリを使用すると、オープンソースデータの解析パフォーマンスを大幅に向上させることができます。 オープンソースコミュニティのJavaライブラリをC ++ ネイティブライブラリにアップグレードした後、多数の小さなParquetデータファイルと多数のデータ列が存在する場合、データソースへのアクセス数が増加する可能性があります。 この場合、テーブルを作成するときに、WITH SERDEPROPERTIES句で
parquet.file.ca che.size
プロパティとparquet.io.buffer.size
プロパティを設定して、データソースへのアクセスごとにキャッシュできるデータ量を増やすことができます。true: C ++ ネイティブライブラリが使用されます。
false: オープンソースコミュニティのJavaライブラリが使用されます。
odps.security.enabledownloadprivilege
ダウンロード制御機能を有効にするかどうかを指定します。 この機能を有効にすると、Tunnelコマンドを使用して、インスタンスのテーブルまたはデータをダウンロードするためのユーザーまたはロールの権限を管理できます。 これにより、プロジェクトデータのセキュリティが向上し、データ漏洩が防止されます。 詳細については、「ダウンロード制御」をご参照ください。
true: ダウンロード制御機能が有効になっています。
false: ダウンロード制御機能は無効です。
odps.security.ip.whitelist.services
MaxComputeプロジェクトのAlibaba Cloudサービスのホワイトリスト。 DataHubやSimple Log serviceなどのAlibaba Cloudサービスをこのホワイトリストに追加すると、後でサービスを使用してMaxComputeプロジェクトにアクセスするときに、サービスのIPアドレスをMaxComputeプロジェクトのIPアドレスホワイトリストに追加する必要がなくなります。
このパラメーターの値は、
service1、service2
形式です。ホワイトリストにサービス名を追加する前に、サービス名をMaxComputeに登録する必要があります。
たとえば、Simple Log Serviceをホワイトリストに追加する場合、このパラメーターを
AliyunLogSLRService,AliyunLogDefaultService
に設定します。
プロジェクトのプロパティの設定
プロジェクトのプロジェクトレベルのプロパティを設定します。 このステートメントは、実行後5分以内に有効になります。 ステートメントが正常に実行されてから5分後に結果を確認できます。 MaxComputeでは、プロジェクトのセッションレベルのプロパティを設定することもできます。 詳細については、SET操作の「SET」セクションをご参照ください。
構文
setproject <KEY>=<VALUE>;
パラメーター
KEY: プロパティの名前。
VALUE: プロパティの値。 プロパティの詳細については、「プロジェクトのプロパティの表示」をご参照ください。
例:
プロジェクトのフルテーブルスキャンを有効にします。
setproject odps.sql.allow.fullscan=true;
プロジェクトのアカウントシステムを表示する
プロジェクトでサポートされているアカウントシステムの情報を表示します。 アカウントシステムには、Alibaba CloudアカウントシステムとRAMアカウントシステムが含まれます。 構文:
list accountproviders;
デフォルトでは、MaxComputeはAlibaba Cloudアカウントシステムのみを識別します。 RAMアカウントシステムを識別できません。
RAMアカウントシステムを追加する
プロジェクトのRAMアカウントシステムを追加します。 構文:
add accountprovider ram;
RAMアカウントシステムを削除する
プロジェクトのRAMアカウントシステムを削除します。 構文:
remove accountprovider ram;