Команда ReQL: runNoReply
Синтаксис команды
query.runNoReply(conn[, optArgs])
Описание
Выполняет запрос на подключении и немедленно возвращается, не дожидаясь возвращения данных результата от сервера.
Можно передать следующие опции, используя optArg. Обратите внимание, что в отличие от других команд Java ReQL, необходимо создать объект OptArg и передать его в качестве необязательного второго аргумента к run:
import com.rethinkdb.model.OptArgs;
r.table("table").runNoReply(conn, OptArgs.of("read_mode", "outdated"));
// for two or more optArgs, use "with"
r.table("table").runNoReply(conn,
OptArgs.of("read_mode", "outdated").with("db", "database"));
-
read_mode: Одно из трёх возможных значений, влияющих на гарантию согласованности запроса (по умолчанию:'single').-
'single'(по умолчанию) возвращает значения, которые находятся в памяти (но необязательно записаны на диск) на первичной реплике. -
'majority'вернёт только значения, которые безопасно сохранены на диске на большинстве реплик. Это требует отправки сообщения каждой реплике при каждом чтении, поэтому это самый медленный, но наиболее согласованный вариант. -
'outdated'вернёт значения, которые находятся в памяти на произвольно выбранной реплике. Это самый быстрый, но наименее согласованный вариант.
-
-
time_format: формат возвращаемого времени (по умолчанию:native). Установите значение вrawесли необходимо, чтобы время возвращалось в формате JSON-объектов для экспорта. -
profile: требуется ли вернуть профиль выполнения запроса (по умолчанию:false). -
durability: возможные значенияhardиsoft. В режиме мягкой долговечности RethinkDB подтвердит запись сразу после её получения, но до того, как запись будет сохранена на диск. -
group_format: формат возвратаgrouped_dataиgrouped_streams(по умолчанию:native). Установите значение вrawесли требуется получить необработанный псевдотип. -
db: база данных для выполнения запроса в виде строки. По умолчанию используется база данных, указанная в методеdbподключения (по умолчаниюtest). База данных также может быть указана командой db. -
array_limit: максимальное количество элементов массива, которое может возвратить запрос (по умолчанию 100 000). Это влияет на все команды ReQL, возвращающие массивы. Обратите внимание, что это не влияет на размер массивов, записываемых в базу данных; для них всегда установлен верхний предел в 100 000 элементов. -
binary_format: формат возвращаемых двоичных данных (по умолчанию:native). Установите значение вrawесли требуется получить необработанный псевдотип. -
min_batch_rows: минимальное количество строк, ожидаемых перед объединением набора результатов (по умолчанию 8). Это целое число. -
max_batch_rows: максимальное количество строк, ожидаемых перед объединением набора результатов (по умолчанию нет предела). Это целое число. -
max_batch_bytes: максимальное количество байтов, ожидаемых перед объединением набора результатов (по умолчанию 1 МБ). Это целое число. -
max_batch_seconds: максимальное время в секундах ожидания перед объединением набора результатов (по умолчанию 0,5). Это число с плавающей точкой (а не целое число), и может быть указано с микросекундами. -
first_batch_scaledown_factor: коэффициент для уменьшения других параметров в первом наборе (по умолчанию 4). Например, если это значение установлено в 8, аmax_batch_rowsустановлено в 80, в первом набореmax_batch_rowsбудет скорректировано до 10 (80 / 8). Это позволяет быстрее возвращать первый набор.
Пример: Отправить запись и немедленно вернуть.
r.table("marvel").insert(document).runNoReply(conn);
Пример: Если необходимо указать, ожидать ли записи на диске (переопределяя настройки таблицы по умолчанию), можно установить durability в hard или soft в параметрах.
r.table("marvel").insert(r.hashMap("superhero", "Iron Man")
.with("superpower", "Arc Reactor"))
.runNoReply(conn, OptArgs.of("durability", "soft"));
Для получения дополнительных примеров, обратитесь к документации API для run; доступные optArgs одинаковы, и любой запрос можно выполнить с помощью runNoReply вместо run (хотя runNoReply обычно не подходит для запросов чтения).
© RethinkDB contributors
Licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
https://rethinkdb.com/api/java/run_noreply/