2017-10-20 7 views
1

J'ai essayé Getstream.io mais ils ne vous permettent pas de gérer les données d'activités librement (par exemple vous n'êtes pas autorisé à récupérer plus d'un montant limité des activités en même temps, ni vous pouvez faire des requêtes spécifiques pour rechercher une activité donnée dont vous ne connaissez pas l'ID). Ils mentionnent que dans les documents, il est recommandé de: "Conserver une copie de l'activité stockée dans votre propre base de données, ce qui facilite la synchronisation des mises à jour et vous permet d'exécuter des rapports personnalisés et des requêtes de votre côté." En passant, je ne peux pas comprendre ce qu'ils veulent dire par «cela facilite la synchronisation des mises à jour». Cependant, je suppose qu'ils recommandent de garder votre propre base de données d'activités afin que vous puissiez récupérer les identifiants d'activités dont vous avez besoin, puis les utiliser pour apporter des modifications aux données d'activités réelles sur leurs serveurs. Je trouve ça compliqué et j'aimerais savoir si je me débrouille bien.Gestion des données d'activités avec Getstream.io sans les avoir stockées dans votre base de données

Répondre

1

I Pensez que vous pensez de cette façon correcte.

Nous recommandons généralement que les développeurs que les ID de magasin/références à des objets (messages/tweets, profils utilisateur, chanson/listes de lecture, peu importe) dans la société Stream pour plusieurs raisons:

  1. Si vous avez besoin de mettre à jour le objets dans l'activité, vous avez seulement besoin de le mettre à jour en un seul endroit (votre base de données), par opposition à tous les flux de cette activité
  2. Moins d'octets stockés dans Stream == ventilateurs plus rapides, moins de latence pour l'utilisateur final

Enregistrement des ID dans le flux et puis « enrichir » (hydratantes/désérialisation) les données de lecture peut sembler un peu en désordre, mais il fonctionne assez bien à l'échelle :)

Voici quelques autres documents sur le sujet: https://getstream.io/docs/#enrichment

Espérons que cela aide! Faites-moi savoir si je peux répondre à d'autres questions pour vous.

+0

Salut, merci pour votre réponse. Je ne parlais pas de l'enrichissement de l'acteur et de l'objet (je suis d'accord avec ça). Ce dont je parle est de stocker l'ensemble de l'enregistrement d'activité (y compris les clés étrangères à des données à enrichir) dans ma propre base de données, plus dans getstream. C'est ce que je trouve désordonné et j'aimerais mieux comprendre. –

+0

le problème que je suis confronté est, par exemple, comment je peux récupérer toutes les activités qui ont un objet spécifique –

+0

Je recommande d'envoyer Stream le strict minimum: id étranger de l'activité (comment vous l'identifier dans votre DB) et quelques autres choses mineures, comme l'identifiant de l'acteur et peut-être quelques champs pour le classement personnalisé ... Le reste devrait être enrichi à partir de votre magasin de données. De cette façon, vous n'avez pas besoin de garder Stream en synchronisation lorsque quelque chose de trivial change. – hannesvdvreken