Overall Satisfaction with Google Compute Engine
Compute Engine is a general purpose VM on top of which you can run basically any software you want, including Windows. They are priced on per-hour basis with discounts when you use it for a long time, and also with an option to run a VM for a short time with significant discount, but at a risk that it could be terminated at any time (Preemptible VM) – it's very useful for data processing since you can spawn tens of VMs for cheap and even if they are terminated you can just do it again later.
- Per-hour pricing with sustained use discounts -- you'll get a good discount if you run a VM for a long time.
- Always free usage limits -- you can run a small VM on it completely free of charge!
- Preemptible VM – huge discounts when you only want to run it for a short time, but it could be terminated if there's a demand.
- GPU support -- useful if you want to control your ML training jobs by yourself instead of using their Cloud ML APIs.
- Sustained use discounts could be combined with committed use discounts -- just give me cheaper price if I'm running a VM for a year
- We can spawn up almost any amount of "cores" at anytime, which is very helpful for data processing.
App Engine is somewhat similar, but we use it together with Compute Engine. App Engine is good for serving end requests to users -- it can scale automatically to any number of requests, but has it's own limitations. Compute Engine does not have any limitations. but you have to manage it by yourself and scale it manually as needed. I tried using Amazon's EC2 before the Compute Engine was released, but at that time their UI wasn't friendly, in the end Compute Engine provider much better integration with App Engine since their VMs can be really close to each other to reduce network delay. Google Cloud's UI is really good, you don't always want to manage your stuff using API.
Compute Engine provides VMs which you have to maintain by yourself, but you can run anything you want in there. Consider using App Engine for web sites, Container Engine for anything that needs to be often deployed and scaled automatically (if it doesn't fit into App Engine). On Compute Engine you can easily spawn up an instance with hundred GB of memory, do your stuff, and shut it down after couple of hours. You will only pay for what you used. But be careful -- there's some people who "forget" about running instances and then they are surprised with huge bills in the end of the month -- this is your responsibility to turn them off, since Google will do their part to make sure they are working flawlessly without any downtime.