2022-09-23 20:50:50 +00:00
library ( tidyverse )
read_csv ( " garage-v0.7.csv" ) %>% add_column ( daemon = " garage 0.7.3" ) -> a
read_csv ( " garage-v0.8.csv" ) %>% add_column ( daemon = " garage 0.8.0 beta" ) -> b
read_csv ( " minio-20220917.csv" ) %>% add_column ( daemon = " minio RELEASE.2022-09-17" ) -> c
bind_rows ( a , b , c ) %>% mutate ( ms = nanoseconds / 1000 / 1000 ) -> d
ggplot ( d , aes ( y = ms , group = daemon , fill = daemon ) ) +
#geom_violin(trim = TRUE, width=2) +
2022-09-23 20:56:05 +00:00
geom_histogram ( binwidth = 50 , color = " black" ) +
2022-09-23 20:50:50 +00:00
scale_y_continuous ( expand = c ( 0 , 0 ) ) +
scale_x_continuous ( expand = c ( 0 , 0 ) ) +
coord_flip ( ) +
labs (
y = " TTFB (ms)" ,
x = " Count" ,
fill = " Daemon" ,
caption = " Get the code to reproduce this graph at https://git.deuxfleurs.fr/Deuxfleurs/mknet" ,
2022-09-23 20:53:35 +00:00
title = " TTFB (Time To First Byte) on GetObject over a slow network (5 Mbps, 500 µs)" ,
2022-09-23 20:50:50 +00:00
subtitle = " A 1MB file is uploaded and then fetched 60 times.\nExcept for Minio, the queried node does not store any data (gateway) to force net. communications." ) +
theme_classic ( ) +
theme ( legend.position = c ( .15 , .8 ) )
ggsave ( " ./plot.png" , width = 200 , height = 110 , units = " mm" )