Класс yii\elasticsearch\BatchQueryResult
| Наследование | yii\elasticsearch\BatchQueryResult » yii\base\Object |
|---|---|
| Реализует | Iterator, yii\base\Configurable |
| Доступно с версии | 2.0.4 |
| Исходный код | https://github.com/yiisoft/yii2-elasticsearch/blob/master/BatchQueryResult.php |
BatchQueryResult представляет пакетный запрос, из которого можно извлекать данные партиями.
Обычно BatchQueryResult не следует создавать напрямую. Вместо этого, его получают, вызывая yii\elasticsearch\Query::batch() или yii\elasticsearch\Query::each(). Поскольку BatchQueryResult реализует интерфейс Iterator, его можно перебирать, чтобы получить пакет данных на каждой итерации.
Размер пакета определяется значением yii\elasticsearch\Query::$limit. Значение yii\elasticsearch\Query::$offset игнорируется. Новые пакеты будут извлекаться до тех пор, пока на сервере не закончатся результаты.
Если параметр yii\elasticsearch\Query::$orderBy не задан, пакеты будут обрабатываться в высокоэффективном режиме "scan". В этом случае, значение yii\elasticsearch\Query::$limit определяет размер пакета на каждый фрагмент. Подробнее см. руководство Elasticsearch.
Пример: `php $query = (new Query)->from('user'); foreach ($query->batch() as $i => $users) {
// $users represents the rows in the $i-th batch
} foreach ($query->each() as $user) { } `
Общедоступные свойства
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| $db | yii\elasticsearch\Connection | Подключение к БД, используемое при выполнении пакетного запроса. | yii\elasticsearch\BatchQueryResult |
| $each | boolean | Возвращать ли одну строку на каждой итерации. | yii\elasticsearch\BatchQueryResult |
| $query | yii\elasticsearch\Query | Объект запроса, связанный с этим пакетным запросом. | yii\elasticsearch\BatchQueryResult |
| $scrollWindow | string | Время, в течение которого будет открыто окно прокрутки (в единицах времени ElasticSearch(https://www. | yii\elasticsearch\BatchQueryResult |
Общедоступные методы
| Метод | Описание | Определено в |
|---|---|---|
| __call() | Вызывает метод, который не является методом класса. | yii\base\Object |
| __construct() | Конструктор. | yii\base\Object |
| __destruct() | Деструктор. | yii\elasticsearch\BatchQueryResult |
| __get() | Возвращает значение свойства объекта. | yii\base\Object |
| __isset() | Проверяет, установлено ли свойство (определено и не равно null). | yii\base\Object |
| __set() | Устанавливает значение свойства объекта. | yii\base\Object |
| __unset() | Устанавливает свойство объекта в значение null. | yii\base\Object |
| canGetProperty() | Возвращает значение, указывающее, можно ли считать свойство. | yii\base\Object |
| canSetProperty() | Возвращает значение, указывающее, можно ли установить свойство. | yii\base\Object |
| className() | Возвращает полное имя этого класса. | yii\base\Object |
| current() | Возвращает текущий набор данных. | yii\elasticsearch\BatchQueryResult |
| hasMethod() | Возвращает значение, указывающее, определен ли метод. | yii\base\Object |
| hasProperty() | Возвращает значение, указывающее, определено ли свойство. | yii\base\Object |
| init() | Инициализирует объект. | yii\base\Object |
| key() | Возвращает индекс текущего набора данных. | yii\elasticsearch\BatchQueryResult |
| next() | Перемещает внутренний указатель к следующему набору данных. | yii\elasticsearch\BatchQueryResult |
| reset() | Сбрасывает пакетный запрос. | yii\elasticsearch\BatchQueryResult |
| rewind() | Сбрасывает итератор в исходное состояние. | yii\elasticsearch\BatchQueryResult |
| valid() | Возвращает значение, указывающее, существует ли допустимый набор данных в текущей позиции. | yii\elasticsearch\BatchQueryResult |
Защищенные методы
| Метод | Описание | Определено в |
|---|---|---|
| fetchData() | Извлекает следующий пакет данных. | yii\elasticsearch\BatchQueryResult |
Подробное описание свойств
$db общедоступное свойство
Подключение к БД, используемое при выполнении пакетного запроса. Если null, будет использоваться компонент elasticsearch приложения.
public yii\elasticsearch\Connection $db = null
$each общедоступное свойство
Возвращать ли одну строку на каждой итерации. Если false, на каждой итерации будет возвращаться весь пакет строк.
public boolean $each = false
$query общедоступное свойство
Объект запроса, связанный с этим пакетным запросом. Не изменяйте это свойство напрямую, если это не нужно после явного вызова reset().
public yii\elasticsearch\Query $query = null
$scrollWindow общедоступное свойство
Время, в течение которого будет открыто окно прокрутки (в единицах времени ElasticSearch time units.
public string $scrollWindow = '1m'
Подробное описание методов
__destruct() public method
Деструктор.
| public void __destruct ( ) |
|---|
current() public method
Возвращает текущий набор данных.
Этот метод требуется интерфейсом Iterator.
| public mixed current ( ) | ||
|---|---|---|
| return | mixed |
Текущий набор данных. |
fetchData() protected method
Извлекает следующий пакет данных.
| protected array fetchData ( ) | ||
|---|---|---|
| return | array |
Извлеченные данные |
key() public method
Возвращает индекс текущего набора данных.
Этот метод требуется интерфейсом Iterator.
| public integer key ( ) | ||
|---|---|---|
| return | integer |
Индекс текущей строки. |
next() public method
Перемещает внутренний указатель к следующему набору данных.
Этот метод требуется интерфейсом Iterator.
| public void next ( ) |
|---|
reset() public method
Сбрасывает пакет запроса.
Этот метод очистит существующий пакет запроса, чтобы можно было выполнить новый.
| public void reset ( ) |
|---|
rewind() public method
Сбрасывает итератор в начальное состояние.
Этот метод требуется интерфейсом Iterator.
| public void rewind ( ) |
|---|
valid() public method
Возвращает, существует ли допустимый набор данных в текущей позиции.
Этот метод требуется интерфейсом Iterator.
| public boolean valid ( ) | ||
|---|---|---|
| return | boolean |
Существует ли допустимый набор данных в текущей позиции. |
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc-2.0/yii-elasticsearch-batchqueryresult.html