У меня есть один вопрос о производительности «ORDER BY» в Couchbase 4 Beta (Ubuntu 64bits).
Я создаю ведро «тестирование» и первичный индекс:
CREATE PRIMARY INDEX `testing-idx` ON `testing` USING GSI;
И второй индекс:
CREATE INDEX testing_field_value_idx ON `testing`(field_value) USING GSI
В моем ведре есть такие предметы, как:
{
"type": "entry",
"field_name": "field-testing",
"field_value": "1 bla bla bla bla bla bla bla bla"
},
{
"type": "entry",
"field_name": "field-testing",
"field_value": "2 bla bla bla bla bla bla bla bla"
},
{
"type": "entry",
"field_name": "field-testing",
"field_value": "3 bla bla bla bla bla bla bla bla"
}
...
Когда я выполняю запрос без ORDER BY, ответ быстрый (миллисекунды):
SELECT field_value FROM testing LIMIT 10;
1.000 items: 53 ms
100.000 items: 82 ms
Но когда я выполняю запрос с ORDER BY, ответ медленный (секунды):
SELECT field_value FROM testing ORDER BY field_value ASC LIMIT 10;
1.000 items: 4.6 secs
100.000 items: 6.2 secs
Как повысить производительность с помощью ORDER BY?
** Все запросы выполняются в "cbq".