move out db implement redis
change Error from interface to struct which implement error interface