t*i 发帖数: 72 | 1 自己是在搞不定,在这里绝望中寻找希望。
文件大概有10G,格式如下,Item有很多,大概有5000个.
Item1
timestamp XXXX
timestamp XXXX
.....
.....
Item2
timestamp XXX
timestamp XXXX
....
.....
.....
ItemN
timestamp XXX
timestamp XXXX
每个item的timestamp是按照顺序排列的。
我现在需要在这N(5000)个item里任选M(1--5000)个item, 当我给出这M个item的名称, 程序会自动按照他们的timestamp排序。
电脑没这么多内存,估计要用external sorting, 另外速度需要很快。
简单的例子:
item1
9:00:07 A
9:00:50 B
item2
9:00:03 A
9:00:40 B
Item3
9:00:07 A
9:00:55 B
item1, itme2的时序排列就是
item3 9:00:07 A
item1 9:00:07 A
item1 9:00:50 B
ite |
g*****g 发帖数: 34805 | 2 没看出难度在哪里。
【在 t*i 的大作中提到】 : 自己是在搞不定,在这里绝望中寻找希望。 : 文件大概有10G,格式如下,Item有很多,大概有5000个. : Item1 : timestamp XXXX : timestamp XXXX : ..... : ..... : Item2 : timestamp XXX : timestamp XXXX
|
k****f 发帖数: 3794 | 3 lz自己问题都说不清楚,
10g不是问题,大不了,找个好机器,全部拷贝到内存就完了。
问题是有什么要求么?比如n,m多大,速度是否要求很快
【在 g*****g 的大作中提到】 : 没看出难度在哪里。
|
t*i 发帖数: 72 | 4 您就指点我一下吧
【在 g*****g 的大作中提到】 : 没看出难度在哪里。
|
g*****g 发帖数: 34805 | 5 好吧,教你一个最简单的。搞个数据库
建一个表,三个column
ID item timestamp
把所有数据往里一扔,ID就从1开始排就得,然后你想干啥都行。
【在 t*i 的大作中提到】 : 您就指点我一下吧
|
t*i 发帖数: 72 | 6 电脑资源不够,估计要用external sort.
另外N有5000个, M大概从1-5000不等。 需要比较快的速度。
【在 k****f 的大作中提到】 : lz自己问题都说不清楚, : 10g不是问题,大不了,找个好机器,全部拷贝到内存就完了。 : 问题是有什么要求么?比如n,m多大,速度是否要求很快
|
T*****9 发帖数: 2484 | 7 external sort没有meta data做起来很累
告诉你找个好机器么
【在 t*i 的大作中提到】 : 电脑资源不够,估计要用external sort. : 另外N有5000个, M大概从1-5000不等。 需要比较快的速度。
|
t*i 发帖数: 72 | 8 不知道这个方法速度怎么样,我有几百个类似大小的文件。
【在 g*****g 的大作中提到】 : 好吧,教你一个最简单的。搞个数据库 : 建一个表,三个column : ID item timestamp : 把所有数据往里一扔,ID就从1开始排就得,然后你想干啥都行。
|
g*****g 发帖数: 34805 | 9 先数据都扔进去,然后offline拍好,最后随机取几千个记录那不就
几秒的事情。
【在 t*i 的大作中提到】 : 不知道这个方法速度怎么样,我有几百个类似大小的文件。
|
k****f 发帖数: 3794 | 10 相信数据库,很快的,比你自己写的程序肯定要好多了
【在 t*i 的大作中提到】 : 不知道这个方法速度怎么样,我有几百个类似大小的文件。
|
|
|
d**n 发帖数: 198 | 11 map reduce
【在 t*i 的大作中提到】 : 自己是在搞不定,在这里绝望中寻找希望。 : 文件大概有10G,格式如下,Item有很多,大概有5000个. : Item1 : timestamp XXXX : timestamp XXXX : ..... : ..... : Item2 : timestamp XXX : timestamp XXXX
|
T*****9 发帖数: 2484 | 12 悬,估计不行
【在 d**n 的大作中提到】 : map reduce
|
r****t 发帖数: 10904 | 13 这种数据为什么从一开始没有用数据库?太不安全了。 |
l*****c 发帖数: 1153 | 14 用grid 吧,多快好省。10G洒洒水了。
【在 t*i 的大作中提到】 : 不知道这个方法速度怎么样,我有几百个类似大小的文件。
|
h*******e 发帖数: 225 | 15 就是个external merge而已
【在 t*i 的大作中提到】 : 自己是在搞不定,在这里绝望中寻找希望。 : 文件大概有10G,格式如下,Item有很多,大概有5000个. : Item1 : timestamp XXXX : timestamp XXXX : ..... : ..... : Item2 : timestamp XXX : timestamp XXXX
|
T*****9 发帖数: 2484 | 16 grid就是垃圾
【在 l*****c 的大作中提到】 : 用grid 吧,多快好省。10G洒洒水了。
|
l*****c 发帖数: 1153 | 17 说脏话不能支持你的论点。Hadoop刚刚打破了Terabyte Sort Benchmark的世界纪录。
grid对很多数据处理来说,还是低成本的傻瓜式高效解决方案。
【在 T*****9 的大作中提到】 : grid就是垃圾
|
g*****g 发帖数: 34805 | 18 I think use grid for a 10G external sorting is overkill.
【在 l*****c 的大作中提到】 : 说脏话不能支持你的论点。Hadoop刚刚打破了Terabyte Sort Benchmark的世界纪录。 : grid对很多数据处理来说,还是低成本的傻瓜式高效解决方案。
|
l*****c 发帖数: 1153 | 19 That's definitely true!
However, if LZ is really weak on coding and algorithm, do a single node grid
could be much easier for him:-)
【在 g*****g 的大作中提到】 : I think use grid for a 10G external sorting is overkill.
|
n******t 发帖数: 4406 | 20 非常惊奇那么多人都不知道这个。
【在 h*******e 的大作中提到】 : 就是个external merge而已
|
|
|
t*i 发帖数: 72 | 21 我后来是用linux sort对文件排序的,挺快挺方便的。
谢谢各位的解答。 |
l*****k 发帖数: 587 | 22 awk plus sort should work |
r****t 发帖数: 10904 | 23 对,我忘了 linux 里面有个 sort 了。。
【在 t*i 的大作中提到】 : 我后来是用linux sort对文件排序的,挺快挺方便的。 : 谢谢各位的解答。
|
s*****d 发帖数: 43 | 24 How come 5K items take up 10G file space?
10G file does not mean we need 10G memory. For example, from your data
sample, each time stamp needs on at most 3 bytes (5 bits for hour, 6 bits
for minutes, 6 bits for seconds, total 17 bits). As for the name A, B, if
they are shared, you only need store it twice in memory. |