0

使用 tarantool 版本: Tarantool 1.6.8-586-g504e151 它是从 epel 安装的。我在 sphia 模式下使用 tarantool:

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:select({'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
4

2 回答 2

1

Sophia 引擎已被弃用,因为1.7.x. 请使用vinyl引擎代替它。

请查看更多详细信息:https ://www.tarantool.io/en/doc/1.10/book/box/engines/vinyl/

于 2019-06-24T10:53:45.060 回答
0

在使用agent-0007直接进行现场帮助和调试后,我们发现了几个问题。

它们中的大多数都与缓慢的虚拟环境有关(使用了 openvz),这表明 pread() 停顿和 io 计时不足。

此外,我们还发现了两个集成问题:

https://github.com/tarantool/tarantool/issues/1411(eio_finish中的 SIGSEGV) https://github.com/tarantool/tarantool/issues/1401(使用 sophia 的 upsert 应用程序回调函数中的错误)

谢谢。

于 2016-03-28T10:33:10.900 回答