Пожалуйста, не обращайте внимания на вышеуказанный бенчмарк, внутри которого была ошибка.
У нас есть записи Insert 1M со следующими столбцами: id (int), status (int), message (140 символов, random).
Все тесты проводились с драйвером C ++ на настольном ПК i5 с диском Sata 500 ГБ.
Тест с MongoDB :
1M Вставка записей без индекса
time: 23s, insert/s: 43478
1M Вставка записей с индексом на Id
time: 50s, insert/s: 20000
затем мы добавляем 1M записей в ту же таблицу с индексом и 1M записей
time: 78s, insert/s: 12820
, что приводит к тому, что на fs почти 4Гб файлов.
Тест с MySQL :
1M Вставка записей без индекса
time: 49s, insert/s: 20408
1M Вставка записей с индексом
time: 56s, insert/s: 17857
затем мы добавляем 1M записей в ту же таблицу с индексом и 1M записей
time: 56s, insert/s: 17857
точно такая же производительность, без потерь на MySQL при росте
Мы видим, что Mongo съел около 384 МБ ОЗУ во время этого теста и загрузил 3 ядра процессора, MySQL был доволен 14 МБ и загрузил только 1 ядро.
Эдориан был на правильном пути со своим предложением, я сделаю еще несколько тестов, и я уверен, что мы можем достичь на 2x четырехъядерных серверах со скоростью 50 тыс. Вставок / сек.
Я думаю, что MySQL будет правильным решением.