On 7/27/07, Randall R Schulz firstname.lastname@example.org wrote:
On Friday 27 July 2007 14:39, Greg Freemyer wrote:
On 7/27/07, Curt, WE7U email@example.com wrote:
On Fri, 27 Jul 2007, Greg Freemyer wrote:
A) create there own directory / partition / mount point in the root if there is going to be a lot of data. This is particularly true if it is gone to be a main function of the computer.
"A" above is not considered good practice, at least not from what I've seen.
/data, /GIS-info, /source-code-for-our-teams-mega-application etc.
However, one can create application-specific directories in /opt, and in fact the LSB spec requires it. I work on an open-source app that normally installs to /usr/local/* directories, including it's system-wide configs in /usr/local/share/<app-name>/*. In it's LSB form it installs to /opt/<app-name>/* instead.
So your saying that if an application is data intensive; lets say a GIS system (Geographic Information System), you would put a TB of data under /opt/GIS/data.
Maybe your right, but in "my experience" large datasets get put in the root.
If the data is locally derived it might go in /var or /usr/local or if extremely large may require special treatment in the application so it could be distributed over multiple directories and mass storage units (as, e.g., RDBMSes often do). If the data is a large read-only dataset (say, the topographic base maps in a GIS application), it may even remain on external media (DVDs or, someday soon, BlueRay or HD-DVD discs), though that usually has unacceptably slow transfer rates and high latencies.
But in the root?? No way!
Basically large datasets are almost always put on a dedicated partition / LV in my experience. And in turn those partitions are mounted at the root level.
I cannot say I think that's either common or a good idea. I've worked in very large-scale data processing shops that use Linux throughout (Amazon.com) and we never put anything application-specific in the root directory. In fact, management of hosts was stratified so that the infrastructure people owned the kernel and all the baseline OS files and directories. There is also monitoring and provisioning infrastructure common to all hosts. Then there was a whole elaborate system for deploying application packages based on host classes and those application-specific packages had their own base directory.
Admittedly, Amazon.com is an outlier. They have huge scaling requirements and a staggering range of disparate applications (many not even customer-facing). It still boggles my mind that it works at all...
FYI: Much of my experience with this class of app is UNIX, not Linux, so maybe the Linux philosophy is different, but I really have a hard time imagining large datasets mounted anywhere but the root.
You need to expand your imagination. The root directory on a production system should probably never be touched at all. It's best left to the base operating system itself.
I'm talking about creating a mount point in the root directory and then mounting your big data partition there. I really don't see why admins would dislike /data or whatever as the mount point.
Last time I worked with a Oracle database, I'm sure thats what they were doing. (I did not do the install, so maybe the person who did overrode the defaults.)
Seriously, if you have a TB of data your mounting as a single partition from a SAN as a local drive, where are you saying to mount it. The idea of a mount point in /usr/local/data for instance just seems crazy to me, especially if /usr is itself a separate filesystem.
Another example is your building your box exclusively to be a samba fileserver. Once again, I think the typical thing to do would be create a big raid 5 (or 10) based volume, mount it at the root level and then share if via samba.
Strange. Your disturbed I would mount big dedicated data partitions at the root level, and I'm disturbed its not standard practice. :(