请教一个
hadfs对文件元数据中 文件尺寸 是如何处理的
比如是否如下某一条流程:
1.client在写数据到 slave节点成功后,client将写入的数据信息报告给master,master根据该信息计算文件尺寸(比如是否最后一个chunk)
或者
1.client写数据到 slave 节点结束后,slave上报写信息给master ,master 对该chunkid所属的文件进行文件尺寸计算
或者
1.client直接向master 查 文件尺寸信息,master 去 slave 节点查 最后一个块的大小,后计算结果,并返回给client
或者
1.client向master查文件最后一个块的位置,然后去slave节点查该chunk的大小,自己计算出文件的尺寸.
我见过KFS对文件尺寸 是如下处理的
KFS的名字空间中,文件名与chunk信息,以及文件到chunk的影射都是放在一个BTREEE里面的.单线程运行
当slave节点上报chunk信息后,对 btree检索,如果是文件最后一个chunk,则直接计算该文件的尺寸.
那么以后client在来查文件尺寸的时候,就直接从元数据中读就可以了 |
|