Link to home
Start Free TrialLog in
Avatar of Choklander
Choklander

asked on

Database on Memory

I am trying to make a server database.

Lets say I have a database with 2 million records. Each record has 22 columns and all the information inside the database is numeric. Only numbers.

The database is 300mb. I have 20 thousand records per table.

I heard that you can load databases on memory.

I put this database on a server. If I load it on the memory how many transactions can I have per second? Will the hard drive still play an important role? And what role will the processor play? Lets say I want the database to handle 1 000 read / write per second?

What hard drive do I need? VelociRaptor?

Can PostgreSQL handle it or will I need MySQL?
ASKER CERTIFIED SOLUTION
Avatar of dportas
dportas

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
RAMDrives have been around for a long time and while they are considerably faster 30 - 60X than the electromechanical drives, like memory when the power drops so does your database stored on the ramdrive. So you have to copy the db from a hard drive to memory and before power drops you have to have the db back on a HDD.

Actually the HDD speed doesn't really matter except when interfacing the ramdrive to it but I do like Raptors.

Any database should handle it.
Avatar of dportas
dportas

jmoss111, I guess you are referring to virtual drives in on-board RAM, rather than solid state drives. Solid state drives use non-volatile flash RAM. Data isn't lost when you lose power so they don't require spinning disk drives at all. But at the throughput that Choklander is talking about solid state drives would probably be a waste at today's prices. It would be better to invest in other hardware.
dportas, Thats exactly what I was talking about because that is what the question is about.  I understand solid state drives, one of my clients builds them. I agree that SSD's aren't cost effective and I don't think that speed is their key selling point but rather ability to withstand shock and lower electrical consumption.

I wouldn't recommend using ramdrives... too many points of possible failure
Avatar of Choklander

ASKER

Well I read about SSD drives. What i do not like is the write speed. As I understand the smaller the transaction the slower it writes it. It needs larger pieces of data in order for the write speed to be average.

My confusion comes from the fact that I am new to this.

I was asking about physical (or virtual?) memory? But as I gather databases store certain parts of them on the memory anyhow and when needed access them?

I sow a comparison between Raptor, VelociRaptor and 32GB MemoRight GT SSD.
<a href="http://www.xlr8yourmac.com/IDE/SSD_vs_VelociRaptor_vs_Raptor/SSD_vs_VelociRaptor_Raptor.html">32GB MemorRight GT SSD vs VelociRaptor vs Raptor</a>

Now from:
QuickBench: Random Writes
QuickBench: Random Reads

We can clearly see that the Raptor is actually outperforming both on small portions of data (4 - 8kb).

As my database is small and the fact that each record can be no more than 60 bytes I think that I can safely say I just need 1 Raptor.

WD Raptor 74 GB Internal hard drive - 150 MBps - 10000 rpm.

That hard drive can even hold some 246 databases like mine.

Can't find a smaller.

And one last thing if someone of you can tell me. What is the deal with MySQL? I read that it was under the GPL. This means that if I want to use it for free I need to provide my source code of the application.

<a href="http://blog.marcocantu.com/blog/mysql_interbase_firebird.html">MySQL GPL license project></a>
Sorry for the html tags. I inserted one too many ">".
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial