Using Structured Data with Go

On this page of the Go Bookshelf tutorial, you choose a database for storing structured data. The Bookshelf sample app uses a structured data model for storing information about books. You can explore the sample by using one of three different backing databases: Google Cloud SQL, Google Cloud Datastore, or MongoDB.

This page is part of a multi-page tutorial. To start from the beginning and read the setup instructions, go to Go Bookshelf app.

To get started with the Bookshelf tutorial, choose one of the following options:

Database Why use this? Configuration
Run MongoDB on Google Compute Engine
Use MongoDB >
Choose this option if you are familiar with MongoDB or if you want to learn how to run your own database on Compute Engine.


  • Deploy a MongoDB cluster on virtual machines that you provision and control. Alternatively, you can use a managed service like mLab.
  • Take advantage of the MongoDB knowledge you have.
  • Get support from MongoDB's rapidly growing community.
Deploy and configure a MongoDB cluster.
Google Cloud Datastore
Managed NoSQL database
Use Cloud Datastore >
Choose this option if you want a zero-configuration, fully-managed, highly-scalable, non-relational database.


  • Automatically scales based on your application's users and traffic, so you don't have to worry about provisioning or load anticipation.
  • Query your data with SQL-like queries that support filtering and sorting.
No additional configuration needed.
Google Cloud SQL
Managed MySQL
Use Cloud SQL >
Choose this option if you're familiar with MySQL or if you are interested in a managed relational database.


  • Create and configure your databases. Cloud SQL handles all other management tasks such as replication and patch management.
  • Access your data in Cloud SQL databases using the standard, open source drivers, libraries and tools that you've already been using.
  • Use your favorite MySQL tools and apps because Cloud SQL is MySQL in the cloud.
Create a Cloud SQL instance and configure access.

Was this page helpful? Let us know how we did:

Send feedback about...