查询检索的时候,不同的语言创建的是不一样的索引的,所以,每一次查询的时候是需要携带查询语言的
#安装pinyin插件
需要单独的编译或者是使用外部提供的编译插件
#安装ik插件
IK中文分词器:https://github.com/medcl/elasticsearch-analysis-ik
拼音分词器:https://github.com/medcl/elasticsearch-analysis-pinyin
具体的操作可以参考文档https://www.cnblogs.com/yijialong/p/9719964.html完成编译替换操作
es常见的命令操作
1.查看es的mapping数据信息
curl -XGET ‘localhost:9200/app_search/_mappings?pretty’
2.删除指定的索引
curl -XDELETE ‘localhost:9200/app_search’
3.查看settings信息
curl -XGET ‘localhost:9200/app_search/_settings?pretty’
4.查看mapping信息
curl -XGET ‘localhost:9200/app_search/_mappings?pretty’
5.查询es中的记录数量
curl -XGET ‘localhost:9200/app_search/_count?pretty’
6.分页查询和测试数据
curl -H “Content-Type:application/json” -XGET localhost:9200/app_search/_search -d ‘{“query” : {“match_all” : {}},“from”: “0”,“size”: “1”}’
7.触发数据重新加载操作
curl -H “Content-Type:application/json” -X POST http://localhost:8080/init/triggerDataLoad
8查询packageName匹配的元素信息,其中com.chaozh.iReaderFree对应的是数值信息
curl -X POST “http://localhost:8080/search/list/ids” -H “accept: /” -H “Content-Type: application/json” -d “{ “ids”: [ “4522” ], “termQueries”: [ { “name”: “package_name”, “value”: “com.chaozh.iReaderFree” } ]}”
curl -H “Content-Type:application/json” -X POST -d ‘[“com.chaozh.iReaderFree”,“com.tencent.tmgp.gzzwyx.bzfgx”]’ http://localhost:8080/appSearch/queryByPackageNames
curl -X POST “http://localhost:8080/search/list/pkg” -H “accept: /” -H “Content-Type: application/json” -d “{ “packageNames”: [ “com.chaozh.iReaderFree” ], “termQueries”: [ { “name”: “download_url”, “value”: “https://newmarket3.tt286.com/app/openzhuoyi/2021/07/19/15/81a795f862a2513c33c110a382ec6df9.apk” } ]}”
9.查询apkId的数据信息
curl -X POST “http://localhost:8080/search/list/ids” -H “accept: /” -H “Content-Type: application/json” -d “{ “ids”: [ “4522” ], “termQueries”: [ { “name”: “package_name”, “value”: “com.chaozh.iReaderFree” } ]}”
curl -H “Content-Type:application/json” -X POST -d ‘[“4522”,“318860”]’ http://localhost:8080/appSearch/queryByApkIds
10.清空所有的数据
curl -H “Content-Type:application/json” -X POST http://localhost:9200/app_search/_delete_by_query -d ‘{“query”: {“match_all”: {}}}’
11.重建索引:重建索引完成之后需要进一步的确认索引是否正确的。
curl -X POST http://localhost:8080/appSearch/createIndex
12.根据关键词检索
curl -X POST “http://localhost:8080/search/list/keyword” -H “accept: /” -H “Content-Type: application/json” -d “{ “from”: 0, “keyword”: “ireader”, “lang”: “string”, “size”: 3, “sortFields”: [ { “ascending”: true, “field”: “apk_id” } ], “termQueries”: [ { “name”: “download_url”, “value”: “https://newmarket3.tt286.com/app/openzhuoyi/2021/07/19/15/81a795f862a2513c33c110a382ec6df9.apk” } ]}”
13.查询当前存在的索引列表
curl -X GET “localhost:9200/_cat/indices?pretty”
#数据库授权操作
create user elasticsearch identified by ‘Hihonor@2021’;
flush privileges;
show grants for elasticsearch;
GRANT USAGE ON . TO ‘elasticsearch’@’%’
GRANT ALL PRIVILEGES ON es
.* TO ‘elasticsearch’@’%’
#大量索引数据的清空操作和实现
curl -H “Content-Type:application/json” -X POST http://localhost:9200/app_search_zh_cn/_delete_by_query -d ‘{“query”: {“match_all”: {}}}’
curl -H “Content-Type:application/json” -X POST http://localhost:9200/app_search_uk/_delete_by_query -d ‘{“query”: {“match_all”: {}}}’
curl -H “Content-Type:application/json” -X POST http://localhost:9200/app_search_ka/_delete_by_query -d ‘{“query”: {“match_all”: {}}}’
curl -H “Content-Type:application/json” -X POST http://localhost:9200/app_search_en/_delete_by_query -d ‘{“query”: {“match_all”: {}}}’
curl -H “Content-Type:application/json” -X POST http://localhost:9200/app_search_kk/_delete_by_query -d ‘{“query”: {“match_all”: {}}}’
curl -H “Content-Type:application/json” -X POST http://localhost:9200/app_search_uz/_delete_by_query -d ‘{“query”: {“match_all”: {}}}’
curl -H “Content-Type:application/json” -X POST http://localhost:9200/app_search_be/_delete_by_query -d ‘{“query”: {“match_all”: {}}}’
curl -H “Content-Type:application/json” -X POST http://localhost:9200/app_search_ru/_delete_by_query -d ‘{“query”: {“match_all”: {}}}’
#查询对应索引中当前的记录数据
curl -XGET ‘localhost:9200/app_search_zh_cn/_count?pretty’
curl -XGET ‘localhost:9200/app_search_uk/_count?pretty’
curl -XGET ‘localhost:9200/app_search_ka/_count?pretty’
curl -XGET ‘localhost:9200/app_search_en/_count?pretty’
curl -XGET ‘localhost:9200/app_search_kk/_count?pretty’
curl -XGET ‘localhost:9200/app_search_uz/_count?pretty’
curl -XGET ‘localhost:9200/app_search_be/_count?pretty’
curl -XGET ‘localhost:9200/app_search_ru/_count?pretty’
curl -H “Content-Type:application/json” -XGET localhost:9200/app_search_ru/_search -d ‘{“query” : {“match_all” : {}},“from”: “0”,“size”: “10”}’
curl -H “Content-Type:application/json” -XGET localhost:9200/app_search_zh_cn/_search -d ‘{“query” : {“match_all” : {}},“from”: “0”,“