Zur Vereinfachung sagen wir, ich habe ein Array wie folgt arr[time]=[price,asset]
(Preise können für das gleiche Asset bis zu 12 mal pro Sekunde wiederholen).Amazon Redshift Zeitreihe
Ich möchte in der Lage sein, die Daten in verschiedenen Skalen anzuzeigen, z. 5 Jahre mit 1 Probe pro Stunde, 2,5 Jahre mit 1 Probe pro 0,5 Stunden sowie Zugang zu bestimmten Zecken zwischen den Punkten.
Wäre es wirtschaftlicher/bequemer, mehrere Tabellen in DynamoDB oder eine einzelne Datenbank in Redshift zu verwenden? Welches Schema/welche Tabellen verwende ich für Redshift?
EDIT: Ich habe Entitäten wie {'time':1505128343,'price':3.141708,'asset':1}
suchen bei der Suche zwischen Zeiträumen wie WHERE time>=1504118343 AND time<=1505128343
Ich möchte nicht unbedingt jeden einzelnen Preis für große Bereiche ausgeben (so stürzt der Client nicht ab), sondern würde stattdessen jeden nth ausgeben Preis.
In meiner Implementierung würde ich mehrere Tabellen für die verschiedenen Skalen haben so einmal die Reichweite groß genug ist, dass wir Rückfall, also wenn, wenn wir eine Reihe von Tabellen prices
haben, prices30s
, prices1h
, prices1day
etc die prices30s
Tabelle der Serie abgetastet hätte einmal pro 30 Sekunden.
Sorry, aber Ihre Anforderungen sind nicht sehr klar, so dass es schwierig ist, Ihre Frage zu beantworten. Können Sie eine Stichprobe der in den Tabellen gespeicherten Daten und eine Beispielabfrage anzeigen, die Sie ausführen möchten? Was meinst du mit "Daten in verschiedenen Maßstäben anzeigen" und "auf spezifische Ticks zwischen Punkten zugreifen"? Und was bedeutet 'arr [Zeit] = [Preis, Vermögen] '? –
Entschuldigung, wenn ich mich schlecht erklärt habe, habe ich den ursprünglichen Beitrag bearbeitet und ausgearbeitet. – Max0999
Anstatt Daten nach dem Zufallsprinzip zu erfassen, wäre es nicht besser, einen durchschnittlichen Preis für einen bestimmten Zeitraum anzugeben, wie den durchschnittlichen (oder maximalen) Stundenpreis, den durchschnittlichen (oder maximalen) Jahrespreis usw.? Data Warehouses wie Amazon Redshift können mit dieser Art von Berechnung recht einfach umgehen. –