Collection Object - question
Ruslan Zasukhin
sunshine at public.kherson.ua
Thu Aug 3 19:17:20 CDT 2006
On 8/3/06 1:02 PM, "Philip Mötteli" <philip.moetteli at econophone.ch> wrote:
> Three tables NSSet, T1 and T2. NSSet has an M:M connection to T1 and
> another to T2. Instead of making this M:M connection, as a separate
> table, we have an attribute in NSSet, which is an array of OIDs.
> Searching should be
> 1. by looking at the content of this array itself and
> 2. by dereferencing the OIDs and looking at their content.
> E. g:
>
> NSSet {Rec_ID recID; unsigned int n; Array of OID members;} tableID = 1
> T1 {Rec_ID recID; char *name;} tableID = 2
> T1 {Rec_ID recID; char *name;} tableID = 3
>
> (1) SELECT OID
> FROM NSSet
> WHERE members[*] == anOID
>
> (2) SELECT OID
> FROM NSSet
> WHERE members[*].name == 'aName'
>
> "SELECT OID" always means a subset of the content of the members array.
>
> This array type of field should be able
>
> 1. ordered
> 2. allow multiple insertions of the same member (OID, or other type)
> 3. to address members randomly (not only serially)
Questions
* do you want to get really SQL searches as above, or you just use them as
example? I.e. Will be you happy, at least on start with API functions?
> 1. by looking at the content of this array itself and
* okay, this not looks as hard task
> 2. by dereferencing the OIDs and looking at their content.
* here we can have variants.
One of them, that you develop this mechanism self as external
algorithms. Best of all in C++. I do not see so far where this can be
penalty from tech/performance view of point
Of course it is more simple for you to have this builtin into
engine...but again, if this will be designed as some set of .cpp / .h files
then generally speaking it is not important who have made these files. Only
if you will point some problem/task which can be solved more efficient if
have access to deep levels of engine.
What you think ?
So my resume:
AT LEAST as first step in this direction,
we need add new field type:
ARRAY of numeric items with type T based on BLOB,
with ability to index this column vertically.
Right ?
--
Best regards,
Ruslan Zasukhin
VP Engineering and New Technology
Paradigma Software, Inc
Valentina - Joining Worlds of Information
http://www.paradigmasoft.com
[I feel the need: the need for speed]
More information about the Valentina
mailing list