GlusterFS3.0新特性

蚊子今天上网,在glusterfs官方网站看到,glusterfs3.0版本在12月8号发布了,下面我们就来看看增加了那些新特性。

1) Self-heal of open files        打开文件的自修复

With this new feature GlusterFS can now self-heal replicated files even while they are op 
Servers can fail in replicated mode,  recover transparently i.e. have the files housed on th 
automatically self-healed.  The benefit of this feature is that Replicate use cases that also 
require files to remain open for extended periods, e.g. always open VM images, will wor 
better and be more reliable and available when a Replicate server fails and recovers.

2) Performance improvements in self heal       自修复过程的性能提升 

2.1) Choice of self-heal algorithms      自修复的算法选择 

During self-heal of file contents, GlusterFS will now dynamically choose between two 
algorithms based on file size:

a) "Full" algorithm – this algorithm copies the entire file data in order to heal the out-of- 
sync copy. This algorithm is used when a file has to be created from scratch on a 
server. 
b) "Diff" algorithm – this algorithm compares blocks present on both servers and copies 
only those blocks that are different from the correct copy to the out-of-sync copy. This 
algorithm is used when files have to be re-built partially. 
The “Diff” algorithm is especially beneficial for situations such as running VM images, 
where self-heal of a recovering replicated copy of the image will occur much faster because 
only the changed blocks need to be synchronized.

2.2) Background self-heal           后台自修复 
In GlusterFS 2.0.x, if self-healing is required e.g. when a failed Replicate server recovered, 
the first I/O command executed after recovery, such as a 'ls -l', that triggered the self-healing 
would block until the self-heal operation completed.  With v3.0, self-healing is now done in 
the background. Commands that can trigger self-healing will thus appear more responsive 
resulting in a better user experience.  Replicated VM images also benefit from this because 
they can continue to run even while the image is self-healed on  a failed server.

3) Stat-prefetch performance translator         状态预取性能模块 
Stat-prefetch is a new performance translator that pre-fetches directory entires and stat 
information.  The purpose of this translator is to optimize operations like 'ls -l', which 
generates a directory read followed by stat calls on each directory entry.  Overall 
performance of such commands will now be better due to directory entry stat being served 
from the cached pre-fetched stat data instead of triggering a network operation to obtain the 
stat information for that entry. 

4) Quick-read performance translator            快读性能模块 
Quick-read is a new performance translator that improves read performance on small files. 
Over a POSIX interface, files are read using the APIs lookup, open, read and close.  For a 
filesystem implemented over a network, the roundtrip overhead of these calls can be 
significant.  Quick-read reduces the network roundtrip overhead by delivering the file data 
for such small files to the client on the first operation (lookup) on the file, with subsequent 
read operations being served from the cached data.  Applications that involves lot of small 
files, such as webservers, source compliation will benefit noticably from using this 
translator.

5) I/O Cache   I/O缓存 
I/O cache translator has been enhanced to efficiently cache very large files (> 1GB).  All 
environments with large files, such as VM images, databases, genomics, 
animaition/rendering in which file sizes can easily be multi-GB in size, will benefit from 
this enhancement.

6) Direct FUSE device I/O           直接使用FUSE设备的I/O 
GlusterFS FUSE translator now can talk directly to the FUSE device without involving any 
data copying.  This leads to lower CPU utilization and better overall sysem performance. 
This enhancement removes the dependency/pre-requisite of having libfuse installed on the 
system for running, or building, GlusterFS.

7) Process Dump            进程转出 
Process Dump aggregates internal runtime information and writes it out into a file 
( /tmp/glusterdump.<pid> ).  Users can trigger it by sending the SIGUSR1 signal 
( kill -USR1 <pid> ) to a GlusterFS process.  You can use this feature to dump internal 
process information for debugging.  Process Dump is the first feature of the GTrace 
Framework, with additional features to follow. 

8) GlusterFS Volume Generator – Self optimized configuration    gluster配置文件生成工具 
GlusterFS Volume Generator (volgen) generates optimized volume configuration files for 
common workloads.  It is the recommended way to create GlusterFS volume configuration 
files.  By using volgen, users can quickly generate GlusterFS configuation files for their use 
case and avoid common configuration errors that can occur with hand coded configuration 
files. 
NOTE: Configurations generated outside the scope of volgen are neither recommended nor 
supported by Gluster.

9) Re-optimized Internal Datastructures       重新优化内部数据结构 
Large data structures inside GlusterFS have been reimplemented to use R-B-tree based hash 
tables.  This will help improve overall system performance.

你可能感兴趣的:(GlusterFS3.0新特性)