HBase-indexer & Solr: НЕ найдены данные

В настоящее время я использую hbase-indexer для индексации hbase в solr. Когда я выполняю команду foolowing, чтобы проверить индексатор,

hbase-indexer$ bin/hbase-indexer list-indexers --zookeeper 127.0.0.1:2181

В результате сказано, что:

myindexer
+ Lifecycle state: ACTIVE 
+ Incremental indexing state: SUBSCRIBE_AND_CONSUME
+ Batch indexing state: INACTIVE
+ SEP subscription ID: Indexer_myindexer
+ SEP subscription timestamp: 2017-01-24T13:15:48.614+09:00
+ Connection type: solr
+ Connection params:
  + solr.zk = localhost:2181/solr
  + solr.collection = tagcollect
+ Indexer config:
    222 bytes, use -dump to see content
+ Indexer component factory:     
com.ngdata.hbaseindexer.conf.DefaultIndexerComponentFactory
+ Additional batch index CLI arguments:
  (none)
+ Default additional batch index CLI arguments:
  (none)
+ Processes
  + 1 running processes
  + 0 failed processes

Я думаю, что hbase-indexer работает хорошо, как показано выше, потому что он отображается как + 1 запущенных процессов (до этого я уже выполнял демон hbase-indexer командой: ~$ bin/hbase-indexer server)

Для теста я вставил данные в Hbase через команду put и проверил, что данные были вставлены.

Но Solr Qry сказал следующее: (Нет записи)

Желаю поделиться своими знаниями и опытом, связанными с этим. Спасибо.

{
"responseHeader":{
"zkConnected":true,
"status":0,
"QTime":7,
"params":{
  "q":"*:*",
  "indent":"on",
  "wt":"json",
  "_":"1485246329559"}},
"response":{"numFound":0,"start":0,"maxScore":0.0,"docs":[]
}}

1 ответ

Решение

Мы столкнулись с той же проблемой.

Как вы говорите, у экземпляра есть хорошее здоровье, ниже приведены причины, по которым он не будет работать.

  • Во-первых, если "Запись вперед журнала" (WAL) отключен (может быть из-за соображений производительности записи), то ваши путы не будут создавать документы solr.

Индексатор Hbase NRT работает на WAL. если он отключен, то он не будет создавать документы Solr.

  • Второй причиной могут быть конфигурации mophiline, если они не верны, то это не будет создавать документы solr

Тем не менее, я бы посоветовал написать пользовательские программы mapreduce (или также и рабочие задания) для индексирования документов solr путем чтения данных hbase (если не в режиме реального времени, это означает, что когда вы вставляете данные в hbase, они сразу не отражаются после mapreduce) Solr Indexer запускает документы Solr будут созданы)

Другие вопросы по тегам