Tarantool sphia делает медленные выборки?

Используйте версию Tarantool: Tarantool 1.6.8-586-g504e151 Устанавливается из epel. Я использую tarantool в режиме sphia:

log_space = box.schema.space.create('logs',
    {
        engine = 'sophia',
        if_not_exists = true
    }
)

log_space:create_index('primary', {
        parts = {1, 'STR'}
    }
)

У меня есть 500 000 записей и я делаю запрос на выбор:

box.space.logs: выберите ({'log_data'})

это занимает около 1 мин. Почему так медленно?

unix/:/var/run/tarantool/g_sofia.control> box.stat()
—-
- DELETE:
    total: 0
    rps: 0
  SELECT:
    total: 587575
    rps: 25
  INSERT:
    total: 815315
    rps: 34
  EVAL:
    total: 0
    rps: 0
  CALL:
    total: 0
    rps: 0
  REPLACE:
    total: 1
    rps: 0
  UPSERT:
    total: 0
    rps: 0
  AUTH:
    total: 0
    rps: 0
  ERROR:
    total: 23
    rps: 0
  UPDATE:
    total: 359279
    rps: 17

person agent-0007    schedule 25.03.2016    source источник


Ответы (2)


После прямой помощи на месте и отладки с агентом-0007 мы обнаружили несколько проблем.

Большинство из них были связаны с медленной виртуальной средой (использовался openvz), которая показывает неадекватные задержки pread() и тайминги ввода-вывода.

Кроме того, мы обнаружили две проблемы интеграции:

https://github.com/tarantool/tarantool/issues/1411 (SIGSEGV в eio_finish ) https://github.com/tarantool/tarantool/issues/1401 (Ошибка в функция обратного вызова upsert applier с использованием sophia)

Спасибо.

person Dmitry S.    schedule 28.03.2016

Движок Sophia устарел с 1.7.x . Пожалуйста, используйте движок vinyl вместо него.

Пожалуйста, ознакомьтесь с более подробной информацией: https://www.tarantool.io/en/doc/1.10/book/box/engines/vinyl/

person Nick Karlov    schedule 24.06.2019