Load CSV file in Redis using Redis-cli on Windows

3.6k 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
Tomasz Poradowski 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.