Elassandra を使用してメールを検索し、Cassandra を使用してメールを保存し、ElasticSearch を使用してそれらのメールを検索しています。
私の問題は、ElasticSearch 6 以降、1 つのマッピングで複数のタイプを使用できないことです。これが私のマッピングです:
"mappings": {
"mail__mail": {
"discover" : ".*",
"properties": {
"mailfrom": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword"
},
"ngram": {
"type": "text",
"analyzer": "edge_ngram_analyzer",
"search_analyzer": "edge_ngram_search_analyzer"
}
}
},
"subject": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword"
},
"ngram": {
"type": "text",
"analyzer": "edge_ngram_analyzer",
"search_analyzer": "edge_ngram_search_analyzer"
}
}
},
"date" : {
"type" : "date"
},
"folderid" : {
"type" : "text"
}
}
},
"mail__account" : {
"discover" : ".*",
"properties": {
"userId" : {
"type" : "Integer"
}
}
}
}
ElasticSearch 6 を使用して複数の cassandra テーブルを検索するにはどうすればよいですか?