X-Original-To: pgsql-sql-postgresql.org@localhost.postgresql.org Received: from localhost (av.hub.org [200.46.204.144]) by svr1.postgresql.org (Postfix) with ESMTP id 48F29DA80B for ; Thu, 3 Nov 2005 14:03:04 -0400 (AST) Received: from svr1.postgresql.org ([200.46.204.71]) by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024) with ESMTP id 11712-01 for ; Thu, 3 Nov 2005 18:02:54 +0000 (GMT) Received: from hotmail.com (bay104-dav11.bay104.hotmail.com [65.54.175.83]) by svr1.postgresql.org (Postfix) with ESMTP id 6393ED966F for ; Thu, 3 Nov 2005 13:58:30 -0400 (AST) Received: from mail pickup service by hotmail.com with Microsoft SMTPSVC; Thu, 3 Nov 2005 09:58:30 -0800 Message-ID: Received: from 69.238.231.50 by BAY104-DAV11.phx.gbl with DAV; Thu, 03 Nov 2005 17:58:30 +0000 X-Originating-IP: [69.238.231.50] X-Originating-Email: [zackchandler@hotmail.com] X-Sender: zackchandler@hotmail.com From: "zackchandler" To: Subject: Design question: Scalability and tens of thousands of tables? Date: Thu, 3 Nov 2005 09:58:29 -0800 Message-ID: <002501c5e0a0$3289ad80$0200a8c0@aaaadp.local> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook, Build 10.0.6626 Importance: Normal X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180 X-OriginalArrivalTime: 03 Nov 2005 17:58:30.0579 (UTC) FILETIME=[330CC030:01C5E0A0] X-Virus-Scanned: by amavisd-new at hub.org X-Spam-Status: No, score=1.919 required=5 tests=[DNS_FROM_RFC_ABUSE=0.479, DNS_FROM_RFC_POST=1.44, MSGID_FROM_MTA_HEADER=0] X-Spam-Score: 1.919 X-Spam-Level: * X-Archive-Number: 200511/47 X-Sequence-Number: 23299 Hi everybody. Quick question: I'm designing an application that will allow users to create custom = objects on the application level. A custom object can have zero or more = attributes. Attributes can be one of 5-10 types (ex. String, Number, List, Date, = Time, Currency, etc...). This will allow users to track anything exactly as = they want. My first thought on how to structure this is to make a custom = table in the db for each custom object. The attributes would map to fields = and everything would work just dandy. The problem is I am very concerned about scalability with having a = different table created for each custom object. I want to design to site to = handle tens of thousands of users. If each user has 3-5 custom objects the database would have to handle tens of thousands of tables. So it would appear that this is a broken solution and will not scale. = Has anyone designed a similar system or have ideas to share? Thanks, Zack