Redis
 sql >> Base de données >  >> NoSQL >> Redis

Redis TimeSeries est-il le bon outil pour capturer les chandeliers dans les cours boursiers ?

  1. Il n'est pas possible d'envoyer plus d'une agrégation à une série sous-échantillonnée, car chaque horodatage peut en contenir un seul. Vous pouvez utiliser des libellés pour interroger toutes les séries à la fois.
  2. RedisTimeSeries serait une bonne solution car il sous-échantillonnerait vos données lors de l'insertion, donc l'interrogation serait super rapide. Il utilise également la compression double delta, ce qui signifie que vos données nécessiteront moins de mémoire que certaines autres solutions. Vous pouvez même utiliser la rétention pour retirer les données sources si vous ne vous souciez que des chandeliers.
r.create('XYZ_PRICES', retention_msecs=300000, labels={'name':'xyz', 'type:src'})
 
r.create(opeing_price, labels={'name':'xyz', 'type:opening'})
r.create(closing_price, labels={'name':'xyz', 'type:closing'})
r.create(highest_price, labels={'name':'xyz', 'type:highest'})
r.create(lowest_price, labels={'name':'xyz', 'type:lowest'})

r.createrule(src, 'opening_price', 'first', bucket_size_msec=60000)
r.createrule(src, 'closing_price', 'last', bucket_size_msec=60000)
r.createrule(src, 'lowest_price', 'min', bucket_size_msec=60000)
r.createrule(src, 'highest_price', 'max', bucket_size_msec=60000)