while operating swift service in public environment, we are tackled several necessary feature extensions: - s3 full compatibility - server side encryption like aws - large container problem - near realtime sync for container to container sync
We would like to gather all swift related players (current commercial service provider, system integrator, solution builder, etc) to share what technical requirements they gets from the customers. Furthermore, selecting some high demand features to build Havana roadmap, and identifying who can work together for each feature development.
We are analyzing the workload generated at the disk drive level on Swift clusters. The includes analysis such as the following. - load versus time - spatio-temporal locality - heat density - operation types - operation correlation by spatial area (block address) - operation lengths including simple sequential sequences
Due to the awesome* state of async disk IO on Linux, the object server doesn't do a very good job of keeping large numbers of disks busy. Let's figure out how to make it better on boxes with lots of disks.
We did a deep dive Swift performance analysis. In this session, we will demonstrate our data, describe several possible performance bottleneck and propose relative optimization proposal.
The swift-bench tool that ships with Swift is a relatively simple load-generator, but deployers evaluating Swift need more.
I've written a new Swift benchmark tool, ssbench (https://github.com/swiftstack/ssbench/#what-is-this), but there's also COSBench, and probably some other home-grown benchmarking tools folks are using.
I'd like to put our heads together and discuss:
* What Swift benchmarks should evaluate/track (request duration, time-to-first-byte for GETs, etc.) * How to scale benchmarking to Swift clusters containing many nodes (both from high req/s with small requests to effectively saturating the network bandwidth of many, many 10G-attached storage servers) * How to track/report on server-side metrics during benchmark runs (e.g. a StatsD server integrated with the benchmarking tool which collects stats from Swift nodes during a benchmark and reports on those as well as client-side metrics in the first bullet, above)