Redian新闻
>
[夏天的风]狮子座狂欢的季节
avatar
[夏天的风]狮子座狂欢的季节# Fashion - 美丽时尚
m*0
1
如题,这个题怎么答,请教各位。题目的背景是,数据量非常大(twitter级别),要
求准确度能反映最近10分钟之内的变化。
avatar
W*e
2
今天在slick deals上看到的,jcpenny有ten2you的coupon code.
他们家的clearance现在有一些泳衣是5.2一件,10.4一套,用了这个coupon就变成0.4
一套了。
不过运费要6块,偶很忿忿。
想要买泳衣jms可以去看看。
slickdeals的链接如下:
http://slickdeals.net/forums/showthread.php?sduid=0&t=2167418
avatar
s*6
3
吼吼!
avatar
H*5
4
东邪黄药师助教
发表于 9/18/2017, 10:34:50 PM · 3个赞
求实时 Top K 的做法有很多,但是具体说起来很长,你可以搜一下这样一些算法:
Space Saving, Efficient Count, Lossy Counting, Sticky Sampling, Hash Count.
(如果搜不到对应的论文,就加 Top K Frequent Items / Elements 之类的关键字)
这里我不展开说这些算法是怎么做的,你自己去搜。或者上 Big Data 的班(http://www.jiuzhang.com/course/4/)。我这里主要说一下 Filter 的这个部分怎么设计和整个架构是什么,因为即使你有一个 Realtime Top K 的 Service,你依旧需要设计一下 Filter。
整个架构
整个架构里,可以分为下面几个 Service:
Topic Service
Feature Service
Realtime Top K Service
用户发了一个 Post 之后,Post 要被丢到 Top Service 和 Feature Service 里,做
如下的一些事情:
提取出有哪些 Topic
提取出有哪些 Feature(男,女,年龄层)
然后把 Topic 丢给每一个 Feature 的 Realtime Top K Set 里,也就是把 feature> 这样的pair丢给 Realtime Top K Service 进行处理。这个 service 为不同
的 feature 维护不同的 Top K Topic Set。这样你想知道哪个 Feature 的 Top K 的
时候,就能查到哪个。
你附近的 Top K Topic
这个就区别与上面的 Feature Topic 了。此时我们需要定义一下,这个“附近”到底
有多近。我认为可以以 City 为单位的近。因为 太小了没多少用户发帖就没多少有意
义的 Topic。因为 City 不多,完全可以每个 City 当做一个 Feature。因此答案就很
明显了,根据经纬度找到属于哪个 City,或者模糊一点的话,都不需要知道是哪个
City,直接用 GeoHash 的前 3 位为 Feature 就好了(3位大概 +- 78 KM 范围内)。
avatar
s*6
5
露个脸,给个大包子吧:)
avatar
r*s
6
扯蛋的太多,其实你搭个storms小集群就好了
基本模拟mapreduce的结构,但是实时算。
三层节点,均可水平扩展
非常简单
非常简单
avatar
w*t
7
美女偶粉你!!!!!!!
马上私囊给包子!

【在 s*******6 的大作中提到】
: 露个脸,给个大包子吧:)
avatar
g*6
9
可爱的美女。
多奔多奔。
avatar
K*s
10
顶楼上两层技术贴
avatar
m*m
11
very sweet, very cute!
avatar
m*0
12
good point!
如果题目的要求是,没有fancy的工具可以用,只有简单的key-value store(比如
Redis)和50台普通PC机器(彼此联网)呢?

【在 r*****s 的大作中提到】
: 扯蛋的太多,其实你搭个storms小集群就好了
: 基本模拟mapreduce的结构,但是实时算。
: 三层节点,均可水平扩展
: 非常简单
: 非常简单

avatar
s*a
13
好活泼哈哈
avatar
s*x
14

1) hash the key randomly so all the 50 machines, each machine gets 1/50 of
the total traffic.
2) each PC has a priority queue with size of 500, update the counter for
each key using the k-v store. update the priority queue
3) the aggregator sends request to all the 50 PCs, merge sort 500*50 data to
generate the final 500 answer.
( mention sampling to get extra credit. LOL)

【在 m******0 的大作中提到】
: good point!
: 如果题目的要求是,没有fancy的工具可以用,只有简单的key-value store(比如
: Redis)和50台普通PC机器(彼此联网)呢?

avatar
y*z
15
很可爱活泼的mm

【在 s*******6 的大作中提到】
: 吼吼!
avatar
g*y
16
还是map reduce啊

:1) hash the key randomly so all the 50 machines, each machine gets 1/50 of
:the total traffic.
:2) each PC has a priority queue with size of 500, update the counter for
:each key using the k-v store. update the priority queue
:3) the aggregator sends request to all the 50 PCs, merge sort 500*50 data
to generate the final 500 answer.
:( mention sampling to get extra credit. LOL)

【在 s**x 的大作中提到】
:
: 1) hash the key randomly so all the 50 machines, each machine gets 1/50 of
: the total traffic.
: 2) each PC has a priority queue with size of 500, update the counter for
: each key using the k-v store. update the priority queue
: 3) the aggregator sends request to all the 50 PCs, merge sort 500*50 data to
: generate the final 500 answer.
: ( mention sampling to get extra credit. LOL)

avatar
b*n
17

壮,我喜欢!
露脸,大方。
赏包子!
转帐完成
转给用户:sheven706,现金(伪币):100,收取手续费:1.00

【在 s*******6 的大作中提到】
: 吼吼!
avatar
r*s
18
用redis算的话过程稍微复杂一点,但是还是可以算的,提个想法吧。
首先我觉得24小时的这个尺度,都可以做离线算法了,每次mr算个一小时,将就一下就
行了。
我们来讨论一个15分钟的好了。。。
那么再首先一下,粒度不可能是无限的,我们每分钟总结一次。
起15个ordered set,每次来一个新sample点的时候(全部数据都进来未必能撑住,
redis也就handle
10,000数量级的QPS),就往这15个set里同时写进一条。这15个set,后面14个是未来
14分钟我们要用的,前面一个是当前这一分钟我们用的。
查询的时候,从当前set里面取前500。
每过一分钟,就干掉当前set,启用下一个set,并且添加一个空的set,作为15分钟后
要用的set。
这里cost是搞了点,但是我基本保证这玩意可以用。
如果扩展到24小时的话基本上我们要搭persistent层,做lambda架构了。


: good point!

: 如果题目的要求是,没有fancy的工具可以用,只有简单的key-value store(比如

: Redis)和50台普通PC机器(彼此联网)呢?



【在 m******0 的大作中提到】
: good point!
: 如果题目的要求是,没有fancy的工具可以用,只有简单的key-value store(比如
: Redis)和50台普通PC机器(彼此联网)呢?

avatar
s*6
19
x谢谢:)

【在 w*********t 的大作中提到】
: 美女偶粉你!!!!!!!
: 马上私囊给包子!

avatar
s*6
20
大大大款!求保养!

【在 b*******n 的大作中提到】
:
: 壮,我喜欢!
: 露脸,大方。
: 赏包子!
: 转帐完成
: 转给用户:sheven706,现金(伪币):100,收取手续费:1.00

avatar
s*6
21
谢谢大包子,美女也在洛杉矶吧?有时间我们一起出来耍:)

【在 y**z 的大作中提到】
: 很可爱活泼的mm
avatar
f*p
22

顺便给我一个吧~

【在 w*********t 的大作中提到】
: 美女偶粉你!!!!!!!
: 马上私囊给包子!

avatar
b*n
23

靠,我一直在找富婆款姐呢。
有包子无码内。

【在 s*******6 的大作中提到】
: 大大大款!求保养!
avatar
b*l
24
大美女~,有点像混血儿呢,还特别可爱!
avatar
c*p
25
你是tvb明星?
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。