Si haces esa pregunta, entonces sinceramente te recomiendo que no desarrolles nada. No es por hacer de menos tu esfuerzo y/o trabajo, pero si tu eres el único programador tu deberia de indicar a quien te contrato que hosting contratar, si lo estas haciendo para ti podrías iniciar con algun hosting básico y de ahi ir creciendo conforme se necesite, para esto necesitas hacerlo escalable.
De recomendarte X base de datos, tambien te preguntaría con cuantas sabes trabajar, lo que tambien implica cual va a ser el lenguaje del back end. Por lo general PHP o algun otro?
Si es PHP, pues podrías empezar con MySQL, quieres experimentar con otras bases de datos adelante, hoy en dia no es dificil migrar entre los módulos de php para Distintas bases de datos.
Si planeas utilizar Algun Framework en particular tambien tendrias que ver si ese Framework trabaja con alguna Base de datos en particular.
Sobre el Hosting:
En general depende del volumen de trafico que vallas a tener.
Por ejemplo si lo usuarios van a poder subir imágenes de sus productos, debes de calcular cuanto espacio va a necesitar, eso si las almacenas en disco, también esta la opcion de almacenar en la base de datos. Opciones hay muchas.
También hay hosting que te limitan el numero de procesos activos en X momento, y si en X momento el nivel de visitas de tus usuarios superan ese limite de procesos en ejecución, entonces tu pagina va a tener problemas.
Yo personalmente he realizado paginas similares y la verdad es que no requieren muchos recursos siempre y cuando programes eficientemente las llamadas al servidor.
Saludos.
puedes olvidar lo otro, en realidad lo que mas me interesa saber es que capacidad mas o menos necesitaria una pagina de ese tipo, es mas o menos como ebay