加为好友
发送私信
在线聊天
mLee79
等级:
可用分等级:小地主
总技术分:6404
总技术分排名:3460
发表于:2007-12-13 22:38:03 9 楼 得分:30
随便搞搞,这样行不.. 硬盘数据: 记录 < SONG_ID , URL_ID > 信息需要 16M * 1K * 4 字节, 在逻辑上构成一个64G的文件, 存储时分割为64G/2G==32个文件, SONG_ID 对应的URL_ID信息位于逻辑文件的 4K * SONG_ID 处. 内存使用: 记录 SONG_ID 是否使用的 bitmap , 共需要 16M/8 == 2M , 记录 URL_ID 是否可用的bitmap, 共需要 1G/8==128M , 其他内存作为缓存 在数据量增大时, 建立 ( M = ceil( SONG_ID_MAX / 16M ) ) * ( N = ceil( URL_ID_MAX / 1G ) ) 台服务器, 如128M SONG_ID , 4G URL_ID 共需要 8*4 台服务器,分别编号为: <1,1> <2,1>.... <M,1> <1,2> <2,2>.... <M,2> . . . . . . . . <1,N> <2,N>.... <M,N> 在逻辑上, 服务器 <X,Y> 处理 SONG_ID in [4K*X ,4K*(X+1) ) , URL_ID in [1G * Y , 1G*(Y+1) ) 的请求. 1) X = SONG_ID / 16M + 1 , 由服务器 <X,1> <X,2>... <X,N> 响应. 2) 由服务器 < SONG_ID/16M + 1 , URL_ID/1G + 1> 响应 3) X = SONG_ID / 16M + 1 , 由服务器 <X,1> <X,2>... <X,N> 响应. 4) Y = URL_ID / 1G + 1 , 由服务器 <1,Y> <2,Y>... <M,Y> 响应.
修改
删除
举报
引用
回复