web-dev-qa-db-fra.com

Google Blobstore contre Google Cloud Storage

Nous avons notre application hébergée sur le moteur d'application Google pour Java et nous avons une exigence où nous voulons stocker les certificats d'appréciation des donneurs de sang (html fichiers) quelque part.

Nous pouvons donc utiliser Google Blobstore ou Google Cloud Storage. Je sais que ces deux solutions sont réalisables en utilisant gae pour Java

Cependant, le problème pour nous est de décider lequel utiliser. Quels sont les avantages et les inconvénients de ces deux approches?

Nous sommes à but non lucratif et ne pouvons pas payer beaucoup.

52
Vik

Mieux vaut utiliser le Blobstore. Le service dispose de 5 Go d'espace gratuit (en mars 2012). Le stockage cloud est un service payant. Le blobstore App Engine est comme Amazon S3, mais moins flexible. Il a une API basée sur HTTP et Java/Python (voir http://code.google.com/appengine/docs/Java) /blobstore/overview.html ).

14
Svetlin Nakov

Si vous démarrez un nouveau projet, j'irais avec Cloud Storage.

Il semble que Google pousse sa plate-forme de stockage cloud plus fort que sa plate-forme blobstore. Par exemple, l'écriture par programme de fichiers dans le blobstore est déconseillée mais est prise en charge par Cloud Storage . Je ne peux pas lire l'avenir, mais je parierais que Google dépréciera de plus en plus l'API blobstore au profit de l'API Cloud Storage, ce qui entraînera des maux de tête sur la route.

[~ # ~] mise à jour [~ # ~] : l'écriture par programme dans le blobstore n'est plus prise en charge, mais elle est entièrement prise en charge sur le moteur d'application. De plus, vous pouvez utiliser l'API blobstore et toujours utiliser Cloud Storage comme backend. À ce stade, il est clair que Cloud Storage survivra au blobstore.

MISE À JOUR 2017 : Google recommandation officielle est désormais Cloud Storage plutôt que le blobstore. Appelé celui-ci 4 ans à l'avance.

44
speedplane

Tout d'abord, je dirais que si vos fichiers HTML sont petits (ou pourraient l'être via la compression gzip), stockez-les simplement en tant que BlobProperty dans la banque de données et ajoutez des propriétés de métadonnées afin de pouvoir les récupérer de manière appropriée plus tard.

Si ce n'est pas une option, envisagez peut-être la croissance future de votre application. Les deux grandes choses que Cloud Storage a sur le Blobstore sont 1) l'accessibilité par des tiers et 2) aucune restriction de taille de fichier.

  • Les autres services devront-ils également lire ou écrire ces fichiers? Utilisez ensuite Cloud Storage.
  • Vos fichiers dépasseront-ils éventuellement 50 Mo? Ou leur taille pourrait-elle être inconnue? Utilisez ensuite Cloud Storage.

Si, cependant, vous SAVEZ que ces deux choses n'auront jamais besoin d'être traitées pour votre application, alors restez avec Blobstore.

12
Dave