Redis
 sql >> Datenbank >  >> NoSQL >> Redis

Ist Redis TimeSeries das richtige Tool, um Candlesticks in Aktienkursen zu erfassen?

  1. Es gibt keine Option, mehr als eine Aggregation an eine Downsample-Serie zu senden, da jeder Zeitstempel einen einzigen enthalten kann. Sie können Labels verwenden, um alle Serien auf einmal abzufragen.
  2. RedisTimeSeries wäre eine gute Lösung, da es Ihre Daten beim Einfügen heruntersampelt, sodass die Abfrage superschnell wäre. Es verwendet auch die Double-Delta-Komprimierung, was bedeutet, dass Ihre Daten weniger Speicher benötigen als einige andere Lösungen. Sie können die Aufbewahrung sogar verwenden, um die Quelldaten zurückzuziehen, wenn Sie sich nur um die Candlesticks kümmern.
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)