Yes. I know that. My intension is to do an aggregate query on value field (in json). Will that be possible if I store the entire json as String? I will have to parse it according to my need right?
Regards, Rajeswari From: Harikrishnan Pillai [mailto:hpil...@walmartlabs.com] Sent: 02 February 2017 10:08 To: user@cassandra.apache.org Subject: Re: Is it possible to have a column which can hold any data type (for inserting as json) You can use text type in Cassandra and store the full Json string . Sent from my iPhone On Feb 1, 2017, at 8:30 PM, Rajeswari Menon <rajeswar...@thinkpalm.com<mailto:rajeswar...@thinkpalm.com>> wrote: Yes. Is there any way to define value to accept any data type as the json value data may vary? Or is there any way to do the same without defining a schema? Regards, Rajeswari From: Benjamin Roth [mailto:benjamin.r...@jaumo.com] Sent: 01 February 2017 15:36 To: user@cassandra.apache.org<mailto:user@cassandra.apache.org> Subject: RE: Is it possible to have a column which can hold any data type (for inserting as json) Value is defined as text column and you try to insert a double. That's simply not allowed Am 01.02.2017 09:02 schrieb "Rajeswari Menon" <rajeswar...@thinkpalm.com<mailto:rajeswar...@thinkpalm.com>>: Given below is the sql query I executed. insert into data JSON'{ "id": 1, "address":"", "datatype":"DOUBLE", "name":"Longitude", "attributes":{ "ID":"1" }, "category":"REAL", "value":1.390692, "timestamp":1485923271718, "quality":"GOOD" }'; Regards, Rajeswari From: Benjamin Roth [mailto:benjamin.r...@jaumo.com<mailto:benjamin.r...@jaumo.com>] Sent: 01 February 2017 12:35 To: user@cassandra.apache.org<mailto:user@cassandra.apache.org> Subject: Re: Is it possible to have a column which can hold any data type (for inserting as json) You should post the whole CQL query you try to execute! Why don't you use a native JSON type for your JSON data? 2017-02-01 7:51 GMT+01:00 Rajeswari Menon <rajeswar...@thinkpalm.com<mailto:rajeswar...@thinkpalm.com>>: Hi, I have a json data as shown below. { "address":"127.0.0.1", "datatype":"DOUBLE", "name":"Longitude", "attributes":{ "Id":"1" }, "category":"REAL", "value":1.390692, "timestamp":1485923271718, "quality":"GOOD" } To store the above json to Cassandra, I defined a table as shown below create table data ( id int primary key, address text, datatype text, name text, attributes map < text, text >, category text, value text, "timestamp" timestamp, quality text ); When I try to insert the data as JSON I got the error : Error decoding JSON value for value: Expected a UTF-8 string, but got a Double: 1.390692. The message is clear that a double value cannot be inserted to text column. The real issue is that the value can be of any data type, so the schema cannot be predefined. Is there a way to create a column which can hold value of any data type. (I don't want to hold the entire json as string. My preferred way is to define a schema.) Regards, Rajeswari -- Benjamin Roth Prokurist Jaumo GmbH · www.jaumo.com<http://www.jaumo.com> Wehrstraße 46 · 73035 Göppingen · Germany Phone +49 7161 304880-6<tel:07161%203048806> · Fax +49 7161 304880-1<tel:07161%203048801> AG Ulm · HRB 731058 · Managing Director: Jens Kammerer