看板Config
标 题CDN 与 P2P 的分类索引与查询
发信站中央大学松涛风情资讯站 (Thu Aug 5 13:39:31 2004)
转信站ptt!ctu-reader!ctu-gate!news.nctu!news.ncu!news.csie.ncu!Evergreen
> 6-1.假设使用者以 URL 形式向 Pi (provider-i.com) 请求下载 ri
> http://provider-i.com/dir-ri/file-ri
> 6-2.Provider 同意 user uk 的请求後, 使用 CDN 给的 Consistent Hash
> Function Hc , Hs , 将请求改为转向到
> http://Hc(uk-ip).Hs(provider-i.com).CDN.NET/provider-i.com
> /dir-ri/file-ri
===================================================================
上述这个 CDN 例子是针对 URL 的 original resource 对应出 upload
server Hs 与 Download cache Hc 两者所在的位置, 使得传送资源的途径可
以经由 Hs 与 Hc 构成的 Overlay Network 走快速通道与 cache 来进行.
使用 Consistency Hash 技术的 Hs , Hc 就是将 (uk-ip, provider-i.com)
这种 information pair 经由特定一致的对应(mapping)方法产生 Server
addressable Network 所在的查询用 (Hc.Hs) 2-dimension index . 对应方
法必须是可分散式处理, 同时最好是有规则且可扩充容量能一致性计算的计
算式. 使用 Hc.Hs.CDN.NET 此种 DNS tree 的查询与命名表示法在先天上就
利用了上下层的树状关系, 其前後次序构成某种程度的相关分类. 例如:
A 是 2-dimention array , ai,j 是其元件, 假设 i 代表 level-1 国别/地
区, j 代表县市 , (TW, tp) 的命名就是 tp.tw.CDN.NET , 再假设 Hs(TW)
=1 , Hc(tp)=1 , Hc(tn)=2, Hc(ks)=3 , 所以 (TW.ks) --> (1,3) , 要查
出 TW 下相关的县市就是 (1,*) . 查询 a(1,*) 可以用 a(1,1-3) 针对 A1
区列举查询, 也可以是将 a1,1 a1,2 a1,3 放在同一个 vector table (
row majoring), 从 a1,1 当入口进去做循序(sequtial)查询.
|--a1,1
|--A1 --|--a1,2
| |--a1,3
| |--a2,1
A: |--A2 -----------|--a2,2
| |--a2,3
|
| |--a3,1
|--A3 --|--a3,2
|--a3,3
把 2-dimention array 转换成 1-dimension array 采用那种方式排列(row
或 column 或 gray, sfc 等其他)就可以让相关(例如同一地区)的项目可以
用相邻的方式以快速(一次入口), 集中(相关性相临) 的形式进行 partial
matching. 树状分类是会有前後相关, row-majoring 就反应了同层次的相
邻, 假如要查询 a(*,3), 除了考虑分类上的常用频次性外, row-majoring
的排列, 仍然可以用a(1-3,3) 列举, 再用转换为 one-dimension 的公式做
有限范围的逐一查询. 有规则的转换公式(row-majoring 或 sfc)就使得原
先被分隔无关的独立性 Hash Hc, Hs 变成有规则性的相关. 这使得相邻性
转换(例如 3-D 立体分布点的相邻)可以达成某些 content associative
search 的需求.
如果把 information pair 再扩充增加几项 content 相关的项目当新的
类别, 例如 file-name , file-type , 甚至是以 content 的文件内容萃取
出属性类别的关键字(keyword)组成 key vector, 再用 Consistency-Hash
产生 n-dimension index , 再依据相关性决定相邻关系以及层次次序的转换
规则(如 SFC ), 就能把 P2P 的 resources query 在有考虑资源内容存放位
置的 content addreesable network 上, 达到快速找到相关 peer 的效果.
多维树状分类与相邻对应转换间无法存在一种单一又通用的相邻规则,
例如以 row 或 column majoring 为考量就是不同的上下层次优先. 但是如
果考虑及属性分类的涵盖范围与使用的频次, 就能决定索引的前後优先次序
也就能决定何者要优先相邻(密切相关). 例如假设学生将自己的相关资料存
在自己的电脑, 再以 P2P 的形式在就学时跟学校的教务电脑 server 报到,
学生的姓名, 性别, 出生年月日, 通信地址, 就读的系所, 入学或毕业的日
期, 修习过的课目成绩, 奖惩及个人荣辱资讯, 甚至是个人的嗜好, 兴趣,
得意的心得, 发表的着作, 自拍影音等等资讯都是可以限对象下, 分享的资
料. 这些项目就是传统的分类用 keyword 拦位. 目前, 其叙述与记载都可
以用 XML 型式描述及登录存取的资料位置. 再假设教务处没有单一资料库,
而是用入学的学生电脑及其上的资讯当资料, 学生电脑就变成是 P2P 系统
的主要一环. 每个学生的 XML 记载表可以有大小容量与类别数量, 甚至次
序的不同. 但做为标记的 TAG keyword-name 则是相同的. 教务处提供给教
师对学生资料的服务就是透过她就能做分散式的索引与快速相关资讯的定位
服务. 学务处学生活动组的电脑也是透过她就能让同学间能相互交换与分享
彼此自有的资讯.
在分散式的观念下, 这里的教务处或学生活动组并没有单一集中的资料
库, 也没有集中的索引表, 教务处与教师, 学生之间是使用了同一规范规则
的软体或服务系统就能进行有规则又快速的资料分享与更新. 比照 CDN 的
方法就是教务系统建立了一套独立於学生电脑之外的 DNS index system ,
要查学生教务资讯就从教务处的入口站开始, 教务可能提供从 keyword (例
如系别年级, 姓名)产生唯一学号( indentifier)的对应规则, 因此师生可以
从学号或系别年级, 姓名就能找到该生的所有资讯. 同样的, 学生活动组或
社团领导人的电脑就是提供 P2P 的 peer tracker 网站, 有同一兴趣的学生
透过嗜好, 兴趣, 年龄, 性别 这些 multi-dimension keyword 可依据同一
C-Hash 计算式产生 vector index, 再用 keyword 间的关联密切度计算出共
通的相邻规则对映式, 有了规则式就能各自计算转换成对应的 unique one-
dimension index , 透过有相邻性的 one-dimension index 就能快速找到同
一兴趣的社群进行资料交换或分享.
整个问题, 其实就是一种可以让参与者动态组合的分散式资料库, 这里
的 XML Tag-Name 与 type 要一致, C-Hash 规则要相同, keyword 关联度的
评估公式规则要相同, 使得 Key Vector 转换成对映的 one-dimension index
number 也能相同. 如此一来, 能做 keyword partial matching 的网路分散
式资料库就能进行.
学生入学就是向教务系统的 DNS index system Pulish 其相关资讯, 教
师要查阅处理班级学生资讯就是透过教务处的选课生名单 subscribe 这些课
程内学生资讯.
社团活动就是主要学生间彼此先推举一个领导人当社长, 彼此的电脑再以
P2P 的方式加入, 非社团成员也是能透过兴趣嗜好的 partial matching query
找到相关社群的成员, 临时加入该社群, 彼此进行资讯分享.
--
◎ Origin: 中央松涛站□bbs.ee.ncu.edu.tw From: 140.115.6.234