我制作了一个索引"用户名"使用定制的分析仪,称为“自动完成”':
client.indices.create({
index: 'user-name',
type: 'text',
settings: {
analysis: {
filter: {
autocomplete_filter: {
type: 'edge-ngram',
min_gram: 1,
max_gram: 20
}
},
analyzer: {
autocomplete: {
type: 'custom',
tokenizer: 'standard',
filter: [
'lowercase',
'autocomplete_filter'
]
}
}
}
}
}
然后我尝试通过尝试在映射中使用它来引用这个自定义分析器:
client.indices.putMapping({
index: 'user-name',
type: 'text',
body: {
properties: {
name: {
type: 'string',
analyzer: 'autocomplete',
search_analyzer: 'standard'
}
}
}
})
然后我收到了这个错误:"原因":"找不到字段[name]"的分析器[autocomplete]。为什么我的自动完成分析仪没有被检测到?感谢。
答案 0 :(得分:1)
你快到了。您只需将索引body
放在client.indices.create({
index: 'user-name',
type: 'text',
body: {
settings: {
analysis: {
filter: {
autocomplete_filter: {
type: 'edge-ngram',
min_gram: 1,
max_gram: 20
}
},
analyzer: {
autocomplete: {
type: 'custom',
tokenizer: 'standard',
filter: [
'lowercase',
'autocomplete_filter'
]
}
}
}
}
}
}
参数中:
CREATE TRIGGER test
ON Table_1
INSTEAD OF INSERT, UPDATE, DELETE
AS
BACKUP DATABASE test
TO DISK = 'C:\test.bak' WITH DIFFERENTIAL,
NAME = N'pcrm-Full Database Backup',
SKIP, NOREWIND, NOUNLOAD, STATS = 50
GO