Closed foreverneverer closed 2 years ago
Several problems have been found according to the checklist for Incubator release:
LICENSE
and .licenserc.yaml
, some file paths have been not updated after refactor;NOTICE
year is still the last year.Thus some PRs have been committed to fix these problems as follows:
These PRs should be cherry-picked to v2.4 to meet the requirements for Incubator release.
Since we have cherry-pick more commit into v2.4, which involved the cmake module. Suggested by @acelyc111, I re-run benchmark as follow:
Case | client and thread | R:W | R-QPS | R-Avg | R-P99 | W-QPS | W-Avg | W-P99 |
---|---|---|---|---|---|---|---|---|
Write Only | 3 clients * 15 threads | 0:1 | - | - | - | 55490 | 808 | 3540 |
Read Only | 3 clients * 50 threads | 1:0 | 361112 | 414 | 997 | - | - | - |
Read Write | 3 clients * 30 threads | 1:1 | 63581 | 469 | 5447 | 63580 | 939 | 4959 |
Read Write | 3 clients * 15 threads | 1:3 | 16559 | 396 | 4228 | 49664 | 769 | 3987 |
Read Write | 3 clients * 15 threads | 1:30 | 1730 | 413 | 3669 | 51966 | 849 | 4735 |
Read Write | 3 clients * 30 threads | 3:1 | 135091 | 376 | 3007 | 45304 | 842 | 4753 |
Read Write | 3 clients * 50 threads | 30:1 | 319519 | 444 | 1442 | 10643 | 819 | 2691 |
For some reasons, I cannot run under centos7 5.4.54-2.0.4.std7c.el7.x86_ 64
, which may also lead to some differences in results from the last, I will retest some previous versions before the official release.
Some more license issues have been resolved:
New Module
From this version, more project module will join Apache Pegasus Project. In this version, the following projects are included:
rdsn
exists as a sub-project in current repository, in this release, it officially become the core module of the project.New architecture
In this version, we remove the shared log to enhance the pegasus performance, Related pull request as follow:
New Feature
Replica-factor update
Supporting flexible replica count. In the past, the replica factor was Immutable once one table was created. In current version, user can dynamically adjust the factor of specified table. Related pull request as follow:
Read Request Limiter
In the past, we only support write limiter, in this version, we add the supporting for read:
Jemalloc Support
Build Feature
We have made some restrictions on the compilation environment and support
MacOS
andaarcch64
:New BatchGetAPI
In the past, the
batchGet
implement based thesingleGet
, the latest version will aggregate different request first berfore sending, it will improve the performace:Task Queue limiter
Feature enhancement
Bulkload
We improve bulkload feature to reduce the io-load of downloading and ingesting, besides, we offer better interfaces and failure handling logic, the related pull request as follow:
Duplication
In the past, duplication has some shortcoming: It depends remote filesystem to sync the checkpoint; The synchronization of plog data only sends a single mutation at each RPC. In this version, we enhance the above problem(the detail design see https://github.com/apache/incubator-pegasus/issues/892), related pull request as follows:
PerfCounter
In the version, we support new metric implement to optimize performance:
Manual Compaction
Learn with NFS
To reduce the impact of data migration for IO-LOAD and ensure the migration rate, our data transmission supports disk level speed limits:
Latency Tracer
The latest latency tracer support perf-counter and fix some bugs:
Other important
Java Client
Go Client
Python Client
Admin Cli
Pegasus Docker
Code Refactor
Bug Fix
Core
Common
Performance
In this benchmark, we use the new machine, for the result is more reasonable, we re-run the Pegasus Server 2.3:
Pegasus Server 2.3
Pegasus Server 2.4
Config-Update
Contributors
acelyc111 cauchy1988 empiredan foreverneverer GehaFearless GiantKing happydongyaoyao hycdong levy5307 lidingshengHHU neverchanje padmejin Smityz totalo WHBANG xxmazha ZhongChaoqiang