2009-10-06 24 views
9

Czytam na silniku Google App i myślę o używaniu go jako CDN dla projektu, nad którym pracuję. O ile mogę powiedzieć, istnieją dwa sposoby przechowywania danych. Mógłbym użyć datastore lub mógłbym umieścić pliki w katalogu.Przechowywanie danych w aplikacji Google App Engine

Zostałem wychowany w przekonaniu, że przechowywanie dużych danych binarnych w bazie danych jest złym pomysłem, ale według Google dane nie są RMDB, to po prostu działa jak jeden.

Więc moje jelito mówi mi, aby przesłać pliki do katalogu. Pomyślałem jednak, że najlepiej byłoby nakreślić tutaj opinię, zanim podejmiemy decyzję.

Czy ktoś użył GAE do takich rzeczy? A jeśli tak, to jaką metodę wybrałeś do przechowywania plików i dlaczego?

Odpowiedz

1

Obecnie Google Cloud Storage jest droga do dużych plików.

6

Nie można pisać do systemu plików w App Engine. Musisz użyć Datastore do przechowywania jakichkolwiek danych.

Należy pamiętać, że jeśli "duże pliki binarne" są rzeczywiście duże, to zostanie uruchomione ograniczenie do 1 MB dla wszystkich wywołań interfejsu API. API do przechowywania większych plamek znajduje się na mapie drogowej, ale nie wiadomo, kiedy zostanie wydany. Obecnie trzeba podzielić bloby większe niż 1 MB na wiele datastore.

+0

Właśnie zauważyłem limit 1mb. To rzuca klucz w prace. Muszę przechowywać pliki MP3, które zwykle mają od 3 do 6 MB. Więc wraca do deski kreślarskiej. – gargantuan

+1

Wkrótce pojawi się interfejs API Blob, który umożliwi przechowywanie i pobieranie znacznie większych plików. –

+0

Mam nadzieję, że Nick ma rację, ponieważ nawet jeśli nie przekroczysz limitu 1 MB, trafisz również w limit przydziału "data from DB". To jest bardziej podstępny problem, blob czy nie. – JasonSmith