千家信息网

ElasticSearch笔记整理(四):ElasticSearch Rest与Settings、M

发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,[toc]ElasticSearch Restcurl -XGET 'http://uplooking01:9200/bank/_search?q=*&pretty'curl -XPOST 'http
千家信息网最后更新 2025年01月23日ElasticSearch笔记整理(四):ElasticSearch Rest与Settings、M

[toc]


ElasticSearch Rest

curl -XGET 'http://uplooking01:9200/bank/_search?q=*&pretty'curl -XPOST 'http://uplooking01:9200/bank/_search?pretty' -d'{    "query":{        "match_all":{}    }}'-------------------------------------------------------在上面基础至少,只要2条结果:curl -XGET 'http://uplooking01:9200/bank/_search?q=*&pretty&from=0&size=2'curl -XPOST 'http://uplooking01:9200/bank/_search?pretty' -d'{    "query":{        "match_all":{}    },    from: 0,    size: 2}' --------------------------------------------------排序curl -XPOST 'http://uplooking01:9200/bank/_search?pretty' -d'{    "query":{        "match_all":{}    },    from: 0,    size: 2,    "sort" : {"balance": {"order": "desc"}}}' --------------------------------------------------执行返回的字段    curl -XGET 'http://uplooking01:9200/bank/_search?_source=age,balance&pretty&from=0&size=2'post操作如何获取呢?curl -XPOST 'http://uplooking01:9200/bank/_search?pretty' -d'{    "query":{        "match_all":{}    },    from: 0,    size: 2,    "sort" : {"balance": {"order": "desc"}},    "_source": ["balance", "age"]}' ----------------------------------------------------------match:具体匹配操作curl -XPOST 'http://uplooking01:9200/bank/_search?pretty' -d'{    "query":{        "match":{"age": 20}    },    "from": 0,    "size": 2,    "sort" : {"balance": {"order": "desc"}},    "_source": ["balance", "age"]}' ----------------------------------------------------------boolcurl -XPOST 'http://uplooking01:9200/bank/_search?pretty' -d'{    "query":{        "bool":{            "should" :[                 {"match": {"age": 20}},                {"match": {"gender": "F"}}            ]        }    },    "from": 0,    "size": 2,    "sort" : {"balance": {"order": "desc"}},    "_source": ["balance", "age"]}' {    "query":{        "bool":{            "should" : {"match": {"age": 20}},            "should" : {"match": {"gender": "F"}}        }    },    "sort" : {"age": {"order": "asc"}},    "_source": ["balance", "age", "gender"]}以上两种方式都可以--------------------------------------------------------------------------过滤查询curl -XPOST 'http://uplooking01:9200/bank/_search?pretty' -d''{    "query": {        "filtered": {            "query": {"match_all": {}},            "filter": {                "range":{                    "balance": {                        "gte":20000,                        "lte":30000                    }                }            }        }    }}'查询收入在20000到30000之间的数据

Settings、Mappings

Settings

   维护索引库默认配置,当然经常用来修改默认配置。   例如:分片数量,副本数量   查看:curl -XGET http://localhost:9200/bigdata/_settings?pretty   操作不存在的索引:   curl -XPUT 'localhost:9200/bigdata/' -d'{"settings":{"number_of_shards":3,"number_of_replicas":2}}'   操作已存在的索引:   curl -XPUT 'localhost:9200/bigdata/_settings' -d'{"index":{"number_of_replicas":2}}'

Mappings

   就是对索引库中索引的字段名称及其数据类型进行定义,类似于关系数据库中表   建立时要定义字段名及其数据类型那样,(和solr中的schme类似)不过es的   mapping比数据库灵活很多,它可以动态添加字段。一般不需要要指定mapping都   可以,因为es会自动根据数据格式定义它的类型,如果你需要对某些字段添加特   殊属性(如:定义使用其它分词器、是否分词、是否存储等),就必须手动添加mapping   查询索引库的mapping信息   curl -XGET http://localhost:9200/bigdata/dep/_mapping?prettymappings修改字段相关属性,见备注   例如:字段类型,使用哪种分词工具mappings注意:下面可以使用indexAnalyzer定义分词器,也可以使用index_analyzer定义分词器
0