1873

How to host large files on Google-App-Engine

Question:

I would like my server that runs on Google App Engine to host large files such as audio scripts and images, is it possible to store them as a column in a database? If not, what mechanisms may I use?

Answer1:

You have two options:

<ol><li>

<a href="https://developers.google.com/appengine/docs/java/blobstore/" rel="nofollow">Blobstore</a> (currently available in Java, Python and Go).

</li> <li>

<a href="https://developers.google.com/appengine/docs/java/googlecloudstorageclient/" rel="nofollow">Google Cloud Storage</a> (currently available in Java, Python and PHP).

</li> </ol>

Answer2:

Blobstore and GCS are most likely what your are looking for.

Both services are not covered by the GAE SLAs however. If you need that kind of reliability promise you're stuck with the GAE datastore.

You can put your files in a BLOB property of a datastore entity and serve it from there. Datastore entities have a size limit of 1MB however.

To circumvent that, you must split and re-assemble your files using multiple entities. There again is a size limit to any GAE response which is 32MB.

Recommend

  • How can I get width and height values of the image without fetching all data in Google App Engine?
  • Open a file from urlfetch in GAE
  • BlobStore vs Cloud Storage for storing user uploaded images
  • How to join a thread in Linux kernel?
  • PHP download entire folder (recursive) via FTP
  • How does Android VpnService protect fd work?
  • Bucket of Staging files after deploying an app engine
  • How to retrieve the size of all my Google Cloud Storage bucket?
  • Re-training inception google cloud stuck at global step 0
  • Failed to start an instrument test from Firebase gcloud command line
  • Serving files from BlobStore in GAE
  • How to get or calculate size of Azure File/Share or Service
  • Where to save the local DB created for iphone app?
  • get passwords from chrome
  • Does the Azure table storage API cache results?
  • import scipy.sparse failed
  • During installation of Django, why do I keep getting ImportError: No module named django?
  • where do I find the xml.dom python package for the python-2.6.0-8.9.28 and I have a suse/x86_64 vers
  • Python pickle not one-to-one: different pickles give same object
  • Groovy: Unexpected token “:”
  • Replace value with Factor in r data.table
  • How to access EntityManager inside Entity class in EJB3
  • Repeat a vertical line on every page in Report Builder / SSRS
  • Deleting and Updating values from a cusrsor adapter
  • Cross-Platform Protobuf Serialization
  • Modifying destination and filename of gulp-svg-sprite
  • How to extract text from Word files using C#?
  • How to check if every primary key value is being referenced as foreign key in another table
  • Sending data from AppleScript to FileMaker records
  • 'TypeError' while using NSGA2 to solve Multi-objective prob. from pyopt-sparse in OpenMDAO
  • Upload files with Ajax and Jquery
  • Do I've to free mysql result after storing it?
  • How to format a variable of double type
  • A cron job substitute?
  • json Serialization in asp
  • NSLayoutConstraint that would pin a view to the bottom edge of a superview
  • coudnt use logback because of log4j
  • How does Linux kernel interrupt the application?
  • JaxB to read class hierarchy
  • How to get NHibernate ISession to cache entity not retrieved by primary key