Get startedGet started for free

Using Google Cloud Databases

1. Using Google Cloud Databases

Google Cloud's database services primarily serve two purposes. The first is to support online application data storage and retrieval, and the second is to provide an analytics database optimized for data mining and trend analysis. Google Cloud offers relational and non-relational database options for applications. SQL-based relational databases store and provide access to data points that are related to one another. This includes built-in mechanisms to ensure the consistency and integrity of your database structure. A non-relational database, sometimes known as a NoSQL database, is less structured in format and prioritizes flexibility over built-in data integrity enforcement. This means your application needs to take on the task of ensuring data quality. Let’s explore five Google Cloud database services– Bigtable, Firestore, Spanner, Cloud SQL, and BigQuery. Bigtable, Google Cloud’s NoSQL database service, is designed to handle massive workloads at consistent low latency and high throughput. Bigtable powers many Google services like Search, Analytics, Maps, and Gmail, and is an excellent option for operational and analytical applications. When choosing which storage option to use, consider Bigtable for storing and accessing more than one terabyte of semi-structured or structured data; high throughput or rapidly changing data; data transactions where strong relational semantics are not required; time-series data or data with natural semantic ordering; running asynchronous batch or synchronous real-time processing on big data; or running machine learning algorithms on the data. Bigtable can interact with other Google Cloud services and third-party clients. APIs let you read and write Bigtable data by using data service layers like Managed VMs, HBase REST Server, or Java Servers with the HBase client. This data is commonly used by applications, dashboards, and data services. Bigtable supports both streaming and batch data ingestion. For real-time data, you can use popular frameworks like Dataflow Streaming Engine, Spark Streaming, or Storm, and for batch processing, Hadoop MapReduce, Dataflow, and Spark are options. It’s worth noting that often processed data, whether summarized or newly calculated, is written back to Bigtable or another database for further use. Now let’s switch your focus to Firestore, which is a flexible, scalable non-relational database commonly used for mobile, web, and server development. Firestore can process NoSQL queries to retrieve a single or multiple documents within a collection that matches your criteria. Queries can be filtered and sorted in Firestore, and are indexed by default, so query performance is dependent on the result set instead of the dataset. Firestore syncs data across all connected devices, but it’s also optimized for simple, one-time queries. It uses data caching to enable an application to write, read, monitor, and query data even while a device is offline. Next up is Spanner, which is a SQL-based, fully managed, scalable relational database. It’s the same database that powers Google’s mission-critical applications and services. Spanner has high availability, is globally consistent, and is capable of performing tens of thousands of read/write operations per second. We’ll discuss the other relational database, Cloud SQL, shortly. And finally, there is BigQuery, which is Google Cloud’s fully managed data warehouse offering. It provides a data warehousing backend for modern business intelligence solutions, and is used to guide management decisions. Because it’s fully managed, BigQuery manages the technical aspects of storing structured data, such as compression, encryption, replication, performance tuning, and scaling. With BigQuery, you can integrate, transform, analyze, and visualize your data by using Google and third-party tools. BigQuery excels at storing and analyzing massive amounts of event and sensor data generated by IoT (Internet of Things) applications. Its optimization for 'write-once, read-many' data patterns makes it ideal for handling this specific type of workload. And it even separates storage and compute costs so you only pay for query execution, not for data at rest.

2. Let's practice!

Create Your Free Account

or

By continuing, you accept our Terms of Use, our Privacy Policy and that your data is stored in the USA.