管理インデックスを一覧表示する

Datastore プロジェクト内のインデックスを一覧表示する

コードサンプル

C#

Datastore モードのクライアント ライブラリをインストールして使用する方法については、Datastore モードのクライアント ライブラリをご覧ください。 詳細については、Datastore モードの C# API のリファレンス ドキュメントをご覧ください。

Datastore モードへの認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証を設定するをご覧ください。


using Google.Cloud.Datastore.Admin.V1;
using System;
using System.Collections.Generic;

public class ListIndexesSample
{
    public IEnumerable<Google.Cloud.Datastore.Admin.V1.Index> ListIndexes(string projectId = "your-project-id")
    {
        // Create client
        DatastoreAdminClient datastoreAdminClient = DatastoreAdminClient.Create();

        // Initialize request argument(s)
        ListIndexesRequest listIndexesRequest = new ListIndexesRequest
        {
            ProjectId = projectId
        };

        var response = datastoreAdminClient.ListIndexes(listIndexesRequest);

        foreach (var index in response)
        {
            Console.WriteLine($"Index Id: {index.IndexId}");
            Console.WriteLine($"Kind: {index.Kind}");

            Console.WriteLine("Properties:");
            foreach (var property in index.Properties)
            {
                Console.WriteLine($"Property: {property.Name}");
                Console.WriteLine($"Direction: {property.Direction}");
            }
        }

        return response;
    }
}

Go

Datastore モードのクライアント ライブラリをインストールして使用する方法については、Datastore モードのクライアント ライブラリをご覧ください。 詳細については、Datastore モードの Go API のリファレンス ドキュメントをご覧ください。

Datastore モードへの認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証を設定するをご覧ください。

import (
	"context"
	"fmt"
	"io"

	admin "cloud.google.com/go/datastore/admin/apiv1"
	"cloud.google.com/go/datastore/admin/apiv1/adminpb"
	"google.golang.org/api/iterator"
)

// indexList lists the indexes.
func indexList(w io.Writer, projectID string) ([]*adminpb.Index, error) {
	// projectID := "my-project-id"
	ctx := context.Background()
	client, err := admin.NewDatastoreAdminClient(ctx)
	if err != nil {
		return nil, fmt.Errorf("admin.NewDatastoreAdminClient: %w", err)
	}
	defer client.Close()

	req := &adminpb.ListIndexesRequest{
		ProjectId: projectID,
	}
	it := client.ListIndexes(ctx, req)
	var indices []*adminpb.Index
	for {
		index, err := it.Next()
		if err == iterator.Done {
			break
		}
		if err != nil {
			return nil, fmt.Errorf("ListIndexes: %w", err)
		}
		indices = append(indices, index)
		fmt.Fprintf(w, "Got index: %v\n", index.IndexId)
	}

	fmt.Fprintf(w, "Got lists of indexes\n")
	return indices, nil
}

Node.js

Datastore モードのクライアント ライブラリをインストールして使用する方法については、Datastore モードのクライアント ライブラリをご覧ください。 詳細については、Datastore モードの Node.js API のリファレンス ドキュメントをご覧ください。

Datastore モードへの認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証を設定するをご覧ください。

const {Datastore} = require('@google-cloud/datastore');
const datastore = new Datastore();

async function listIndexes() {
  const [indexes] = await datastore.getIndexes();

  console.log(`${indexes.length} indexes returned.`);

  // Each returned Index object includes metadata about the index.
  const [firstIndex] = indexes;
  console.log('Properties:', firstIndex.metadata.properties);

  // You may also get Index references as a readable object stream.
  datastore
    .getIndexesStream()
    .on('data', index => {
      console.log('Properties:', index.metadata.properties);
    })
    .on('end', () => {
      // All matching Index objects have been returned.
    });
}

listIndexes();

Python

Datastore モードのクライアント ライブラリをインストールして使用する方法については、Datastore モードのクライアント ライブラリをご覧ください。 詳細については、Datastore モードの Python API のリファレンス ドキュメントをご覧ください。

Datastore モードへの認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証を設定するをご覧ください。

def list_indexes(project_id):
    """Lists the indexes."""
    # project_id := "my-project-id"
    client = DatastoreAdminClient()

    indexes = []
    for index in client.list_indexes({"project_id": project_id}):
        indexes.append(index)
        print("Got index: %v\n", index.index_id)

    print("Got list of indexes\n")
    return indexes

Ruby

Datastore モードのクライアント ライブラリをインストールして使用する方法については、Datastore モードのクライアント ライブラリをご覧ください。 詳細については、Datastore モードの Ruby API のリファレンス ドキュメントをご覧ください。

Datastore モードへの認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証を設定するをご覧ください。

# project_id = "project-id"
indexes = client.list_indexes(project_id: project_id).map do |index|
  puts "Got index: #{index.index_id}"
  index
end

puts "Got list of indexes"

次のステップ

他の Google Cloud プロダクトに関連するコードサンプルの検索およびフィルタ検索を行うには、Google Cloud のサンプルをご覧ください。