Home > Article > Backend Development > Using Google Cloud Datastore in Go: A Complete Guide
Using Google Cloud Datastore in Go Language: A Complete Guide
With the development of cloud computing and cloud services, more and more applications are turning to serverless architecture and cloud databases. Google Cloud Datastore is a NoSQL cloud database that stores and queries unstructured data quickly, securely, and easily scales applications. In this guide, we will explore how to use Google Cloud Datastore in Go language.
Before using Google Cloud Datastore, you first need to install the Google Cloud SDK. Google Cloud SDK is a set of command line tools that can be used to manage Google Cloud Platform services.
You can download the Google Cloud SDK suitable for your operating system on the official website (https://cloud.google.com/sdk/docs/install). Once the installation is complete, use the following command to verify that the Google Cloud SDK was installed correctly:
gcloud --version
Next, you need to authenticate with Google Cloud Platform. Run the following command in the command line:
gcloud auth login
This will open a browser and ask you to log in to Google Cloud. If this command executes successfully, then you have successfully logged in as your Google account and can start setting up the Cloud Datastore API.
In order to use Google Cloud Datastore, you need to enable it in the Google Cloud Console: Go to Google Cloud Console (https://console. cloud.google.com/), click APIs and Services, and then click Libraries. Search for "Datastore API" in the library and click "Enable".
go-cloud/datastore is a Go package that can interact with various data repositories, including Google Cloud Datastore. Enter the following command in the terminal to install:
go get github.com/google/go-cloud/datastore
Set the default project using Google Cloud SDK:
gcloud config set project [project-id]
Where, [project -id] is the project ID you set in the Google Cloud Console. Now, use the following snippet in your Go code to pass the path to your Google Cloud credentials file (e.g. "credentials.json") to the code accessing the Datastore:
// 设置Google Cloud凭据 creds, err := google.FindDefaultCredentials(context.Background(), datastore.ScopeDatastore) if err != nil { log.Fatalf("Problem getting default credentials: %v", err) } // 设置Datastore客户端 projID := "[project-id]" client, err := datastore.NewClient(context.Background(), projID, option.WithCredentialsFile("[path/to/creds.json]")) if err != nil { log.Fatalf("Failed to create client: %v", err) }
where, "[project-id] " is the project ID you set on the Google Cloud Console and "[path/to/creds.json]" is the path to your credentials file.
Now that the configuration has been completed, you can create and query entities.
Create entities:
// 构建一个实体对象 type User struct { ID string Name string Email string } // 执行存储操作 func CreateUser(user User) error { key := datastore.NameKey("User", user.ID, nil) _, err := client.Put(context.Background(), key, &user) if err != nil { return err } return nil }
Query entities:
// 构建查询对象 func GetUser(userID string) (User, error) { var user User key := datastore.NameKey("User", userID, nil) if err := client.Get(context.Background(), key, &user); err != nil { return User{}, err } return user, nil }
Google Cloud Datastore is a fast, scalable, secure NoSQL cloud database that can be used to store and query unstructured data. Using Google Cloud Datastore in Go is a breeze, just install the Google Cloud SDK, enable the Google Cloud Datastore API, and use the go-cloud/datastore package to interact. Additionally, you can use the power of Go to build applications and get performance and reliability guarantees from Google Cloud Datastore.
The above is the detailed content of Using Google Cloud Datastore in Go: A Complete Guide. For more information, please follow other related articles on the PHP Chinese website!