百度文件系统 BFS-Baidu

BSD
C/C++ 查看源码»
Linux
百度
2016-09-19
bluebore

The Baidu File System

百度的核心数据库Tera将数据持久化在分布式文件系统上,分布式文件系统的性能、可用性和扩展性对整个上层搜索业务的稳定性与效果有着至关重要的影响。现有的分布式文件系统(如HDFS等)无法满足低延迟、高可用、跨地域扩展等方面的需求,所以我们从百度搜索的业务特点出发,开发了自己的分布式文件系统BFS。

设计目标

  1. 高可靠、高可用
    通过将数据副本进行多机房、多地域冗余,实现单个机房、地域遇到严重灾害的情况下,不丢失数据,不影响整体可用性。
    将元数据服务分布化,通过多副本实现高可用,通过Raft等一致性协议同操作日志,实现多副本的一致性。

  2. 高吞吐、低延迟
    通过高性能的存储引擎,最大化存储介质IO吞吐;通过全局的副本、流量调度,实现热点负载均衡。

  3. 水平扩展
    支持跨地域、多数据中心部署,可水平扩展至10万台机器。

系统架构

系统主要由NameServer、MetaServer、ChunkServer、SDK、bfs_mount和bfs_client等几个模块构成。
其中NameServer是中心控制模块,采用集群化部署,负责目录树的管理;ChunkServer是数据节点负责提供文件块的读写服务;SDK以静态库的形式提供了用户使用的API;bfs_mount通过libfuse,将bfs挂载到本地,作为本地文件系统访问;bfs_client是一个二进制的管理工具。

加载中

评论(17)

bluebore
bluebore
赞~
thesonder
thesonder
gaygaygay
炸药包
炸药包
搭起来了,费老劲了
水梦星光
水梦星光
垃圾......
s
squirrell
backJ
backJ
dayreturn
dayreturn
yvxiang
yvxiang
Qiujuer
Qiujuer
哈哈不错 #BFS-Baidu#
eechen
eechen
阿里: #AliSQL#(阿里云/双十一)+#OceanBase#(支付宝)+#TFS#(TaobaoFS) 百度: #Tera#(数据存储)+#BFS-Baidu#(BaiduFS)

BFS-百度文件系统 v0.6.0 发布

BFS-百度文件系统 V0.6 发布了。BFS 是百度团队从百度搜索的业务特点出发,以高可用、高吞吐和低延迟为目标,开发的新一代分布式文件系统。 0.6.0 更新内容: 支持文件软链接 DK添加C语言接口...

2017/03/10 13:52

BFS-百度文件系统 v0.5.0 发布

BFS-百度文件系统 0.5.0 发布了。BFS 是百度团队从百度搜索的业务特点出发,以高可用、高吞吐和低延迟为目标,开发的新一代分布式文件系统。 0.5.0 更新内容: Chunkserver 支持多盘自动负载...

2016/12/29 09:44

BFS-百度文件系统 v0.4.1 发布

BFS-百度文件系统 0.4.1 发布了。BFS 是百度团队从百度搜索的业务特点出发,以高可用、高吞吐和低延迟为目标,开发的新一代分布式文件系统。 0.4.1 更新内容: SDK支持扇出写,并代替链式写作...

2016/12/15 09:11

BFS-百度文件系统 v0.4.0 发布

BFS-百度文件系统 0.4.0 发布了,BFS 是百度团队从百度搜索的业务特点出发,以高可靠、高可用、高吞吐、低延迟、水平扩展为目标,开发的分布式文件系统。主要由NameServer、MetaServer、Chu...

2016/11/23 10:56

BFS-Baidu v0.3.3 发布,百度文件系统

BFS-Baidu v0.3.3 发布了,BFS 是百度团队从百度搜索的业务特点出发,以高可靠、高可用、高吞吐、低延迟、水平扩展为目标,开发的分布式文件系统。主要由NameServer、MetaServer、ChunkServ...

2016/10/26 07:49

没有更多内容

加载失败,请刷新页面

没有更多内容

1
回答
BFS适合存储文件的类型大小

Hi, 我想了解下该套系统的存储对象适合多少size?像TFS比较适合海量小文件,还是像HDFS适合大文件存储?

2016/11/24 18:31

没有更多内容

加载失败,请刷新页面

没有更多内容

Jsoup学习之Jsoup类

Jsoup类 一、类结构 java.lang.Object org.jsoup.Jsoup public classJsoup extends Object Jsoup类来自于org.jsoup.Jsoup包,并且继承自Object类。 二、方法 Method Summary static String c...

2016/09/18 15:37
38
0
ADB shell

ADB很强大,记住一些ADB命令有助于提高工作效率,希望给初学者一些帮助!个人水平有现,如有错误还望各位指正!

2016/05/26 16:00
16
0
【56】java本地文件File类详解

1.java类的介绍 public class File extends Object implements Serializable, Comparable<File> 文件和目录路径名的抽象表示形式。 File既可以表示文件也可以表示目录。 用户界面和操作系统使...

2016/11/09 09:15
5
0
JAVA 压缩图片-解析一维码二维码-ZXING

之所要压缩图片,是因为如果图片太大了,ZXING会解析失败。 另外一点就是,一维码二维码这个图片必须是水平放置,其他方向很可能会导致解析失败。 ##首先使用这个类来压缩图片: [CompressP...

2016/04/14 10:59
96
1
JAVA读写文件,避免中文乱码

1、JAVA读取文件,避免中文乱码。 /** * 读取文件内容 * * @param filePathAndName * String 如 c:\\1.txt 绝对路径 * @return boolean */ public static String readFile(String filePathAn...

2015/12/14 11:53
3
0
hfs网络文件服务器 2.3

hfs网络文件服务器 2.3是专为个人用户所设计的HTTP档案系统,如果您觉得架设FTP Server太麻烦,那么这个软件可以提供您更方便的网络文件传输系统,下载后无须安装,只要解压缩后执行 hfs.ex...

2016/05/28 20:16
106
0
<Java 网络基础知识>学习日志(二)——URL

``` package 网络基础知识; import java.net.MalformedURLException; import java.net.URL; public class URLTest { /* * 2016/11/19 * URL测试 * URL:统一资源定位符,表示Inernet上某一资源...

2016/11/19 23:17
3
0
oracle 创建用户 远程登入, 初始化表空间

默认密码: scott/tiger 我设置的 : system /123456 一.oracle11g 启动远程服务器 http://blog.sina.com.cn/s/blog_7c0e26230100t0ci.html # listener.ora Network Configuration File: C:\a...

2016/09/02 10:16
9
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部