Как создать поисковый индекс с помощью DSE search 6.8 - PullRequest
0 голосов
/ 15 апреля 2020

Я работаю с Datastax 6.7 уже пару месяцев. Создание поискового индекса с графиком classi c требует создания схемы. xml и Solrconfig. xml через solr admin, что прекрасно работает. Но когда я обновился до DSE 6.8, мне нужно создать поисковый индекс, используя Datastax Studio 6.8. Я был в состоянии создать VertexLabels, materializedView и secondIndex. Но я не могу создать поисковый индекс.

Это мой код для создания поискового индекса,

  schema.vertexLabel('location').
  searchIndex().
  ifNotExists().
  by('geo_point').
  waitForIndex(3000).
  create()

Это ошибка, которую я получаю,

java.lang.IllegalStateException: Could not create search index for vertex label 'location' in graph 'food_cql'. RELOAD or REBUILD failed for search index on 'food_cql.location'. Failed to reload search index food_cql.location because: No resource solrconfig.xml for core food_cql.location, did you miss to upload it?

1 Ответ

0 голосов
/ 24 апреля 2020

Мне удалось успешно создать графическое ядро ​​и индекс поиска с помощью этих команд.

CREATE KEYSPACE IF NOT EXISTS geo WITH replication = {'class': 'SimpleStrategy', 'replication_factor' : 2};

CREATE TABLE IF NOT EXISTS geo.states (
state text,
fips int,
pop  int,
geo   text,
solr_query text,
PRIMARY KEY (state)
)WITH VERTEX LABEL states_label;

вам нужно будет указать схему и конфигурационный файл Solr, как это на узле поиска:

dsetool create_core ks_name.table_name schema=/path/to/schema.xml solrconfig=/path/to/solrconfig.xml

Вы можете запустить эти команды, чтобы проверить, что они были загружены:

dsetool get_core_schema

dsetool get_core_config

Вы можете запустить эту команду, чтобы проверить состояние ядер:

dsetool core_indexing_status -all

Вставьте данные,

INSERT INTO geo.states (state, fips, geo, pop) VALUES ('Idahonew',60, 'POLYGON ((-116.04751 49.000239, -116.04751 47.976051, -115.724371 47.696727))', 3594);

Выполните ваши запросы, как показано ниже:

select * FROM geo.states

g.V().hasLabel('states_label')
...