cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From David McNelis <dmcne...@agentisenergy.com>
Subject Re: data modeling question
Date Wed, 30 Nov 2011 21:07:18 GMT
Personally I would create a separate column family for each basic area.
 For example

To organize my sectors and symbols I would create a column family where the
key is the sector name and the column names are the symbols for that
sector, i.e.:

sector : {
    key: sector name
    Column names: symbols
    Column values: null
}

Then I would have a column family for quotes where I have the key as the
symbol, the column name as the timestamp, the value as the quote:

quote : {
    key: symbol
    column names:  timeuuid
    column values:  quote at that time for that symbol
}

I would then use the same basic structure for your other column families,
ticks and fundamentals.  In general people tend to stay away from super
column families when possible for several reasons, but the most commonly
sited one is that when you get a SCF, the entire SCF must be deserialized
in order to access it.  So if you have a bunch of SCF, you're running a
risk of ending up needing to read in a lot more data than is necessary to
get the information you are looking for.

On Wed, Nov 30, 2011 at 2:57 PM, Deno Vichas <deno@syncopated.net> wrote:

>  hey all!
>
> i'm started my first project using cassandra and some data model
> questions.  i'm working on an app that fetches stock market data.  i need
> to keep track of when i fetch a set of data for any given stock in any
> sector;  here's what i think my model should look like;
>
> fetches : {
>     <sector> : {
>          quote : {
>             <timeuuid>: {
>                 <symbol> : ---
>             }
>         }
>         ticks : {
>             <timeuuid>: {
>                 <symbol> : ---
>             }
>         }
>         fundamentals : {
>             <timeuuid>: {
>                 <symbol> : ---
>             }
>         }
>     }
> }
>
>
> is there anything that less an ideal doing it this way versus creating
> separate CF per sector?    how do you create Super CF inside of Super CF
> via the CLI?
>
>
>
> thanks,
> deno
>
>
>


-- 
*David McNelis*
Lead Software Engineer
Agentis Energy
www.agentisenergy.com
c: 219.384.5143

*A Smart Grid technology company focused on helping consumers of energy
control an often under-managed resource.*

Mime
View raw message