2014-05-23 3 views
0

У меня есть сомнения относительно обновления документа solr. Например, когда два запроса на обновление документа в solr поступают одновременно, как работает solr?Несколько обновлений одновременно на одном документе в solr

  • Требуется ли случайный запрос и блокировка записи до того, как поступит следующий запрос?

Заранее спасибо

ответ

1

Существуют различные механизмы блокировки, как указано в Lucene locking factory docs. По умолчанию используется NativeFSLockFactory, в котором блокируется блокировка файла для индексируемого документа. Настройки с помощью другого запорного механизма могут быть изменены в solrconfig.xml

Вот отрывок из solconfig.xml

<!-- LockFactory 

    This option specifies which Lucene LockFactory implementation 
    to use. 

    single = SingleInstanceLockFactory - suggested for a 
       read-only index or when there is no possibility of 
       another process trying to modify the index. 
    native = NativeFSLockFactory - uses OS native file locking. 
       Do not use when multiple solr webapps in the same 
       JVM are attempting to share a single index. 
    simple = SimpleFSLockFactory - uses a plain file for locking 

    Defaults: 'native' is default for Solr3.6 and later, otherwise 
       'simple' is the default 

    More details on the nuances of each LockFactory... 
    http://wiki.apache.org/lucene-java/AvailableLockFactories 
--> 
<lockType>${solr.lock.type:native}</lockType> 
1

Вы говорите о физических замках или логическом контроле версий? Для управления логической версией Solr 4+ поддерживает оптимистичный параллелизм с использованием версии.

Вы можете прочитать об этом:

  1. Official documentation
  2. Detailed writeup
Смежные вопросы