Hello I am seeking guidance for a project that requires the use of a database.

Obviously I will be programming in Java!
my question really is:

what is the best database that can be used with Java?
My program will be a desktop application which will use the database locally, so no need to make queries over the internet. The program will also be using a very large database, multiple tables and millions of rows, and it will(should) be making hundreds of queries in short periods of time(multi-threading).

I've tried to get information on databases like javaDB, H2, and Derby which are all written in pure java as far as I know, what I really want to know is which one would meet my requirements the best?(doesn't have to be in the list above)

Also since my application should have very high performance, what type of computer would be most suitable for the application?

Any other tips would also be greatly appreciated.

Thanks in advance! :)

it doesn't really matter.
what programming language you use doens't really decide what database you use.

as for your high performance question: that depends on the sort of application you're running, and whether it runs just once or in a loop.

just choose the one you're the most comfortable with.

My preference is H2, but JavaDB/Derby is a fine embedded database as well.

lol I know that, the statement about the language was just in reference to the fact that I was posting in the java forums :D

Well my program will be running on a loop and different threads will be accessing the same database at different moments. The reason why I asked about those databases is because I want something that works well with Java, my only previous experience with databases is mysql when I was doing php programming.