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

comment importer un fichier de données .csv dans la base de données Redis

C'est une question très large, car nous ne savons pas quelle structure de données vous souhaitez avoir. Quelles requêtes attendez-vous, etc. Afin de résoudre votre question, vous avez besoin :

  1. Notez les requêtes attendues. Notez les partitions attendues. Ce fichier est-il votre jeu de données complet ?

  2. Notez votre structure de données. Cela dépendra fortement des réponses de p1.

  3. Choisissez le langage (de script) avec lequel vous êtes le plus à l'aise. Chargez votre fichier, traitez-le dans la bibliothèque CSV, mappez à votre structure de données à partir de p2, poussez vers Redis. Vous pouvez faire ce dernier avec la bibliothèque cliente ou avec redis-cli .

Si, par exemple, vous souhaitez placer vos données dans des ensembles triés où votre id est la clé de zset, l'horodatage est le score et lat,lon est la charge utile, vous pouvez faire ceci :

$ 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"