4.5. オブジェクトバケット管理¶
オブジェクトバケットの追加、編集、削除、インデックス設定、シャードキー設定を行うことができます。 また、データのインポートエクスポートを行うことができます。
オブジェクトバケットの追加¶
例として、オブジェクトバケットの追加方法を説明します。
オブジェクトバケット一覧画面で、「追加」を選択してください。
新規オブジェクトバケット登録画面が表示されますので、「バケット名」、「説明」(任意)、「バケットACL」、「コンテンツACL」と「オブジェクトACL無効」を入力し、「保存」を選択してください(「バケットACL」と「コンテンツACL」にはデフォルト値が入っています)。
「オブジェクトACL無効」がチェックされた場合は、 ACLレスバケット となります。
これでテナントにオブジェクトバケットが追加されました。
追加したオブジェクトバケットの情報が表示されます。
オブジェクトバケットの編集、削除¶
テナント内のオブジェクトバケットの編集、削除は、オブジェクトバケット一覧画面で「編集」を選択後、表示されるオブジェクトバケット編集画面で実施できます。
注意
「オブジェクトACL無効」変更の注意点
通常バケットから、 ACLレスバケットに変更する場合
- 全オブジェクトのACLフィールドは残ったままとなります。
- 削りたい場合は、1件毎に更新する必要があります。
ACLレスバケットから、通常バケットに変更する場合
- 既存オブジェクトのACLフィールドが存在しない状態となります。
- デフォルトACL値は自動付与されないので、マスターキーでアクセスする必要があります。
インデックスの作成¶
指定フィールドへのインデックス作成方法を説明します。
オブジェクトバケット一覧画面で、「インデックス」を選択してください。
インデックス一覧画面が表示されますので、「追加」を選択してください。
新規インデックス追加画面で「インデックス名」「キー」「オプション」を入力し、「保存」を選択してください。
注意
インデックス名に使用可能な文字は1バイト英数字、アンダースコアのみです。 また、インデックス名の文字数は1文字~40文字に制限されます。
サポートするインデックスタイプおよびオプション¶
サポートするインデックスのタイプは以下の通りです。
インデックスタイプ | 入力例 |
---|---|
昇順 | {"name":"key1", "type":1} または key1 |
降順 | {"name":"key1", "type":-1} または -key1 |
ハッシュ | {"name":"key1", "type":"hashed"} |
サポートするオプションは以下の通りです。
オプション | 入力例 | 備考 |
---|---|---|
unique | {"unique": true} | ハッシュインデックスには設定不可 |
MongoDB で提供されている上記以外のタイプ・オプションも設定可能ですが、動作保証範囲外となります。
注釈
詳細は、 MongoDB DocumentationのIndexes を参照して下さい。
データ管理機能¶
データのエクスポート¶
次に、オブジェクトバケット内のデータのエクスポートを説明します。
オブジェクトバケット一覧画面で対象バケットの「データ」を選択します。
オブジェクトデータ一覧が表示されますので、「エクスポート」を選択するとデータがJSON形式でエクスポートされます。ファイルは、「"オブジェクトバケット名".json」となります。
JSON形式のデータをインポートすることもできます。
オブジェクトデータのカラム表示¶
オブジェクトデータ一覧画面では、オブジェクトデータに含まれるカラム(フィールド)を選択して表示できます。「カラムの表示」メニューからカラムを選択すると、画面上に選択したカラムが追加表示されます。 カラムは最大5件まで追加できます。
オブジェクトデータの検索¶
オブジェクトデータ一覧画面で、「検索」を選択します。
オブジェクトデータの検索画面が表示されますので、検索条件を入力後、「検索実行」を選択します。検索条件は画面内の例に従ってJSON形式で入力してください。
クエリプランナー¶
オブジェクトバケットに対するクエリ実行時の実行計画を確認することができます。
オブジェクトバケット一覧画面で「クエリプランナー」を選択するとクエリプランナー画面に移動します。
クエリ式を入力することで、クエリプランナーの結果(explain結果)を確認することができます。
- 結果の読み方については、 Explain Results を参照してください。
- ACL チェックのための演算子がクエリ式に自動追加されます。実行されるクエリは、プランナー結果の parsedQuery 内に格納されています。