Load CSV file in Redis using Redis-cli on Windows

3.5k Views Asked by At

I went through questions like how to import a ".csv " data-file into the Redis database and decided to put a question here after lot of web searching.

I've an employee.csv file and looking to import that file using the redis-cli. I am using the Windows version 3.2.100 of Redis server.

employee.csv

SET "employee_1" "1, John Smith, 40, Male, John, 10000"
SET "employee_2" "2, Marco Polo, 43, Male, Marco, 10000"
....
SET "employee_1999999" "1999999, Tom Cruse, 50, Male, Tom, 10001"

I also followed url: https://gist.github.com/arsperger/6f246f21279edf3cd03ba2bee19daaef and https://www.alibabacloud.com/help/doc-detail/26357.htm, but cat will not support to the Windows version.

What can I try next?

1

There are 1 best solutions below

2
On BEST ANSWER

For instance when you use mentioned "Git Bash" you can do as follows (last step outputs the commands, but they may as well be piped to redis-cli:

Converting simple CSV to SET commands for Redis

The above comes from Git 2.17.1 for Windows. The final command-line is:

tail -n +2 test.csv | awk -F',' '{print "SET \""$1"\" \""$0"\""}' | redis-cli

Please note a couple of assumptions:

  • Strings in CSV are not enclosed in double quotes - if so you'd have to escape them when outputting "SET" commands
  • First line in CSV contains headers and values are separated with a comma.