I am looking for a database that could handle (create an index on a column in a reasonable time and provide results for select queries in less than 3 sec) more than
Most databases can handle this, it's about what you are going to do with this data and how you do it. Lots of RAM will help.
I would start with PostgreSQL, it's for free and has no limits on RAM (unlike SQL Server Express) and no potential problems with licences (too many processors, etc.). But it's also my work :)