X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org Received: from localhost (unknown [200.46.204.2]) by svr1.postgresql.org (Postfix) with ESMTP id 8ED6CD1B4E9 for ; Thu, 16 Oct 2003 15:13:13 +0000 (GMT) Received: from svr1.postgresql.org ([200.46.204.71]) by localhost (neptune.hub.org [200.46.204.2]) (amavisd-new, port 10024) with ESMTP id 19543-04 for ; Thu, 16 Oct 2003 12:12:41 -0300 (ADT) Received: from news.hub.org (news.hub.org [200.46.204.72]) by svr1.postgresql.org (Postfix) with ESMTP id C0758D1B4EC for ; Thu, 16 Oct 2003 12:12:41 -0300 (ADT) Received: from news.hub.org (news.hub.org [200.46.204.72]) by news.hub.org (8.12.9/8.12.9) with ESMTP id h9GFCfNw024805 for ; Thu, 16 Oct 2003 15:12:41 GMT (envelope-from news@news.hub.org) Received: (from news@localhost) by news.hub.org (8.12.9/8.12.9/Submit) id h9GFA3oo024541 for pgsql-hackers@postgresql.org; Thu, 16 Oct 2003 15:10:03 GMT From: Christopher Browne X-Newsgroups: comp.databases.postgresql.hackers Subject: Re: Database Kernels and O_DIRECT Date: Thu, 16 Oct 2003 10:31:45 -0400 Organization: Hub.Org Networking Services Lines: 44 Message-ID: <60wub5uucu.fsf@dev6.int.libertyrms.info> References: <15890.1066232585@sss.pgh.pa.us> <3F8DB5D7.1060600@dunslane.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Complaints-To: usenet@news.hub.org User-Agent: Gnus/5.1003 (Gnus v5.10.3) XEmacs/21.4 (Reasonable Discussion, linux) Cancel-Lock: sha1:TdxA63j/rRXHHVeJWzGBcKW4LZI= To: pgsql-hackers@postgresql.org X-Virus-Scanned: by amavisd-new at postgresql.org X-Archive-Number: 200310/784 X-Sequence-Number: 45466 andrew@dunslane.net (Andrew Dunstan) writes: > Tom Lane wrote: >>James Rogers writes: >>>If we suddenly wanted to optimize Postgres for performance the way >>>Oracle does, we would be a lot more keen on the O_DIRECT approach. >>This isn't ever going to happen, for the simple reason that we don't >> have Oracle's manpower. >> > [snip - long and sensible elaboration of above statement] > > I have wondered (somewhat fruitlessly) for several years about the > possibilities of special purpose lightweight file systems that could > relax some of the assumptions and checks used in general purpose file > systems. Such a thing might provide most of the benefits of a > "database kernel" without imposing anything extra on the database > application layer. > > Just a thought - I have no resources to make any attack on such a project. There is an exactly relevant project for this, namely Hans Reiser's "ReiserFS," on Linux. http://www.namesys.com/whitepaper.html In Version 4, they will be exporting an API that allows userspace applications to control the use of transactional filesystem updates. If someone were to directly build a database on top of this, one might wind up with some sort of "ReiserSQL," which would be relatively analagous to the "database kernel" approach. Of course, the task would be large, and it would likely take _years_ for it to stabilize to the point of being much more than a "neat hack." The other neat approach that would be more relevant to PostgreSQL would be to create a filesystem that stored data in pure blocks, with pretty large block sizes, and low overhead for saving directory metadata. There isn't too terribly much interest in {a,o,m}time... -- output = reverse("ofni.smrytrebil" "@" "enworbbc") Christopher Browne (416) 646 3304 x124 (land)