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

wie man eine .csv-Datendatei in die Redis-Datenbank importiert

Dies ist eine sehr allgemeine Frage, da wir nicht wissen, welche Datenstruktur Sie haben möchten. Welche Abfragen erwarten Sie usw. Um Ihre Frage zu lösen, benötigen Sie:

  1. Notieren Sie erwartete Abfragen. Notieren Sie die erwarteten Partitionen. Ist diese Datei Ihr vollständiger Datensatz?

  2. Schreiben Sie Ihre Datenstruktur auf. Es wird stark von den Antworten von p1 abhängen.

  3. Wählen Sie eine beliebige (Skript-)Sprache, mit der Sie sich am wohlsten fühlen. Laden Sie Ihre Datei, verarbeiten Sie sie in der CSV-Bibliothek, ordnen Sie sie Ihrer Datenstruktur von p2 zu und übertragen Sie sie auf Redis. Letzteres können Sie mit der Client-Bibliothek oder mit redis-cli tun .

Wenn Sie beispielsweise Ihre Daten in sortierten Sätzen ablegen möchten, in denen Ihre id ist zset's key, timestamp ist score und lat,lon die Nutzlast ist, können Sie Folgendes tun:

$ cat data.csv
id1,1528961481,45.0,45.0
id1,1528961482,45.1,45.1
id2,1528961483,50.0,50.0
id2,1528961484,50.1,50.0

cat data.csv | awk -F "," '{print $1" "$2" "$3" "$4}' | xargs -n4 sh -c 'redis-cli -p 6370 zadd $1 $2 "$3,$4"' sh

127.0.0.1:6370> zrange id2 0 -1
1) "50.0,50.0"
2) "50.1,50.0"