Commit ecbfd96a authored by Valentin Skripnikov's avatar Valentin Skripnikov

-

parent 26230c50
...@@ -97,131 +97,124 @@ Kibana со своим кодом, как используемое поле. ...@@ -97,131 +97,124 @@ Kibana со своим кодом, как используемое поле.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Одна единица данных в индексе Elasticsearch называется *Документ*. Документ содержит Одна единица данных в индексе Elasticsearch называется *Документ*. Документ содержит
поля определённых [типов](https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-types.html). поля определённых `типов <https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-types.html>`_.
Каждый документ в текущем индексе соответствует одной единице данных по форме (=файлу по форме, Каждый документ в текущем индексе соответствует одной единице данных по форме (=файлу по форме,
записи реестра) и содержит следующие поля: записи реестра) и содержит следующие поля:
- `asfDataId` - идентификатор данных по форме, тип `keyword`; - ``asfDataId`` - идентификатор данных по форме, тип ``keyword``;
- `formId` - идентификатор формы, тип `keyword`; - ``formId`` - идентификатор формы, тип ``keyword``;
- `formCode` - код формы, тип `keyword`; - ``formCode`` - код формы, тип ``keyword``;
- `registryId` - идентификатор реестра, тип `keyword` (содержит значение `-1` для данных по - ``registryId`` - идентификатор реестра, тип ``keyword`` (содержит значение ``-1`` для данных по
форме, не связанных с реестром); форме, не связанных с реестром);
- `documentId` - идентификатор документа Synergy, тип `keyword`; - ``documentId`` - идентификатор документа Synergy, тип ``keyword``;
- `status` - статус записи реестра, тип `number`: - ``status`` - статус записи реестра, тип ``number``:
- 0 - "Подготовка" (`NO_ROUTE`) - это значение также устанавливается для данных по форме, - 0 - "Подготовка" (``NO_ROUTE``) - это значение также устанавливается для данных по форме,
не связанных с реестром не связанных с реестром
- 1 - "В процессе" (`STATE_NOT_FINISHED`) - 1 - "В процессе" (``STATE_NOT_FINISHED``)
- 2 - "Активная" (`STATE_SUCCESSFUL`) - 2 - "Активная" (``STATE_SUCCESSFUL``)
- 3 - "Неуспешная" (`STATE_UNSUCCESSFUL`) - 3 - "Неуспешная" (``STATE_UNSUCCESSFUL``)
- `deleted` - признак удаления записи реестра (0 - не удалено, 1 - удалено), тип `number` - ``deleted`` - признак удаления записи реестра (0 - не удалено, 1 - удалено), тип ``number``
(0 для данных по форме, не связанных с реестром); (0 для данных по форме, не связанных с реестром);
- `created` - дата и время создания данных по форме, тип `date`; - ``created`` - дата и время создания данных по форме, тип ``date``;
- `modified` - дата и время изменения данных по форме, тип `date`. - ``modified`` - дата и время изменения данных по форме, тип ``date``.
Далее следуют поля, соответствующие компонентам формы: Далее следуют поля, соответствующие компонентам формы:
- Для каждого компонента формы создаётся несколько полей документа в индексе. - Для каждого компонента формы создаётся несколько полей документа в индексе.
- Название полей, соответствующих компоненту формы, формируется так: - Название полей, соответствующих компоненту формы, формируется так:
`идентфикаторкомпонентаформывнижнемрегистре_key_постфикс` и ``идентфикаторкомпонентаформывнижнемрегистре_key_постфикс`` и
`идентфикаторкомпонентаформывнижнемрегистре_value_постфикс` (данные для которых берутся, ``идентфикаторкомпонентаформывнижнемрегистре_value_постфикс`` (данные для которых берутся,
соответственно, из полей соответственно, из полей ``key`` и ``value`` данных по форме).
[key и value](../../architecture/html/modules.html#components_format)
данных по форме).
- Для каждого поля `*_key` и `*_value` создаются поля с нижеперечисленными постфиксами. - Для каждого поля ``*_key`` и ``*_value`` создаются поля с нижеперечисленными постфиксами.
- Для компонентов, находящихся внутри динамической таблицы, а также компонентов с - Для компонентов, находящихся внутри динамической таблицы, а также компонентов с
мультивыбором ("Объекты Synergy"), значения записываются в мультивыбором ("Объекты Synergy"), значения записываются в
[`массив`](https://www.elastic.co/guide/en/elasticsearch/reference/current/array.html) `массив <https://www.elastic.co/guide/en/elasticsearch/reference/current/array.html>`_
для всех постфиксов с учетом типов компонентов. для всех постфиксов с учетом типов компонентов.
- Для компонентов, имеющих `key` и `value`, создается общее поле `*_object` - Для компонентов, имеющих ``key`` и ``value``, создается общее поле ``*_object``
([`Object`](https://www.elastic.co/guide/en/elasticsearch/reference/5.3/object.html)). (`Object <https://www.elastic.co/guide/en/elasticsearch/reference/5.3/object.html)`_).
*Постфиксы для полей `*_key`:* *Постфиксы для полей ``*_key``:*
- `_exact` - поле содержит значение `key`, приведенное к нижнему регистру, тип `keyword`; - ``_exact`` - поле содержит значение ``key``, приведенное к нижнему регистру, тип ``keyword``;
- `_sort` - поле содержит точное значение `key`, тип `keyword`; - ``_sort`` - поле содержит точное значение ``key``, тип ``keyword``;
- `_number` - поле содержит значение `key`, приведенное к числу, тип `number`; - ``_number`` - поле содержит значение ``key``, приведенное к числу, тип ``number``;
>> **Примечание:** .. note:: Если поле ``key`` в документе пусто, в данное поле будет записано максимальное
значение для типа ``long``: 9 223 372 036 854 775 807
>> Если поле `key` в документе пусто, в данное поле будет записано максимальное - ``_date`` - поле содержит значение ``key``, приведенное к дате; поле присутствует только для
значение для типа `long`: 9 223 372 036 854 775 807 компонентов Synergy типа "Дата/время"; тип ``date``;
- `_date` - поле содержит значение `key`, приведенное к дате; поле присутствует только для - ``_double`` - поле содержит значение ``key``, приведенное к числу, тип ``double``;
компонентов Synergy типа "Дата/время"; тип `date`;
- `_double` - поле содержит значение `key`, приведенное к числу, тип `double`; .. note:: Данное поле создается только в том случае, если из значения ``key`` удалось
выделить число (т.е. есть хотя бы один документ, использующий это поле,
содержит числовое значение);
>> **Примечание:** - пустой постфикс - поле содержит n-граммы значения ``key``, через пробел, тип ``text``.
>> Данное поле создается только в том случае, если из значения `key` удалось *Постфиксы для полей ``*_value``:*
выделить число (т.е. есть хотя бы один документ, использующий это поле,
содержит числовое значение);
- пустой постфикс - поле содержит n-граммы значения `key`, через пробел, тип `text`. - ``_exact`` - поле содержит значение ``value``, приведенное к нижнему регистру, тип ``keyword``;
*Постфиксы для полей `*_value`:* - ``_sort`` - поле содержит точное значение ``value``, тип ``keyword``;
- `_exact` - поле содержит значение `value`, приведенное к нижнему регистру, тип `keyword`; - ``_number`` - поле содержит значение ``value``, приведенное к числу, тип ``number``;
- `_sort` - поле содержит точное значение `value`, тип `keyword`; .. note:: Если поле ``key`` в документе пусто, в данное поле будет записано максимальное
значение для типа ``long``: 9 223 372 036 854 775 807
- `_number` - поле содержит значение `value`, приведенное к числу, тип `number`; - ``_prefix`` - поле содержит возможные префиксы из значения ``value``, через пробел, тип ``text``;
>> **Примечание:** - ``_postfix`` - поле содержит возможные постфиксы из значения ``value``, через пробел, тип ``text``;
>> Если поле `key` в документе пусто, в данное поле будет записано максимальное - пустой постфикс - поле содержит n-граммы значения ``value``, через пробел, тип ``text``.
значение для типа `long`: 9 223 372 036 854 775 807
- `_prefix` - поле содержит возможные префиксы из значения `value`, через пробел, тип `text`; Индексы изменения данных (историчные индексы)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- `_postfix` - поле содержит возможные постфиксы из значения `value`, через пробел, тип `text`;
- пустой постфикс - поле содержит n-граммы значения `value`, через пробел, тип `text`.
##### Индексы изменения данных (историчные индексы) {#sec.dashboards_form_indexator_history}
Индексы изменения данных создаются только для тех форм и реестров, коды которых подпадают Индексы изменения данных создаются только для тех форм и реестров, коды которых подпадают
под шаблоны (секции в конфигурационном файле `arta/elasticConfiguration.xml`, см. описание выше). под шаблоны (секции в конфигурационном файле ``arta/elasticConfiguration.xml``, см. описание выше).
Имя индекса `<index-prefix>-rh-someRegistryID` и `<index-prefix>-fh-someFormID`, для реестров и Имя индекса ``<index-prefix>-rh-someRegistryID`` и ``<index-prefix>-fh-someFormID``, для реестров и
форм, соответственно. Alias-ы: `rh-нормализованный_код_реестра` и `fh-нормализованный_код_формы`. форм, соответственно. Alias-ы: ``rh-нормализованный_код_реестра`` и ``fh-нормализованный_код_формы``.
Отличие индексов изменения данных от текущих индексов - на каждое изменение данных по форме Отличие индексов изменения данных от текущих индексов - на каждое изменение данных по форме
создаётся новый документ в индексе. Кроме этого, для компонентов формы создаются только поля создаётся новый документ в индексе. Кроме этого, для компонентов формы создаются только поля
со следующими постфиксами: со следующими постфиксами:
- Для `*_key`: - Для ``*_key``:
- `_exact` - ``_exact``
- `_number` - ``_number``
- `_date` - ``_date``
- `_double` - ``_double``
- Для `*_value`: - Для ``*_value``:
- `_exact` - ``_exact``
- `_number` - ``_number``
Типы данных и условия создания полей такие же, как и в текущем индексе. Типы данных и условия создания полей такие же, как и в текущем индексе.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment