Brisk之CassandraFS(2)

来源:infoq 作者:infoq
  

为了能够提供Cassandra特有的文件系统实现,Brisk将hadoop默认的hdfs文件类型修改为了cfs文件类型,其在core-site.xml文件中的配置重置了默认配置:

<property> 
    <name>fs.cfs.impl</name> 
    <value>org.apache.cassandra.hadoop.fs.CassandraFileSystem</value> 
</property> 
<property> 
    <name>fs.cfs-archive.impl</name> 
    <value>org.apache.cassandra.hadoop.fs.CassandraFileSystem</value> 
</property> 

其中org.apache.cassandra.hadoop.fs.CassandraFileSystem与HDFS中默认的实现org.apache.hadoop.hdfs.DistributedFileSystem一样,都继承于Hadoop通用的文件接口基类org.apache.hadoop.fs.FileSystem,所有能够保证接口的兼容性。

此外,Brisk还修改了HDFS中默认使用的文件类型:

<property> 
    <name>fs.default.name</name> 
    <value>cfs:///</value> 
</property> 

所以在当我们在Brisk环境中调用HDFS的操作时,都将定向到cfs的实现,如:

briskhadoopfs -ls /test 

将相应地转化为:

briskhadoopfs -ls cfs:///test 

org.apache.cassandra.hadoop.fs.CassandraFileSystem中所有文件的操作都是通过调用Brisk中提供的get_cfs_sblock接口服务来实现读写操作的,通过整合这些模块,从而完成了利用Cassandra替换HDFS的需求。

不过目前CassandraFS实现和HDFS的实现还是有一些区别的,比如不支持权限,不支持追加写入等等。


感谢张凯峰对本文的审校。


时间:2011-11-14 15:12 来源:infoq 作者:infoq 原文链接

好文,顶一下
(0)
0%
文章真差,踩一下
(0)
0%
------分隔线----------------------------


把开源带在你的身边-精美linux小纪念品
无觅相关文章插件,快速提升流量