On 05.01.2009 13:18 Uhr, Mikko Ohtamaa wrote:
Hi,

We are facing a problem where we need to store 270 fields per item. The
fields are laboratory measurements of a patient - 40 measurement values for
7 timepoint. The fields need to be accessed per timepoint, per measurement
and all fields for one patient once. There will be over 10000 patients,
distributed under different hospital items (tree-like, for permission
reasons). Data is not accessed for two patients at once, so we don't need to
scale the catalog.

So I am curious about how we make Plone scale well for this scenario.

- The overhead of a field in AT schema? Should we use normal storage backend
(Python object value) or can we compress or field values into list/dict to
make it faster using a custom storage backend.

- The wake up overhead of AT object? Should we distribute our fields to
several ZODB objects e.g. per timepoint, or just stick all values to one
ZODB objects. All fields per patient are needed on some views once.

- One big Zope objects vs. few smaller Zope objects?

Don't try to implement using one schema with 270 fields - that would be insane and broken-by-design. Do you really need schema support for rendering input forms? Keep in mind how a user would/should use a form with 270 fields. I would implement a "person" objekt as a folderish. Implement a Timepoint object (with the 40 fields) and stick them under with the related "persom" folder/object. If you are smart, drop Archetypes and implement something more lightweight on top of Z3 schemas and formlib.

-aj

begin:vcard
fn:Andreas Jung
n:Jung;Andreas
org:ZOPYX Ltd. & Co. KG
adr;quoted-printable:;;Charlottenstr. 37/1;T=C3=BCbingen;;72070;Germany
email;internet:[email protected]
title:CEO
tel;work:+49-7071-793376
tel;fax:+49-7071-7936840
tel;home:+49-7071-793257
x-mozilla-html:FALSE
url:www.zopyx.com
version:2.1
end:vcard

_______________________________________________
Product-Developers mailing list
[email protected]
http://lists.plone.org/mailman/listinfo/product-developers

Reply via email to