Ich baue eine API, die rein die Speicherung von Daten behandelt.Wie werden gefilterte Daten gespeichert?
Lassen Sie uns innerhalb Redis vorstellen, ich habe die Schlüssel foo:123
20 Minuten lang in Erinnerung, die eine Eloquent Collection hält, da ich die Sammlung später statt Rückgabe des rohen json bin mit.
Als Beispiel die foo Sammlung könnte so aussehen
[
{
"name":"Doe",
"first_name":"John",
"age":42,
"favorite_color":"red"
},
{
"name":"Example",
"first_name":"Eric",
"age":37,
"favorite_color":"black"
},
....
]
Wie würde ich speichern eine neue Sammlung, die die gleiche Struktur aber Einträge hat schwarz als favorite_color
mit? Würde ich etwas wie foo:123:black
speichern müssen? Speichere ich die gesamte Sammlung und filtere sie manuell? Oder ist das bei der Verwendung von Redis komplett anders?
1) Ich meinte, dass ich alle Einträge aus der Datenbank holen soll, wo die favorite_color * schwarz * ist. 2) Die Frage ist, ob es in Ordnung ist, wenn so etwas als Schlüssel gespeichert wird => Wert oder das ist ein guter Punkt, um in Listen/Hashes/Sets zu graben. Und wenn ja, welches wäre das Beste für diesen Anwendungsfall. Aber danke bis jetzt! :) – Krenor
Ja, viel davon wird generisch und meinungsbasiert sein, weil keiner von uns genug über Ihre Anwendung wissen wird. Ich würde sagen, worüber man sich mit foo Gedanken machen müsste: 123: Schwarz ist Namenskonflikte (könnte irgendetwas anderes den Namen foo: 123: schwarz haben? Ist schwarz einzigartig genug?), Ansonsten liegt es an Ihnen, auszuwählen ein Name. Gib nicht zu viel Energie für die Voroptimierung aus, tue das, was sich natürlich anfühlt, und arbeite dann an der Optimierung, wenn zu viel Speicher, CPU, Zeit usw. verbraucht wird. – Devon