Re: Experiences using C-ISAM
Posted in 1994
Andy Kent (akent@cix.compulink.co.uk) wrote: : > Hi, : > We are planning on using C-ISAM on a 40 gigabyte database, mainly : > for on-line retrieval purposes. Does anyone have any experience using : > C-ISAM on a similar size database. : Why on earth aren't you looking at a proper high-end RDBMS like : Informix-OnLine? : If you do, it stands to knock spots off the competition. OnLine has had : some very, *very* good reviews lately. Rely on C-ISAM for a 40GB d/b and : you're throwing yourself open to all sorts of performance, integrity, : reliability and fault-tolerance issues. I have to agree. It's tru that OnLine is overkill for many small/simple databases but a 40GB database sure doesn't sound very small. My own experience reveals that OnLine is much more consistent in performance across all the platforms I've used, relative to the speed of the disk system etc. The reason is that it bypasses the kernel-based filesystem and locking mechanisms, providing its own based on shared memory primitives and raw disk access. In contrast, C-ISAM and SE are vulnerable to how good/bad the OS services are. I've had very good results with SE on some platforms with good disk/filesystem implementations (like AIX with journaled file systems and the logical volume manager). On others (such as SCO) SE was a disappointment. The original post didn't mention any specifics of hardware or software. The traditional UNIX filesystems, as I understand them, are notoriously inefficient at handling huge files, because of the way the block addresses are stored. Very small files have all their block numbers stored in the inode. Bigger files require indirection--the inode contains the address of a block which in turn contains the block numbers. Huge files require double and even triple indirection, which can mean many disk accesses to read a single block from the file. I'm not sure if modern UNIX systems still use this technique. : Particularly worrying is that you say "C-ISAM" and not even : "Informix-SE", ie. the C-ISAM - based SQL engine. C-ISAM can do everything SE can do, albeit with more difficulty. There probably exist data storage problems where SQL access is unnecessary or undesirable. : akent@cix.compulink.co.uk (Andy Kent) : ------------------------------------- -- Jeffrey Sturm