4. numpy
old
Pandas - a monolithic, all-in-one, data
analysis toolkit
new
Numpy - a lightweight, high-performance,
N-dimensional array (and a bit more)
library
5. in-memory
the memory is mightier.
leverage Redis driver or
LevelDB/RocksDB
internals for Ceph
7. v2 & v3
node1
- OpenStack controller node
- Ceph Monitor Service
- Redis (coordination)
node2
- OpenStack Compute Node
- Ceph OSD node (10 OSDs + SSD
Journal)
- 18 metricd (24 in v2)
node3
- Gnocchi API (32 workers)
- Ceph OSD node (10 OSDs + SSD
Journal)
- 18 metricd (24 in v2)
node4
- OpenStack Compute Node
- Ceph OSD node (10 OSDs + SSD
Journal)
- PostgreSQL (
- 18 metricd (24 in v2)
environment
v4.x
node1
- OpenStack controller node
- Ceph Monitor Service
- Redis
- MySQL
node2
- OpenStack Compute Node
- Ceph OSD node (10 OSDs + SSD
Journal)
node3
- OpenStack Compute Node
- Ceph OSD node (10 OSDs + SSD
Journal)
- Gnocchi API (32 workers)
- 18 metricd
all nodes are physical servers:
- 24CPU (48 hyperthreaded)
- 256GB memory
- 10K disks
- 1GB network
- CentOS 7.1
less services and hardware when
running v4. all gnocchi services on
single node
all tests use Ceph as a storage
driver for aggregates.
8. data generated using benchmark
tool in client (modified to use
threads). 4 clients w/ 12 threads
running simultaneously.
write throughput
total
datapoints
written per
second.
(higher is
better)
16. test case 2
1K resources, 20 metrics
each. flood Gnocchi with
60 batched points per
metric. 20K calls/run. run
it a few times.
17. processing time
v4 tests use 18 metricd for 3x8
aggregates/metric, v2 and v3
tests, use 72 and 54 metricd
respectively
time to
aggregate
all
measures
according to
policy.
(lower is
better)
18. aggregation time
time to
aggregate 60
measures of
a metric into
3x8
aggregates
(lower is
better)
average time reflects a
combination of scheduling
efficiency, computation
efficiency and IO performance.
19. test case 3
500 resources, 20 metrics
each. flood Gnocchi with
720 batched points per
metric. 10K calls/run. run
it a few times.
21. aggregation time
time to
aggregate 720
measures of a
metric into
3x8
aggregates
(lower is
better)
computation efficiency improved
for larger series. ~3x
improvement for 60 points and
~6x improvement for 720 points
24. time to
retrieve a
single time
series using
curl and
client
(lower is
better)
query time
client overhead attributed to
but not limited to formatting
no significant performance
difference vs v3