#database #couchbase
#База данных #couchbase
Вопрос:
Я новичок в Couchbase и задаюсь вопросом, есть ли какой-либо способ реализовать параллельное чтение из корзины. Учитывая это, по умолчанию корзина содержит 1024 vbuckets. Итак, возможно ли разделить запрос N1QL select * из b1 на несколько запросов? Это означает, что один из этих запросов просто считывает данные из vbucket1 в vbucket100. Поскольку ключ раздела используется для определения того, на каком узле должно сохраняться значение. Я думаю, что можно было бы прочитать часть данных из корзины в соответствии с диапазоном ключей раздела. Может ли кто-нибудь помочь мне с этим?
Спасибо
Ответ №1:
Я не рекомендую идти по этому пути. Если вы только начинаете, вам следует беспокоиться о том, как представлять ваши данные в формате JSON, как писать к нему эффективные запросы N1QL и как получить полезный набор индексов, которые поддерживают эти запросы и позволяют им быстро выполняться. Вы также должны убедиться, что ваш кластер правильно настроен, и у вас есть надлежащее сочетание узлов KV, N1QL и индексирования, ни один из которых не является очевидным узким местом. И, конечно, вы должны измерять производительность. После этого должны появиться экзотические стратегии, такие как разбиение запросов на разделы, если вы все еще не удовлетворены производительностью.
Комментарии:
1. Спасибо за ответ. На самом деле, я вношу свой вклад в Apache Beam и просто хочу знать, возможно ли выполнить параллельное чтение.
2. N1QL параллельно извлекает документы из KV. Оформить заказ dzone.com/articles/new-performance-tricks-with-n1ql
3. Большое спасибо за ссылку.