Server distro, file buffering and filesystem
Hi,
This is my first post here, but I hope i nailed to post it in the correct subforum :)
While having a summer-break from the university I work as a developer at a local company. While most of the software is developed for Windows, I have gotten a little deal about setting up a linux server, which will host some simple internal services.
Its going to be a very basic server setup, the MOST important thing being that it is a very efficient file-server, on which the windows clients can access files.
It will also host some basic services (I'll write a bash script for pulling files to backup and sending to FTP each night, i have some indexing programs i wrote in C so they will also be easy to port, and it will run a single mysql server). Very basic stuff.
The "problem" is that there is about a million small shared files, which will be accessed often and randomly(as well as some large data files which will also be written to often). Access time has to be very fast, something which the old server doesn't handle really well(also it tends to not update the shared file table, which means that newly accessed files sometimes aren't available). Also, we have a problem with fragmentation when writing the large files. This is where my question about file systems comes in: Should I simply choose ext4, or is there a better alternative for this scenario?
About hardware and buffering, we're thinking of going with either 2*WD velociraptor(1 disk for redundancy) OR 2*SSD disks. The reason why I can't choose is because i'm not sure how effectively Samba buffers files. If we installed e.g. 32gb ram in the machine, would it be able to use this for buffering previously written/read files (and for buffering the creation of new files)? If so, there would be less reason to go with the SSD disks. The server will have an UPS so it will get time to flush the buffers in case of power failure.
My last question is about distribution. I'm a rather new linux user (Relatively. Compared to most of you I probably am, but i have done my share of C programming in VIM. Which means that I consistently press :wq in any other text editor heheh). I like simple distributions, like Ubuntu Server. Are there other distributions you can recommend me taking a look at before installing? The server will have to be extremely stable and secure(since its not running much external services and it will be behind a router, security is not a major concern). Maybe a plain debian, if that has advantages over Ubuntu (i like debian based installations because thats what i'm most used to, but if it will benefit me learning something new its not a problem)
Thank you for your time!
Daniel