We have our application hosted on Google app engine for Java and we have a requirement where we want to store the blood donor appreciation certificates (html
files) somewhere.
So, we can use either Google Blobstore or Google Cloud Storage. I know both of these solutions are feasible to do using gae for Java
However, the problem for us is to decide which one to use. What are the pros and cons of these two approaches?
We are a non profit and cannot pay a lot.
If you're starting a new project, I would go with Cloud Storage.
It seems that Google is pushing their Cloud Storage platform harder than their blobstore platform. For example, currently programmatically writing files to the blobstore is deprecated but is supported by Cloud Storage. I can't read the future, but I would bet that Google will be deprecating more and more of the blobstore API in favor of the Cloud Storage API, which will lead to headaches down the road.
UPDATE: Programatically writing to the blobstore is no longer supported, but it is fully supported on app engine. Further, you can use the blobstore API and still use Cloud Storage as a backend. At this point, it's clear that Cloud Storage will outlive the blobstore.
UPDATE 2017: Google's official recommendation is to now Cloud Storage rather than the blobstore. Called this one 4 years ahead.