h**o 发帖数: 548 | 1 大概几十台servers, 每台server每天分析几十GB公司自己格式的web log.
目前是用c 语言分析,结果存成每日的xml.
然后有一台management server, 每天从 这几十台servers 收集 xml结果,
再用 perl parse 这些 xml 并和已有的历史文件(也是xml)合并生成 一个新的历史
文件。
记录包括daily,weekly, monthly的各种信息。
现在问题是这个xml文件太大不好parse。 想问能否用sql从新设计?
statistics 包括:
userID_$attr1_$attr2_$attr3_$attr4,
url_$attr1_$attr2_$attr3
sessionID_$attr3_$attr4
...
其中
$attrX is variable with a value. e.g. $attr3 is 手机类型 whose value can be
userID, url, sessionID are long lists of str... 阅读全帖 |
|
h**o 发帖数: 548 | 2 谢谢大家。
对,瓶颈不在"分析web log."而在“把当天的xml和已有的历史文件(也是xml)
累积(是merge,不是简单的加)生成一个新的历史文件xml”这步。
前一年还好,现在客户多了,访问的量大了。累积量也大了,
历史文件 里 userID, url等 好多。没法parse了。
xml设计不是我做的。但现在要我重新设计。
客户需求类似于OLAP。
举个例子: userID_$attr1_$attr2_$attr3_$attr4:
$attr1 包括 上传|下传
$attr2 包括 各种 各种手机电脑类型 包括 爱风 | 安猪|...
$attr3 包括 用户的 content 类型 包括 图型 | 文本 | 视频 | ...
$attr4 包括 公司的东西。 attr4A | attr4B | attr4C | attr4D | ...
例如 monthly report of userID_下传_爱风_视频_attr4A 目的是求:
每月有多少爱风手机用户下传attr4A的视频。注意每个符合要求的用户string都要存在
这张report里,否则将来merge时没法知道... 阅读全帖 |
|
n****f 发帖数: 905 | 3 这段没看懂:
收集的数据挺多得,但都还有关系。 如果用sql,把$attr1, $attr2, $attr3, $attr4
的各个values 排列组合一下大概几百张表吧。每张表就存诸如userID之类的一长串
string(目前大概几百万用户,以后可能增加).一般是不是就是这样设计的?
几百表? 不会吧?WHY? |
|