我想存储数百万网页的信标Cassandra中,每个大致如下以下JSON:为网页信标数据模型
'{
"uri": "http://foo.com/bar/index.html",
"metric1": 74,
"metric2": 123,
"conntime": "2011-12-30T13:43:34",
"city": "CAMBRIDGE",
"state": "MA",
"ua": "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.121 Safari/535.2",
"plat": "Win32"
}'
凡字符串包含的URI,一些的指标,其次是地理/浏览器/平台数据。正如您可以想象的那样,URI/UA/Plats/Cities/States的数量将会更少,而每个指标的数值将会有很大的不同。
我读过this和this,但我的查询将看起来更像以下,这似乎不是一个非常适合柜台:
- 什么是中位数“metric1”每个( 'UA', '高原', '国家', '城市')?
- “conntime”“2011-12-30T13:43:34”中的'metric2'的第95个百分位是多少?
是否有可能(和明智的)非规范化我的数据是计数器?或者有更好的方法来模拟数据?
谢谢!
这是有道理的。如果我理解正确,计算中位数,数据看起来大致如下:'CF [“http://foo.com/bar/index.html”。“Mozilla/5.0(Windows NT 6.1)AppleWebKit/535.2 (KHTML,像Gecko)Chrome/15.0.874.121 Safari/535.2“] .metric1_74 [”http://foo.com/bar/index.html“.metric1] ++;'或者,由于大部分数据分析将离线完成(比如每小时一次),最好只存储原始的JSON和*只做* Map/Reduce? – septagram 2012-02-13 16:01:35