Probably Oracle, with SQL Server as a close #2, and MySQL as a distant #5. PostgreSQL, SQL Lite, and others come in between.
It depends somewhat on the specific queries and data, of course. But again, it's Oracle and SQL Server.
Absolutely! Good coding is essential. In any language.
Yes. Thousands of terabytes. In most real world scenarios you'll be limited by the amount of cash
you'll spend on drives and on architecture, rather than by the amount of storage a computer can address.
I would choose SQL Server (2008, Enterprise Edition) because it's among the best, and, more importantly, because I have the most detailed knowledge of it, allowing me to build out competent architecture to support whatever I was trying to do.
Now some questions
The code you put into the database (ie, what you ask it to do) is far more important than whether you choose SQL Server or Oracle. Both are up to the job of running good code against hundreds of millions of rows. Both will easily choke on bad code with very small data sets. Unless you know the difference between an index scan and a bookmark lookup, it won't matter which RDBMS you choose.
- Are you building a transactional, or reporting system?
- How is your data structured?
- What types of queries will be asked, by how many people, at any given time?