Path: utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!usc!ucsd!ucbvax!mtxinu!sybase!binky!tim From: tim@binky.sybase.com (Tim Wood) Newsgroups: comp.databases Subject: Re: DB engine embedded in the OS? Message-ID: <5645@sybase.sybase.com> Date: 21 Aug 89 18:00:39 GMT References: Sender: news@sybase.sybase.com Reply-To: tim@binky.UUCP (Tim Wood) Distribution: comp Organization: Sybase, Inc. Lines: 38 In article hargrove@harlie.sgi.com (Mark Hargrove) writes: > >The other group of vendors argue that [the DBMS need not be embedded in >the OS] -- except for >extreme cases, even heavy OLTP applications can be run with the DB engine >as a "normal" process, running on top of an OS. Their arguments are generally >based on the notion that MIPS (and to a lesser extent, disk I/O's) are >cheap -- and getting cheaper fast. Performance can always be increased by >throwing cheap MIPS and faster disks at the problem. [well, the argument >is more sophisticated than this, but you get the drift]. There's an implicit assumption in your point: that OS's must impose a considerable performance penalty on DBMS operation. That need not be the case. The challenge in designing an OS-hosted DBMS is to use only the most basic OS functions (such as user-buffered disk I/O and basic front-end/backend IPC services). "Just throw more cheap (memory|CPUs) at the problem," used to be the rejoinder of some RDBMS companies to complaints of slow performance and high memory usage, which were consequences of OS-process-per-user architectures. Today, client/server architectures have invalidated that argument. That is, added resources should not be used up by overhead such as OS scheduling and heavyweight process state, they should be used directly by the DBMS to run applications faster or keep more of the database memory resident. Client/server architectures that use only the OS primitives for I/O and IPC offer this cost/benefit relationship because they can make more efficient use of system resources. This organization offers maximum flexibility too, in that an OS-hosted DBMS is more likely to be portable across several platforms, whereas an OS-embedded DBMS is likely to be a proprietary solution supported only by a single vendor's OS and hardware offerings. That usually translates into extra $$, fewer application choices and a less open system. Sybase, Inc. / 6475 Christie Ave. / Emeryville, CA / 94608 415-596-3500 tim@sybase.com {pacbell,pyramid,sun,{uunet,ucbvax}!mtxinu}!sybase!tim Voluntary disclaimer: This message is solely my personal opinion. It is not a representation of Sybase, Inc. OK.