Re: PostgreSQL schemas for multi-tenant application

From: Andreas Hartmann (andrea..pache.org)
Date: Mon Jul 27 2009 - 12:50:26 EDT

  • Next message: Øyvind Harboe: "Re: PostgreSQL schemas for multi-tenant application"

    Hi Michael,

    Michael Gentry schrieb:
    > I think multiple DataDomains might be what you want, but I'm not 100%
    > certain everything you are trying to do.
    > Also, if you are just starting out, it might be worthwhile to use Cayenne
    > 3.0M6.

    thanks for your reply! Do you think a final release of Cayenne 3.0 will
    be available this year? Our application shall go live in January, and
    since I'm not familiar with the Cayenne project yet I'm not sure whether
    the milestones should be used in production.

    -- Andreas

    >
    > mrg
    >
    >
    > On Sun, Jul 26, 2009 at 10:51 AM, Andreas Hartmann <andrea..pache.org>wrote:
    >
    >> Andreas Hartmann schrieb:
    >>
    >>> Andreas Hartmann schrieb:
    >>>
    >>>> Hi Cayenne users & devs,
    >>>>
    >>>> I'm currently designing the DB + ORM layer for a multi-tenant
    >>>> application, using PostgreSQL 8.3 and Cayenne 2.0.4.
    >>>>
    >>>> After some research it looks like PostgreSQL schemas are a pretty decent
    >>>> way to achieve the separation of the tenant data on the DB level.
    >>>> Unfortunately, it looks like multiple schemas are not supported by Cayenne.
    >>>>
    >>> I just noticed that the DbEntity class has a schema property. Would the
    >>> following approach work?
    >>>
    >>> Create a DB entity for each table in each schema, e.g. users_schema1,
    >>> users_schema2 etc.
    >>>
    >>> To run a query:
    >>>
    >>> DbEntity entity = dataMap.getDbEntity("users_" + schemaName);
    >>> SelectQuery query = new SelectQuery(entity, expression);
    >>>
    >> It seems like this won't work because for each DB entity an object entity
    >> (i.e. class) would be required.
    >>
    >> But I found the section on multiple DataDomains in the documentation. I
    >> guess this is the way to go?
    >>
    >>
    >> -- Andreas
    >>
    >>
    >> --
    >> Andreas Hartmann, CTO
    >> BeCompany GmbH
    >> http://www.becompany.ch
    >> Tel.: +41 (0) 43 818 57 01
    >>
    >>
    >

    -- 
    Andreas Hartmann, CTO
    BeCompany GmbH
    http://www.becompany.ch
    Tel.: +41 (0) 43 818 57 01
    



    This archive was generated by hypermail 2.0.0 : Mon Jul 27 2009 - 12:55:39 EDT