J'ai une classe qui fonctionne comme un travail cron (toutes les 5 minutes environ) et qui produit un tableau multidimensionnel. Je veux ensuite accéder à ce tableau à partir d'une autre classe.
Est-il possible de simplement mettre () un md-array entier en tant qu’objet unique dans le datastore? Et puis pour obtenir () ce md-array dans une autre classe?
Si tel est le cas, cela revient-il à simplement insérer d’autres variables simples dans le magasin de données?
Vive toute aide
Réponses:
2 pour la réponse № 1Non, vous ne pouvez pas stocker directement un tableau multidimensionnel en tant que propriété d'une entité de magasin de données. Le type le plus proche serait un (Python uniquement, pas pour Java)ListProperty
, mais cela ne stockera qu’une seule dimension.
En fonction de ce que représentent les données de votre md-array, vous pouvez:
Sérialiser les valeurs dans un tableau d'octets, que vous stockez en tant que
Blob
(Limite de taille de 1 Mo)Aplatissez le tableau et stockez chaque dimension en tant que propriété individuelle
Créer une entité pour les lignes et des propriétés pour les colonnes (si 2 dimensions)
Pour tous les types de propriété de banque de données pris en charge, voir cette section de la documentation GAE