-
Notifications
You must be signed in to change notification settings - Fork 527
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Signed-off-by: Wine93 <[email protected]>
- Loading branch information
Showing
1 changed file
with
93 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,93 @@ | ||
# CHANGELOG of v2.7 | ||
|
||
Previous change logs can be found at [CHANGELOG-2.6](https://github.com/opencurve/curve/blob/master/CHANGELOG-2.6.md) | ||
|
||
## Features | ||
|
||
* [curvefs/client: add quota for S3 client](https://github.com/opencurve/curve/pull/2836), thanks to [@h0hmj][h0hmj]. | ||
* [curvefs/client: now we support hadoop sdk](https://github.com/opencurve/curve/pull/2807), thanks to [@Wine93][Wine93]. | ||
* [curvefs/mds: add ability to change capacity in fsinfo](https://github.com/opencurve/curve/pull/2821), thanks to [@h0hmj][h0hmj]. | ||
* [curvefs/monitor: add memcache](https://github.com/opencurve/curve/pull/2834), thanks to [@Cyber-SiKu][Cyber-SiKu]. | ||
* [curvefs/monitor: add cluster usage](https://github.com/opencurve/curve/pull/2842), thanks to [@Cyber-SiKu][Cyber-SiKu]. | ||
* [curvefs/monitor: support plugin](https://github.com/opencurve/curve/pull/2830), thanks to [@Cyber-SiKu][Cyber-SiKu]. | ||
* [curvefs/docker: support run curvefs on Openeuler 22.03-lts-sp2 platform](https://github.com/opencurve/curve/pull/2789), thanks to [@peter5232][peter5232]. | ||
* [curvebs/chunkserver: support format chunkfile pool in asynchronous](https://github.com/opencurve/curve/pull/2775), thanks to [@Vigor-jpg][Vigor-jpg]. | ||
|
||
## Improve | ||
|
||
* [curvefs/client: optimizing the read amplification problem, especially for memcache](https://github.com/opencurve/curve/pull/2792), thanks to [@wuhongsong][wuhongsong]. | ||
* [curvefs/client: split latency metric into data and attr](https://github.com/opencurve/curve/pull/2824), thanks to [@Cyber-SiKu][Cyber-SiKu]. | ||
* [curvefs/mds: support modify some configs on fly](https://github.com/opencurve/curve/pull/2813), thanks to [@Cyber-SiKu][Cyber-SiKu]. | ||
* [curvefs/metaserver: remove some unnecessary error logs](https://github.com/opencurve/curve/pull/2831), thanks to [@SeanHai][SeanHai]. | ||
* [build: install clang-format-14 in dev docker](https://github.com/opencurve/curve/pull/2828), thanks to [@wu-hanqing][wu-hanqing]. | ||
* [build: add braft format patch](https://github.com/opencurve/curve/pull/2661), thanks to [@wu-hanqing][wu-hanqing]. | ||
* [build: support build specified library](https://github.com/opencurve/curve/pull/2829), thanks to [@quas-modo][quas-modo]. | ||
* [doc: updated maintainers for curve project](https://github.com/opencurve/curve/pull/2695), thanks to [@aspirer][aspirer]. | ||
|
||
## Bugfix | ||
|
||
[Cyber-SiKu]: https://github.com/Cyber-SiKu | ||
[h0hmj]: https://github.com/h0hmj | ||
[wu-hanqing]: https://github.com/wu-hanqing | ||
[Wine93]: https://github.com/Wine93 | ||
[Vigor-jpg]: https://github.com/Vigor-jpg | ||
[SeanHai]: https://github.com/SeanHai | ||
[quas-modo]: https://github.com/quas-modo | ||
[wuhongsong]: https://github.com/wuhongsong | ||
[peter5232]: https://github.com/peter5232 | ||
[aspirer]: https://github.com/aspirer | ||
|
||
# Performance | ||
|
||
## Hardware | ||
3 nodes (3*mds, 9*metaserver), each with: | ||
- Intel(R) Xeon(R) CPU E5-2680 v4 @ 2.40GHz | ||
- 256G RAM | ||
- disk cache: INTEL SSDSC2BB80 800G (IOPS is about 30000+, bandwidth is about 300 MiB) | ||
|
||
## Configure | ||
|
||
```yaml | ||
fs.cto: true | ||
fs.lookupCache.negativeTimeoutSec: 1 | ||
fs.lookupCache.minUses: 3 | ||
fuseClient.supportKVcache: true | ||
client.loglevel: 0 | ||
``` | ||
## fio | ||
```bash | ||
[global] | ||
rw=randread | ||
direct=1 | ||
size=50G | ||
iodepth=128 | ||
ioengine=libaio | ||
bsrange=4k-4k | ||
ramp_time=10 | ||
runtime=300 | ||
group_reporting | ||
|
||
[disk01] | ||
filename=/path/to/mountpoint/1.txt | ||
``` | ||
|
||
| fio | IOPS/bandwidth | avg-latency(ms) | clat 99.00th (ms) | clat 99.99th (ms) | | ||
| :----: | :----: | :----: | :----: | :----: | | ||
| numjobs=1 / size=50GB / 4k randwrite | 4243 | 0.23 | 0.176 | 2 | | ||
| numjobs=1 / size=50GB / 4k randwrite | 908 | 1.0 | 3.5 | 104 | | ||
| numjobs=1 / size=50GB / 512k write | 412 MiB/s | 2.4 | 19 | 566 | | ||
| numjobs=1 / size=50GB / 512k read | 333 MiB/s | 2.9 | 20 | 115 | | ||
|
||
## mdtest | ||
|
||
```bash | ||
for i in 1 4 8; do mpirun --allow-run-as-root -np $i mdtest -z 2 -b 3 -I 10000 -d /path/to/mountpoint; done | ||
``` | ||
|
||
| Case | Dir creation | Dir stat | Dir removal | File creation | File stat | File read | File removal | Tree creation | Tree removal | | ||
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | | ||
| client*1 | 341 | 395991 | 291 | 334 | 383844 | 3694 | 309 | 322 | 851 | | ||
| client*4 | 385 | 123266 | 288 | 361 | 1515592 | 15056 | 310 | 363 | 16 | | ||
| client*8 | 415 | 22138 | 314 | 400 | 2811416 | 20976 | 347 | 355 | 8 | |