Start by asking how you intend to query the data. That should drive the data model.
Is there existing app client code or an app layer that is already using the current schema, or are you intending to rewrite that as well. FWIW, you could place the numeric columns in a numeric map collection, and the string columns in a string map collection, but... it’s best to first step back and look at the big picture of what the data actually looks like as well as how you want to query it. -- Jack Krupansky From: Les Hartzman Sent: Friday, September 19, 2014 5:46 PM To: user@cassandra.apache.org Subject: Help with approach to remove RDBMS schema from code to move to C*? My company is using an RDBMS for storing time-series data. This application was developed before Cassandra and NoSQL. I'd like to move to C*, but ... The application supports data coming from multiple models of devices. Because there is enough variability in the data, the main table to hold the device data only has some core columns defined. The other columns are non-specific; a set of columns for numeric and a set for character. So for these non-specific columns, their use is defined in the code. The use of column 'numeric_1' might hold a millisecond time for one device and a fault code for another device. This appears to have been done to keep from modifying the schema whenever a new device was introduced. And they rolled their own db interface to support this mess. Now, we could just use C* like an RDBMS - defining CFs to mimic the tables. But this just pushes a bad design from one platform to another. Clearly there needs to be a code re-write. But what suggestions does anyone have on how to make this shift to C*? Would you just layout all of the columns represented by the different devices, naming them as they are used, and having jagged rows? Or is there some other way to approach this? Of course, the data miners already have scripts/methods for accessing the data from the RDBMS now in the user-unfriendly form it's in now. This would have to be addressed as well, but until I know how to store it, mining it gets ahead of things. Thanks. Les