1.GlusterFS 初识
一、 GlusterFS 初始
1.1 分布式文件系统出现
计算机通过文件系统管理、存储数据,而现在数据信息爆炸的时代中人们可以获取的数据成指数倍的增长,单纯通过增加硬盘个数来扩展计算机文件系统的存储容量的方式,已经不能满足目前的需求。
分布式文件系统可以有效解决数据的存储和管理难题,将固定于某个地点的某个文件系统,扩展到任意多个地点、多个文件系统,众多的节点组成一个文件系统网络。每个节点可以分布在不同的地点,通过网络进行节点间的通信和数据传输。人们在使用分布式文件系统时,无需关心数据是存储在哪个节点上、或者是从哪个节点获取的,只需要像使用本地文件系统一样管理和存储文件系统中的数据。
1.2 典型代表 NFS
NFS(Network File System) 即网络文件系统,它允许从网络中的计算机之间通过 TCP/IP 网络共享资源。在 NFS 的应用中,本地 NFS 的客户端应用可以透明地读写位于远端 NFS 服务器上的文件,就像访问本地文件一样。NFS 的优点如下:
1.2.1 节约使用磁盘空间
客户端经常使用的数据可以集中存放在一台机器上,并使用 NFS 发布,那么网络内的所有计算机可以通过网络访问,不必单独存储。
1.2.2 节约硬件资源
NFS 还可以共享软驱,CD-ROM 等存储设备,减少整个网络上的可移动设备数量。
1.2.3 用户主目录设定
对于特殊用户,如管理员等,为了管理的需要,可能会经常登录到网络中所有的计算机,若每个客户端,均保存这个用户的主目录很繁琐,而且不能保证数据的一致性。实际上,经过 NFS 服务的设定,然后在客户端指定这个用户的主目录位置,并自动挂载,就可以在任何计算机上使用用户主目录的文件。
1.3 NFS 面临的问题
- 存储空间不足,需要更大容量的存储
- 直接用 NFS 挂载存储,有一定的风险,存在单点故障
- 某些场景不能满足要求,大量的访问下磁盘 IO 是瓶颈
1.4 GlusterFS 概述
GlusterFS是 Scale-Out 存储解决方案 Gluster 的核心,它是一个开源的分布式文件系统,具有强大的横向扩展能力,通过扩展能够支持数 PB 存储容量和处理数千客户端。 GlusterFS 借助 TCP/IP 或 InfiniBand RDMA 网络将物理分布的存储资源聚集在一起,使用单一全局命名空间来管理数据。GlusterFS 基于可堆叠的用户空间设计,可为各种不同的数据负载提供优异的性能。
GlusterFS 支持运行在任何 IP 网络上的标准应用程序的标准客户端,用户可以在全局统一的命名空间中使用 NFS/CIFS 等标准协议来访问应用数据。GlusterFS 使得用户可摆脱原有的独立、高成本的封闭存储系统,能够利用普通廉价的存储设备来部署可集中管理、横向扩展、虚拟化的存储池,存储容量可扩展至 TB/PB 级。
目前 GlusterFS 已被 Red Hat 收购,它的官网是:http://www.gluster.org/
1.5 GlusterFS 在企业中的应用场景
理论和实践上分析,GlusterFS 目前主要适用于大文件存储场景,对于小文件尤其是海量小文件,存储效率和访问性能都表现不佳。海量小文件 LOSF 问题是工业界和学术界公认的难题,GlusterFS 作为通用的分布式文件系统,并没有对小文件作额外的优化措施,性能不好也是可以理解的。
- Media - 文档、图片、音频、视频
- Shared storage - 云存储、虚拟化存储、HPC(高性能计算)
- Big data - 日志文件、RFID(射频识别)数据
*文件大小大于 1MB 适合 GlusterFS,如果更小可以选用其他文件系统,如 FastFS 等,或者配置 CDN。
1.GlusterFS 初识的更多相关文章
- GlusterFS学习之路(一)GlusterFS初识
一.GlusterFS简介 GlusterFS是Scale-Out存储解决方案Gluster的核心,它是一个开源的分布式文件系统,具有强大的横向扩展能力,通过扩展能够支持数PB存储容量和处理数千客户端 ...
- Android动画效果之初识Property Animation(属性动画)
前言: 前面两篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画).Frame Animation(逐帧动画)Andr ...
- 初识Hadoop
第一部分: 初识Hadoop 一. 谁说大象不能跳舞 业务数据越来越多,用关系型数据库来存储和处理数据越来越感觉吃力,一个查询或者一个导出,要执行很长 ...
- python学习笔记(基础四:模块初识、pyc和PyCodeObject是什么)
一.模块初识(一) 模块,也叫库.库有标准库第三方库. 注意事项:文件名不能和导入的模块名相同 1. sys模块 import sys print(sys.path) #打印环境变量 print(sy ...
- 初识IOS,Label控件的应用。
初识IOS,Label控件的应用. // // ViewController.m // Gua.test // // Created by 郭美男 on 16/5/31. // Copyright © ...
- UI篇(初识君面)
我们的APP要想吸引用户,就要把UI(脸蛋)搞漂亮一点.毕竟好的外貌是增进人际关系的第一步,我们程序员看到一个APP时,第一眼就是看这个软件的功能,不去关心界面是否漂亮,看到好的程序会说"我 ...
- Python导出Excel为Lua/Json/Xml实例教程(一):初识Python
Python导出Excel为Lua/Json/Xml实例教程(一):初识Python 相关链接: Python导出Excel为Lua/Json/Xml实例教程(一):初识Python Python导出 ...
- 初识SpringMvc
初识SpringMvc springMvc简介:SpringMVC也叫Spring Web mvc,属于表现层的框架.Spring MVC是Spring框架的一部分,是在Spring3.0后发布的 s ...
- 初识redis数据类型
初识redis数据类型 1.String(字符串) string是redis最基本的类型,一个key对应一个value. string类型是二进制安全的.意思是redis的string可以包含任何数据 ...
随机推荐
- 文件对象FSO应用 文件对象FSO应用
FileSystemObject对象被用来访问服务器上的文件系统.这个对象能够处理文件.文件夹和目录路径.用它来检索文件系统信息也是可能的. 下面的代码创建了一个文本文件,并写入了一些文本: dim ...
- js 方法总结
1. 格式化时间 function format(str,fmt) { var usedDate = new Date(usedDay); var o = { "M+": used ...
- [转] JavaScript控制浏览器全屏及各种浏览器全屏模式的方法、属性和事件
[From] http://www.jb51.net/article/76695.htm HTML 5中的full screen,目前可以在除IE和opera外的浏览器中使用 ,有的时候用来做全屏AP ...
- 在Eclipse中添加Servlet-api.jar的方法
方法一: 正确的加载servlet-api.jar的方法如下: 1:右击项目工程名称 2:Properties 3: Jvav Build Path 4: Libraries 5: Add Ex ...
- 解决 TwebBrowser 不能隐藏的问题
TOleControl(WebBrowser1).Visible := False
- 理解fig,ax = plt.subplots()
fig = plt.figure() ax = fig.add_subplot(1,1,1) fig, ax = plt.subplots(1,3),其中参数1和3分别代表子图的行数和列数,一共有 1 ...
- zTree 图标样式
<link rel="stylesheet" href="jquery/ztree/css/zTreeStyle/zTreeStyle.css" /> ...
- vue生命周期及使用 && 单文件组件下的生命周期
生命周期钩子 这篇文章主要记录与生命周期相关的问题. 之前,我们讲到过生命周期,如下所示: 根据图示我们很容易理解vue的生命周期: js执行到new Vue() 后,即进入vue的beforeCre ...
- 在lua中解决if else switch问题
之前写过一个c#版本的使用字典去解决switch问题 http://www.cnblogs.com/sanyejun/p/7806210.html 现在用写lua版本的 function Main( ...
- Oracle服务器重命名
转载自:http://www.codesec.net/view/120387.html 因工作需要准备了一台服务器专门按照oracle数据库,并且服务器上安装了windows 2008R2操作系统,在 ...