General
See also Firebase (mobile app platform built on top of GCP).
Main concept in GCP is the project. All operations in the GCP (except managing projects themselves) are performed in the context of a project. The project is also the primary method of grouping resources and many services have a 1-to-1 relationship with the project. For example, you cannot have two or more separate datastore service instances within a single project. (Instead, you must use namespaces to isolate data if required.)
Feature mapping
- By Google:
- 3rd party rather up-to-date side by side mapping: https://ilyas-it83.github.io/CloudComparer/
Platform
APIs Explorer: browse and try Google APIs in a browser (including authenticated requests)
e.g. https://developers.google.com/apis-explorer/#search/datastore/datastore/v1beta3/datastore.projects.runQuery
Tools
https://cloud.google.com/products/tools/
Client Libraries:
- https://cloud.google.com/apis/docs/cloud-client-libraries
- https://developers.google.com/api-client-library/
SDK:
CLI:
- https://cloud.google.com/sdk/gcloud/
- Cloud Shell https://cloud.google.com/shell/docs/quickstart (CLI in the GCP console via browser)
Other:
- Plugins for various development environments
- Mobile App for managing GCP services
Management
https://cloud.google.com/products/management/
- Stackdriver (Monitoring, logging, tracing, error reporting via notifications and dashboard, debugger)
- Deployment Manager (yaml template based repeatable deployments)
- Source Repositories https://cloud.google.com/source-repositories/
Networking
- https://cloud.google.com/products/networking/
- Cloud Virtual Network (VPC, VPN, Firewall, routes and firewall)
- Cloud Interconnect (“VPN tunneling” to carriers, on-prem systems and CDN providers)
- Cloud DNS
- Load Balancing (for HTTP(s), TCP/SSL and UDP traffic)
- Cloud CDN
Storage Options
https://cloud.google.com/products/storage/
Cloud DataStore
- Entities with properties
- Partitioned by namespace (and project id)
- Kind is logical grouping, like a collection or table (GQL uses kind in the FROM clause).
- Co-located with app engine region
TODO Example screenshots
Cloud Storage
- BLOB storage
- Encrypted
- Multi-regional, regional, nearline or coldline
Cloud Bigtable
- Wide-column db
- HBase API, Streaming (Cloud Dataflow, Spark, Storm), Batch Processing
Cloud SQL
- MySQL and PostgreSQL aaS
- Horizontal scaling only for read access
Cloud Spanner
- Horizontally scalable RDBMS
- ANSI 2011 SQL with extensions
Compute Options
https://cloud.google.com/products/compute/
Compute Engine
App Engine
- https://cloud.google.com/appengine/
- https://cloud.google.com/appengine/docs/
- https://cloud.google.com/appengine/pricing
Can have multiple versions of multiple services (AKA modules)
Container Engine
- https://cloud.google.com/container-engine/
- Kubernetes (k8s)
- Cluster management
TODO https://cloud.google.com/community/tutorials/developing-services-with-k8s
Complementary services:
- Cloud Container Builder
- Container Registry (private)
Cloud Functions
- https://cloud.google.com/functions/
- Javascript on Node.js
- https://cloud.google.com/functions/docs/writing/
- HTTP Functions (does not require an endpoint, directly callable)
- Background functions (invoked indirectly via a message on a Google Cloud Pub/Sub topic, or a change in a Google Cloud Storage bucket)
API Platform
- Cloud Endpoints: https://cloud.google.com/endpoints/
- Apigee API Platform: https://cloud.google.com/apigee-api-management/
Big Data
- Solutions: https://cloud.google.com/solutions/big-data/
- Products: https://cloud.google.com/products/big-data/
- BigQuery (Fully managed analytics data warehousing service)
- Cloud Pub/Sub (Service Bus)
- Cloud Dataflow (Stream Analytics and Batch processing)
- Cloud Dataproc (Managed Hadoop & Spark)
- Cloud Datalab (Jupyter notebook / tensorflow as a service, can deploy models to BigQuery)
- Data Studio (reporting/dashboard)
- Cloud Dataprep (clean up and transform any data from input files)
Data Transfer
Machine Learning
- Cloud Machine Learning https://cloud.google.com/ml-engine/
- Vision API
- Speech API
- Video Intelligence API
- Translate API
- Natural Language API
- Deep learning models with tensorflow: https://www.tensorflow.org/
Internet of Things
- Solutions: https://cloud.google.com/solutions/iot/
- Products:
- Cloud IoT Core: https://cloud.google.com/iot-core/