āĻ‡āĻ˛āĻžāĻ¸ā§āĻŸāĻŋāĻ• āĻ¸āĻžāĻ°ā§āĻš āĻŦā§‡āĻ¸āĻŋāĻ•

Elasticsearch āĻšāĻ˛ āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻ°ā§āĻš āĻ‡āĻžā§āĻœāĻŋāĻ¨ āĻ¯āĻžāĻ° json rest api, Lucene āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻœāĻžāĻ­āĻžāĻ¤ā§‡ āĻ˛ā§‡āĻ–āĻžāĨ¤ āĻāĻ‡ āĻ‡āĻžā§āĻœāĻŋāĻ¨ā§‡āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻ° āĻŦāĻŋāĻŦāĻ°āĻŖ āĻāĻ–āĻžāĻ¨ā§‡ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ āĻ…āĻĢāĻŋāĻ¸āĻŋāĻ¯āĻŧāĻžāĻ˛ āĻ“āĻ¯āĻŧā§‡āĻŦāĻ¸āĻžāĻ‡āĻŸ. āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤āĻŸāĻŋāĻ¤ā§‡ āĻ†āĻŽāĻ°āĻž āĻ‡āĻ˛āĻžāĻ¸ā§āĻŸāĻŋāĻ•āĻ¸āĻžāĻ°ā§āĻšāĻ•ā§‡ ES āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ– āĻ•āĻ°āĻŦāĨ¤

āĻĄāĻ•ā§āĻŽā§‡āĻ¨ā§āĻŸ āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ā§‡ āĻœāĻŸāĻŋāĻ˛ āĻ…āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ…āĻ¨ā§āĻ°ā§‚āĻĒ āĻ‡āĻžā§āĻœāĻŋāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻ­āĻžāĻˇāĻžāĻ° āĻ°ā§‚āĻĒāĻŦāĻŋāĻĻā§āĻ¯āĻž āĻŦāĻŋāĻŦā§‡āĻšāĻ¨āĻžāĻ¯āĻŧ āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻ…āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻ•āĻ°ā§āĻ¨ āĻŦāĻž āĻœāĻŋāĻ“ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ™ā§āĻ• āĻĻā§āĻŦāĻžāĻ°āĻž āĻ…āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻ•āĻ°ā§āĻ¨āĨ¤

āĻāĻ‡ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§‡ āĻ†āĻŽāĻŋ āĻŦā§āĻ˛āĻ— āĻĒā§‹āĻ¸ā§āĻŸā§‡āĻ° āĻ¸ā§‚āĻšā§€āĻ•āĻ°āĻŖā§‡āĻ° āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ ES āĻāĻ° āĻŽā§‚āĻ˛ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻ—ā§āĻ˛āĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ•āĻĨāĻž āĻŦāĻ˛āĻŦāĨ¤ āĻ†āĻŽāĻŋ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻĻā§‡āĻ–āĻžāĻŦ āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻĢāĻŋāĻ˛ā§āĻŸāĻžāĻ°, āĻŦāĻžāĻ›āĻžāĻ‡ āĻāĻŦāĻ‚ āĻ¨āĻĨāĻŋ āĻ…āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻ¯āĻŧāĨ¤

āĻ…āĻĒāĻžāĻ°ā§‡āĻŸāĻŋāĻ‚ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻ‰āĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻ­āĻ° āĻ¨āĻž āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯, āĻ†āĻŽāĻŋ CURL āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ ES āĻāĻ° āĻ•āĻžāĻ›ā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻ•āĻ°āĻŦāĨ¤ āĻ—ā§āĻ—āĻ˛ āĻ•ā§āĻ°ā§‹āĻŽā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ˛āĻžāĻ—āĻ‡āĻ¨āĻ“ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¯āĻžāĻ•ā§‡ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ āĻ…āĻ¨ā§āĻ­ā§‚āĻ¤āĻŋ.

āĻĒāĻžāĻ ā§āĻ¯āĻŸāĻŋāĻ¤ā§‡ āĻĄāĻ•ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāĻ¨ āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ‰āĻ¤ā§āĻ¸ā§‡āĻ° āĻ˛āĻŋāĻ™ā§āĻ• āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻļā§‡āĻˇā§‡ āĻĄāĻ•ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāĻ¨ āĻĻā§āĻ°ā§āĻ¤ āĻ…ā§āĻ¯āĻžāĻ•ā§āĻ¸ā§‡āĻ¸ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ˛āĻŋāĻ™ā§āĻ• āĻ†āĻ›ā§‡. āĻ…āĻĒāĻ°āĻŋāĻšāĻŋāĻ¤ āĻĒāĻĻā§‡āĻ° āĻ¸āĻ‚āĻœā§āĻžāĻž āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻŦā§‡ āĻļāĻŦā§āĻĻāĻ•ā§‹āĻˇ.

āĻ‡āĻāĻ¸ āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

āĻāĻŸāĻŋ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯, āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĒā§āĻ°āĻĨāĻŽā§‡ āĻœāĻžāĻ­āĻž āĻĻāĻ°āĻ•āĻžāĻ°āĨ¤ āĻŦāĻŋāĻ•āĻžāĻļāĻ•āĻžāĻ°ā§€āĻ°āĻž āĻ¸ā§āĻĒāĻžāĻ°āĻŋāĻļ āĻ•āĻ°āĻž Java 8 āĻ†āĻĒāĻĄā§‡āĻŸ 20 āĻŦāĻž Java 7 āĻ†āĻĒāĻĄā§‡āĻŸ 55 āĻāĻ° āĻšā§‡āĻ¯āĻŧā§‡ āĻ¨āĻ¤ā§āĻ¨ āĻœāĻžāĻ­āĻž āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°ā§āĻ¨āĨ¤

ES āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻāĻ–āĻžāĻ¨ā§‡ āĻ‰āĻĒāĻ˛āĻŦā§āĻ§ āĻŦāĻŋāĻ•āĻžāĻļāĻ•āĻžāĻ°ā§€ āĻ¸āĻžāĻ‡āĻŸ. āĻ¸āĻ‚āĻ°āĻ•ā§āĻˇāĻŖāĻžāĻ—āĻžāĻ°āĻŸāĻŋ āĻ†āĻ¨āĻĒā§āĻ¯āĻžāĻ• āĻ•āĻ°āĻžāĻ° āĻĒāĻ°ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻšāĻžāĻ˛āĻžāĻ¤ā§‡ āĻšāĻŦā§‡ bin/elasticsearch. āĻāĻŸāĻžāĻ“ āĻ†āĻ›ā§‡ apt āĻāĻŦāĻ‚ yum-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ¯āĻžāĻ•ā§‡āĻœāĨ¤ āĻāĻ–āĻžāĻ¨ā§‡ āĻĄāĻ•āĻžāĻ°ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ…āĻĢāĻŋāĻ¸āĻŋāĻ¯āĻŧāĻžāĻ˛ āĻ‡āĻŽā§‡āĻœ. āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ā§‡āĻļāĻ¨ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ†āĻ°ā§‹.

āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ā§‡āĻļāĻ¨ āĻāĻŦāĻ‚ āĻ˛āĻžā§āĻš āĻ•āĻ°āĻžāĻ° āĻĒāĻ°ā§‡, āĻāĻ° āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻžāĻ°āĻŋāĻ¤āĻž āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻž āĻ¯āĻžāĻ•:

# Đ´ĐģŅ ŅƒĐ´ĐžĐąŅŅ‚ва СаĐŋĐžĐŧĐŊиĐŧ Đ°Đ´Ņ€ĐĩŅ в ĐŋĐĩŅ€ĐĩĐŧĐĩĐŊĐŊŅƒŅŽ
#export ES_URL=$(docker-machine ip dev):9200
export ES_URL=localhost:9200

curl -X GET $ES_URL

āĻ†āĻŽāĻ°āĻž āĻāĻ‡ āĻŽāĻ¤ āĻ•āĻŋāĻ›ā§ āĻĒāĻžāĻŦā§‡āĻ¨:

{
  "name" : "Heimdall",
  "cluster_name" : "elasticsearch",
  "version" : {
    "number" : "2.2.1",
    "build_hash" : "d045fc29d1932bce18b2e65ab8b297fbf6cd41a1",
    "build_timestamp" : "2016-03-09T09:38:54Z",
    "build_snapshot" : false,
    "lucene_version" : "5.4.1"
  },
  "tagline" : "You Know, for Search"
}

āĻ‡āĻ¨ā§āĻĄā§‡āĻ•ā§āĻ¸

ES āĻ āĻāĻ•āĻŸāĻŋ āĻĒā§‹āĻ¸ā§āĻŸ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻ¯āĻžāĻ•:

# ДобавиĐŧ Đ´ĐžĐēŅƒĐŧĐĩĐŊŅ‚ c id 1 Ņ‚иĐŋĐ° post в иĐŊĐ´ĐĩĐēŅ blog.
# ?pretty ŅƒĐēаСŅ‹Đ˛Đ°ĐĩŅ‚, Ņ‡Ņ‚Đž вŅ‹Đ˛ĐžĐ´ Đ´ĐžĐģĐļĐĩĐŊ ĐąŅ‹Ņ‚ŅŒ Ņ‡ĐĩĐģОвĐĩĐēĐž-Ņ‡Đ¸Ņ‚Đ°ĐĩĐŧŅ‹Đŧ.

curl -XPUT "$ES_URL/blog/post/1?pretty" -d'
{
  "title": "ВĐĩŅĐĩĐģŅ‹Đĩ ĐēĐžŅ‚ŅŅ‚Đ°",
  "content": "<p>ĐĄĐŧĐĩŅˆĐŊĐ°Ņ иŅŅ‚ĐžŅ€Đ¸Ņ ĐŋŅ€Đž ĐēĐžŅ‚ŅŅ‚<p>",
  "tags": [
    "ĐēĐžŅ‚ŅŅ‚Đ°",
    "ŅĐŧĐĩŅˆĐŊĐ°Ņ иŅŅ‚ĐžŅ€Đ¸Ņ"
  ],
  "published_at": "2014-09-12T20:44:42+00:00"
}'

āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž:

{
  "_index" : "blog",
  "_type" : "post",
  "_id" : "1",
  "_version" : 1,
  "_shards" : {
    "total" : 2,
    "successful" : 1,
    "failed" : 0
  },
  "created" : false
}

ES āĻ¸ā§āĻŦāĻ¯āĻŧāĻ‚āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻ­āĻžāĻŦā§‡ āĻ¤ā§ˆāĻ°āĻŋ āĻ¸ā§‚āĻšāĻ• āĻŦā§āĻ˛āĻ— āĻāĻŦāĻ‚ āĻŸāĻžāĻ‡āĻĒ āĻĒā§‹āĻ¸ā§āĻŸ āĻ†āĻŽāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻļāĻ°ā§āĻ¤āĻ¸āĻžāĻĒā§‡āĻ•ā§āĻˇ āĻ¸āĻžāĻĻā§ƒāĻļā§āĻ¯ āĻ†āĻāĻ•āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋ: āĻāĻ•āĻŸāĻŋ āĻ¸ā§‚āĻšāĻ• āĻāĻ•āĻŸāĻŋ āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸, āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻ•āĻžāĻ° āĻāĻ‡ āĻĄāĻžāĻŸāĻžāĻŦā§‡āĻ¸ā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻŸā§‡āĻŦāĻŋāĻ˛āĨ¤ āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻĒā§āĻ°āĻ•āĻžāĻ°ā§‡āĻ° āĻ¨āĻŋāĻœāĻ¸ā§āĻŦ āĻ¸ā§āĻ•āĻŋāĻŽ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ - āĻŽā§āĻ¯āĻžāĻĒāĻŋāĻ‚, āĻ āĻŋāĻ• āĻāĻ•āĻŸāĻŋ āĻ°āĻŋāĻ˛ā§‡āĻļāĻ¨āĻžāĻ˛ āĻŸā§‡āĻŦāĻŋāĻ˛ā§‡āĻ° āĻŽāĻ¤āĨ¤ āĻĄāĻ•ā§āĻŽā§‡āĻ¨ā§āĻŸ āĻ‡āĻ¨ā§āĻĄā§‡āĻ•ā§āĻ¸ āĻ•āĻ°āĻž āĻšāĻ˛ā§‡ āĻŽā§āĻ¯āĻžāĻĒāĻŋāĻ‚ āĻ¸ā§āĻŦāĻ¯āĻŧāĻ‚āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻ­āĻžāĻŦā§‡ āĻ¤ā§ˆāĻ°āĻŋ āĻšāĻ¯āĻŧ:

# ПоĐģŅƒŅ‡Đ¸Đŧ mapping вŅĐĩŅ… Ņ‚иĐŋОв иĐŊĐ´ĐĩĐēŅĐ° blog
curl -XGET "$ES_URL/blog/_mapping?pretty"

āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ¤ā§‡, āĻ†āĻŽāĻŋ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ā§‡ āĻ¸ā§‚āĻšā§€āĻ•ā§ƒāĻ¤ āĻ¨āĻĨāĻŋāĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡āĻ° āĻŽāĻžāĻ¨ āĻ¯ā§‹āĻ— āĻ•āĻ°ā§‡āĻ›āĻŋ:

{
  "blog" : {
    "mappings" : {
      "post" : {
        "properties" : {
          /* "content": "<p>ĐĄĐŧĐĩŅˆĐŊĐ°Ņ иŅŅ‚ĐžŅ€Đ¸Ņ ĐŋŅ€Đž ĐēĐžŅ‚ŅŅ‚<p>", */ 
          "content" : {
            "type" : "string"
          },
          /* "published_at": "2014-09-12T20:44:42+00:00" */
          "published_at" : {
            "type" : "date",
            "format" : "strict_date_optional_time||epoch_millis"
          },
          /* "tags": ["ĐēĐžŅ‚ŅŅ‚Đ°", "ŅĐŧĐĩŅˆĐŊĐ°Ņ иŅŅ‚ĐžŅ€Đ¸Ņ"] */
          "tags" : {
            "type" : "string"
          },
          /*  "title": "ВĐĩŅĐĩĐģŅ‹Đĩ ĐēĐžŅ‚ŅŅ‚Đ°" */
          "title" : {
            "type" : "string"
          }
        }
      }
    }
  }
}

āĻāĻŸāĻŋ āĻ˛āĻ•ā§āĻˇāĻŖā§€āĻ¯āĻŧ āĻ¯ā§‡ ES āĻāĻ•āĻŸāĻŋ āĻāĻ•āĻ• āĻŽāĻžāĻ¨ āĻāĻŦāĻ‚ āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋāĻ° āĻāĻ•āĻŸāĻŋ āĻ…ā§āĻ¯āĻžāĻ°ā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āĻ¯ āĻ•āĻ°ā§‡ āĻ¨āĻžāĨ¤ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻļāĻŋāĻ°ā§‹āĻ¨āĻžāĻŽ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°āĻŸāĻŋāĻ¤ā§‡ āĻ•ā§‡āĻŦāĻ˛ āĻāĻ•āĻŸāĻŋ āĻļāĻŋāĻ°ā§‹āĻ¨āĻžāĻŽ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻāĻŦāĻ‚ āĻŸā§āĻ¯āĻžāĻ— āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°āĻŸāĻŋāĻ¤ā§‡ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚āĻ—ā§āĻ˛āĻŋāĻ° āĻāĻ•āĻŸāĻŋ āĻ…ā§āĻ¯āĻžāĻ°ā§‡ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¯āĻĻāĻŋāĻ“ āĻ¸ā§‡āĻ—ā§āĻ˛āĻŋ āĻŽā§āĻ¯āĻžāĻĒāĻŋāĻ‚āĻ¯āĻŧā§‡ āĻāĻ•āĻ‡āĻ­āĻžāĻŦā§‡ āĻ‰āĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻ†āĻŽāĻ°āĻž āĻĒāĻ°ā§‡ āĻŽā§āĻ¯āĻžāĻĒāĻŋāĻ‚ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ†āĻ°āĻ“ āĻ•āĻĨāĻž āĻŦāĻ˛āĻŦāĨ¤

āĻ…āĻ¨ā§āĻ°ā§‹āĻ§

āĻ¤āĻžāĻ° āĻ†āĻ‡āĻĄāĻŋ āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻ¨āĻĨāĻŋ āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ° āĻ•āĻ°āĻž:

# иСвĐģĐĩŅ‡ĐĩĐŧ Đ´ĐžĐēŅƒĐŧĐĩĐŊŅ‚ Ņ id 1 Ņ‚иĐŋĐ° post иС иĐŊĐ´ĐĩĐēŅĐ° blog
curl -XGET "$ES_URL/blog/post/1?pretty"
{
  "_index" : "blog",
  "_type" : "post",
  "_id" : "1",
  "_version" : 1,
  "found" : true,
  "_source" : {
    "title" : "ВĐĩŅĐĩĐģŅ‹Đĩ ĐēĐžŅ‚ŅŅ‚Đ°",
    "content" : "<p>ĐĄĐŧĐĩŅˆĐŊĐ°Ņ иŅŅ‚ĐžŅ€Đ¸Ņ ĐŋŅ€Đž ĐēĐžŅ‚ŅŅ‚<p>",
    "tags" : [ "ĐēĐžŅ‚ŅŅ‚Đ°", "ŅĐŧĐĩŅˆĐŊĐ°Ņ иŅŅ‚ĐžŅ€Đ¸Ņ" ],
    "published_at" : "2014-09-12T20:44:42+00:00"
  }
}

āĻĒā§āĻ°āĻ¤āĻŋāĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ¯āĻŧ āĻ¨āĻ¤ā§āĻ¨ āĻ•ā§€āĻ—ā§āĻ˛āĻŋ āĻ‰āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛: _version и _source. āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ­āĻžāĻŦā§‡, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ•ā§€ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻļā§āĻ°ā§ āĻšāĻ¯āĻŧ _ āĻ…āĻĢāĻŋāĻ¸āĻŋāĻ¯āĻŧāĻžāĻ˛ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻļā§āĻ°ā§‡āĻŖā§€āĻŦāĻĻā§āĻ§ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤

āĻšāĻžāĻŦāĻŋ _version āĻ¨āĻĨāĻŋ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻĻā§‡āĻ–āĻžāĻ¯āĻŧāĨ¤ āĻ†āĻļāĻžāĻŦāĻžāĻĻā§€ āĻ˛āĻ•āĻŋāĻ‚ āĻŽā§‡āĻ•āĻžāĻ¨āĻŋāĻœāĻŽ āĻ•āĻžāĻœ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻŸāĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨āĨ¤ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻ†āĻŽāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻ¨āĻĨāĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻžāĻ‡ āĻ¯āĻžāĻ° āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ 1 āĻ†āĻ›ā§‡āĨ¤ āĻ†āĻŽāĻ°āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻ¨āĻĨāĻŋāĻŸāĻŋ āĻœāĻŽāĻž āĻĻāĻŋāĻ‡ āĻāĻŦāĻ‚ āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļ āĻ•āĻ°āĻŋ āĻ¯ā§‡ āĻāĻŸāĻŋ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ 1 āĻ¸āĻš āĻāĻ•āĻŸāĻŋ āĻ¨āĻĨāĻŋāĻ° āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨āĻžāĨ¤ āĻ…āĻ¨ā§āĻ¯ āĻ•ā§‡āĻ‰ āĻ¯āĻĻāĻŋ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ 1 āĻ¸āĻš āĻāĻ•āĻŸāĻŋ āĻ¨āĻĨāĻŋ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨āĻž āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ¸āĻžāĻŽāĻ¨ā§‡ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻ—ā§āĻ˛āĻŋ āĻœāĻŽāĻž āĻĻā§‡āĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§‡ ES āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ—ā§āĻ°āĻšāĻŖ āĻ•āĻ°āĻŦā§‡ āĻ¨āĻž, āĻ•āĻžāĻ°āĻŖ āĻāĻŸāĻŋ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ 2 āĻ¸āĻš āĻ¨āĻĨāĻŋ āĻ¸āĻ‚āĻ°āĻ•ā§āĻˇāĻŖ āĻ•āĻ°ā§‡āĨ¤

āĻšāĻžāĻŦāĻŋ _source āĻ†āĻŽāĻ°āĻž āĻ¸ā§‚āĻšāĻŋāĻŦāĻĻā§āĻ§ āĻ¨āĻĨāĻŋ āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°ā§‡. ES āĻ…āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ āĻœāĻ¨ā§āĻ¯ āĻāĻ‡ āĻŽāĻžāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ¨āĻž āĻ•āĻžāĻ°āĻŖ āĻ¸ā§‚āĻšā§€ āĻ…āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ. āĻ¸ā§āĻĨāĻžāĻ¨ āĻŦāĻžāĻāĻšāĻžāĻ¤ā§‡, ES āĻāĻ•āĻŸāĻŋ āĻ¸āĻ‚āĻ•ā§āĻšāĻŋāĻ¤ āĻ‰ā§ŽāĻ¸ āĻ¨āĻĨāĻŋ āĻ¸āĻ‚āĻ°āĻ•ā§āĻˇāĻŖ āĻ•āĻ°ā§‡āĨ¤ āĻ¯āĻĻāĻŋ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ†āĻ‡āĻĄāĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻšāĻ¯āĻŧ, āĻĒā§āĻ°ā§‹ āĻ‰ā§ŽāĻ¸ āĻ¨āĻĨāĻŋāĻ° āĻ¨āĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻ†āĻŽāĻ°āĻž āĻ‰ā§ŽāĻ¸ āĻ¸āĻžā§āĻšāĻ¯āĻŧāĻ¸ā§āĻĨāĻžāĻ¨ āĻ¨āĻŋāĻˇā§āĻ•ā§āĻ°āĻŋāĻ¯āĻŧ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋāĨ¤

āĻ¯āĻĻāĻŋ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ…āĻ¤āĻŋāĻ°āĻŋāĻ•ā§āĻ¤ āĻ¤āĻĨā§āĻ¯ā§‡āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻ¨āĻž āĻšāĻ¯āĻŧ, āĻ†āĻŽāĻ°āĻž āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° _source āĻāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§ āĻĒā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋ:

curl -XGET "$ES_URL/blog/post/1/_source?pretty"
{
  "title" : "ВĐĩŅĐĩĐģŅ‹Đĩ ĐēĐžŅ‚ŅŅ‚Đ°",
  "content" : "<p>ĐĄĐŧĐĩŅˆĐŊĐ°Ņ иŅŅ‚ĐžŅ€Đ¸Ņ ĐŋŅ€Đž ĐēĐžŅ‚ŅŅ‚<p>",
  "tags" : [ "ĐēĐžŅ‚ŅŅ‚Đ°", "ŅĐŧĐĩŅˆĐŊĐ°Ņ иŅŅ‚ĐžŅ€Đ¸Ņ" ],
  "published_at" : "2014-09-12T20:44:42+00:00"
}

āĻ†āĻĒāĻ¨āĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ° āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨:

# иСвĐģĐĩŅ‡ĐĩĐŧ Ņ‚ĐžĐģŅŒĐēĐž ĐŋĐžĐģĐĩ title
curl -XGET "$ES_URL/blog/post/1?_source=title&pretty"
{
  "_index" : "blog",
  "_type" : "post",
  "_id" : "1",
  "_version" : 1,
  "found" : true,
  "_source" : {
    "title" : "ВĐĩŅĐĩĐģŅ‹Đĩ ĐēĐžŅ‚ŅŅ‚Đ°"
  }
}

āĻ†āĻ¸ā§āĻ¨ āĻ†āĻ°āĻ“ āĻ•āĻ¯āĻŧā§‡āĻ•āĻŸāĻŋ āĻĒā§‹āĻ¸ā§āĻŸ āĻ¸ā§‚āĻšā§€ āĻ•āĻ°āĻŋ āĻāĻŦāĻ‚ āĻ†āĻ°āĻ“ āĻœāĻŸāĻŋāĻ˛ āĻĒā§āĻ°āĻļā§āĻ¨āĻ—ā§āĻ˛āĻŋ āĻšāĻžāĻ˛āĻžāĻ‡āĨ¤

curl -XPUT "$ES_URL/blog/post/2" -d'
{
  "title": "ВĐĩŅĐĩĐģŅ‹Đĩ Ņ‰ĐĩĐŊĐēи",
  "content": "<p>ĐĄĐŧĐĩŅˆĐŊĐ°Ņ иŅŅ‚ĐžŅ€Đ¸Ņ ĐŋŅ€Đž Ņ‰ĐĩĐŊĐēОв<p>",
  "tags": [
    "Ņ‰ĐĩĐŊĐēи",
    "ŅĐŧĐĩŅˆĐŊĐ°Ņ иŅŅ‚ĐžŅ€Đ¸Ņ"
  ],
  "published_at": "2014-08-12T20:44:42+00:00"
}'
curl -XPUT "$ES_URL/blog/post/3" -d'
{
  "title": "КаĐē Ņƒ ĐŧĐĩĐŊŅ ĐŋĐžŅĐ˛Đ¸ĐģŅŅ ĐēĐžŅ‚ĐĩĐŊĐžĐē",
  "content": "<p>ДŅƒŅˆĐĩŅ€Đ°ĐˇĐ´Đ¸Ņ€Đ°ŅŽŅ‰Đ°Ņ иŅŅ‚ĐžŅ€Đ¸Ņ ĐŋŅ€Đž ĐąĐĩĐ´ĐŊĐžĐŗĐž ĐēĐžŅ‚ĐĩĐŊĐēĐ° Ņ ŅƒĐģиŅ†Ņ‹<p>",
  "tags": [
    "ĐēĐžŅ‚ŅŅ‚Đ°"
  ],
  "published_at": "2014-07-21T20:44:42+00:00"
}'

āĻŦāĻžāĻ›āĻžāĻ‡

# ĐŊаКдĐĩĐŧ ĐŋĐžŅĐģĐĩĐ´ĐŊиК ĐŋĐžŅŅ‚ ĐŋĐž Đ´Đ°Ņ‚Đĩ ĐŋŅƒĐąĐģиĐēĐ°Ņ†Đ¸Đ¸ и иСвĐģĐĩŅ‡ĐĩĐŧ ĐŋĐžĐģŅ title и published_at
curl -XGET "$ES_URL/blog/post/_search?pretty" -d'
{
  "size": 1,
  "_source": ["title", "published_at"],
  "sort": [{"published_at": "desc"}]
}'
{
  "took" : 8,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "failed" : 0
  },
  "hits" : {
    "total" : 3,
    "max_score" : null,
    "hits" : [ {
      "_index" : "blog",
      "_type" : "post",
      "_id" : "1",
      "_score" : null,
      "_source" : {
        "title" : "ВĐĩŅĐĩĐģŅ‹Đĩ ĐēĐžŅ‚ŅŅ‚Đ°",
        "published_at" : "2014-09-12T20:44:42+00:00"
      },
      "sort" : [ 1410554682000 ]
    } ]
  }
}

āĻ†āĻŽāĻ°āĻž āĻļā§‡āĻˇ āĻĒā§‹āĻ¸ā§āĻŸ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨. size āĻœāĻžāĻ°āĻŋ āĻ•āĻ°āĻž āĻ¨āĻĨāĻŋāĻ° āĻ¸āĻ‚āĻ–ā§āĻ¯āĻž āĻ¸ā§€āĻŽāĻžāĻŦāĻĻā§āĻ§ āĻ•āĻ°ā§‡āĨ¤ total āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻŽāĻŋāĻ˛ā§‡ āĻ¯āĻžāĻ“āĻ¯āĻŧāĻž āĻ¨āĻĨāĻŋāĻ° āĻŽā§‹āĻŸ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻž āĻĻā§‡āĻ–āĻžāĻ¯āĻŧāĨ¤ sort āĻ†āĻ‰āĻŸāĻĒā§āĻŸā§‡ āĻĒā§‚āĻ°ā§āĻŖāĻ¸āĻ‚āĻ–ā§āĻ¯āĻžāĻ° āĻāĻ•āĻŸāĻŋ āĻ…ā§āĻ¯āĻžāĻ°ā§‡ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¯āĻžāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦāĻžāĻ›āĻžāĻ‡ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¸ā§‡āĻ—ā§āĻ˛ā§‹. āĻ¤āĻžāĻ°āĻŋāĻ– āĻāĻ•āĻŸāĻŋ āĻĒā§‚āĻ°ā§āĻŖāĻ¸āĻ‚āĻ–ā§āĻ¯āĻž āĻ°ā§‚āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡. āĻŦāĻžāĻ›āĻžāĻ‡ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ†āĻ°ā§‹ āĻ¤āĻĨā§āĻ¯ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻŦā§‡ āĻĄāĻ•ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāĻ¨.

āĻĢāĻŋāĻ˛ā§āĻŸāĻžāĻ° āĻāĻŦāĻ‚ āĻĒā§āĻ°āĻļā§āĻ¨

ES āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ 2 āĻĢāĻŋāĻ˛ā§āĻŸāĻžāĻ° āĻāĻŦāĻ‚ āĻĒā§āĻ°āĻļā§āĻ¨ā§‡āĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āĻ¯ āĻ•āĻ°ā§‡ āĻ¨āĻž, āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§‡ āĻĒā§āĻ°āĻ¸āĻ™ā§āĻ— āĻ§āĻžāĻ°āĻŖāĻž āĻšāĻžāĻ˛ā§ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ.
āĻāĻ•āĻŸāĻŋ āĻ•ā§āĻ¯ā§‹āĻ¯āĻŧāĻžāĻ°ā§€ āĻĒā§āĻ°ā§‡āĻ•ā§āĻˇāĻžāĻĒāĻŸ āĻāĻ•āĻŸāĻŋ āĻĢāĻŋāĻ˛ā§āĻŸāĻžāĻ° āĻĒā§āĻ°āĻ¸āĻ™ā§āĻ— āĻĨā§‡āĻ•ā§‡ āĻ†āĻ˛āĻžāĻĻāĻž āĻ¯ā§‡ āĻ•ā§āĻ¯ā§‹āĻ¯āĻŧāĻžāĻ°ā§€āĻŸāĻŋ āĻāĻ•āĻŸāĻŋ _score āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻ•ā§āĻ¯āĻžāĻļā§‡ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻ†āĻŽāĻŋ āĻĒāĻ°ā§‡ āĻĻā§‡āĻ–āĻžāĻŦ _āĻ¸ā§āĻ•ā§‹āĻ° āĻ•ā§€āĨ¤

āĻ¤āĻžāĻ°āĻŋāĻ– āĻ…āĻ¨ā§āĻ¸āĻžāĻ°ā§‡ āĻĢāĻŋāĻ˛ā§āĻŸāĻžāĻ° āĻ•āĻ°ā§āĻ¨

āĻ†āĻŽāĻ°āĻž āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻĒāĻ°āĻŋāĻ¸āĻ° āĻĢāĻŋāĻ˛ā§āĻŸāĻžāĻ° āĻĒā§āĻ°āĻ¸āĻ™ā§āĻ—ā§‡:

# ĐŋĐžĐģŅƒŅ‡Đ¸Đŧ ĐŋĐžŅŅ‚Ņ‹, ĐžĐŋŅƒĐąĐģиĐēОваĐŊĐŊŅ‹Đĩ 1ĐžĐŗĐž ŅĐĩĐŊŅ‚ŅĐąŅ€Ņ иĐģи ĐŋОСĐļĐĩ
curl -XGET "$ES_URL/blog/post/_search?pretty" -d'
{
  "filter": {
    "range": {
      "published_at": { "gte": "2014-09-01" }
    }
  }
}'

āĻŸā§āĻ¯āĻžāĻ— āĻĻā§āĻŦāĻžāĻ°āĻž āĻĢāĻŋāĻ˛ā§āĻŸāĻžāĻ°

āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻļāĻŦā§āĻĻ āĻĒā§āĻ°āĻļā§āĻ¨ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻļāĻŦā§āĻĻ āĻ§āĻžāĻ°āĻŖāĻ•āĻžāĻ°ā§€ āĻ¨āĻĨāĻŋ āĻ†āĻ‡āĻĄāĻŋ āĻ…āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻ•āĻ°āĻ¤ā§‡:

# ĐŊаКдĐĩĐŧ вŅĐĩ Đ´ĐžĐēŅƒĐŧĐĩĐŊŅ‚Ņ‹, в ĐŋĐžĐģĐĩ tags ĐēĐžŅ‚ĐžŅ€Ņ‹Ņ… ĐĩŅŅ‚ŅŒ ŅĐģĐĩĐŧĐĩĐŊŅ‚ 'ĐēĐžŅ‚ŅŅ‚Đ°'
curl -XGET "$ES_URL/blog/post/_search?pretty" -d'
{
  "_source": [
    "title",
    "tags"
  ],
  "filter": {
    "term": {
      "tags": "ĐēĐžŅ‚ŅŅ‚Đ°"
    }
  }
}'
{
  "took" : 9,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "failed" : 0
  },
  "hits" : {
    "total" : 2,
    "max_score" : 1.0,
    "hits" : [ {
      "_index" : "blog",
      "_type" : "post",
      "_id" : "1",
      "_score" : 1.0,
      "_source" : {
        "title" : "ВĐĩŅĐĩĐģŅ‹Đĩ ĐēĐžŅ‚ŅŅ‚Đ°",
        "tags" : [ "ĐēĐžŅ‚ŅŅ‚Đ°", "ŅĐŧĐĩŅˆĐŊĐ°Ņ иŅŅ‚ĐžŅ€Đ¸Ņ" ]
      }
    }, {
      "_index" : "blog",
      "_type" : "post",
      "_id" : "3",
      "_score" : 1.0,
      "_source" : {
        "title" : "КаĐē Ņƒ ĐŧĐĩĐŊŅ ĐŋĐžŅĐ˛Đ¸ĐģŅŅ ĐēĐžŅ‚ĐĩĐŊĐžĐē",
        "tags" : [ "ĐēĐžŅ‚ŅŅ‚Đ°" ]
      }
    } ]
  }
}

āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻĒāĻžāĻ ā§āĻ¯ āĻ…āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨

āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ¤āĻŋāĻ¨āĻŸāĻŋ āĻ¨āĻĨāĻŋāĻ¤ā§‡ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§āĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻ–āĻŋāĻ¤āĻ—ā§āĻ˛āĻŋ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡:

  • <p>ĐĄĐŧĐĩŅˆĐŊĐ°Ņ иŅŅ‚ĐžŅ€Đ¸Ņ ĐŋŅ€Đž ĐēĐžŅ‚ŅŅ‚<p>
  • <p>ĐĄĐŧĐĩŅˆĐŊĐ°Ņ иŅŅ‚ĐžŅ€Đ¸Ņ ĐŋŅ€Đž Ņ‰ĐĩĐŊĐēОв<p>
  • <p>ДŅƒŅˆĐĩŅ€Đ°ĐˇĐ´Đ¸Ņ€Đ°ŅŽŅ‰Đ°Ņ иŅŅ‚ĐžŅ€Đ¸Ņ ĐŋŅ€Đž ĐąĐĩĐ´ĐŊĐžĐŗĐž ĐēĐžŅ‚ĐĩĐŊĐēĐ° Ņ ŅƒĐģиŅ†Ņ‹<p>

āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻŽāĻŋāĻ˛ āĻĒā§āĻ°āĻļā§āĻ¨ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻļāĻŦā§āĻĻ āĻ§āĻžāĻ°āĻŖāĻ•āĻžāĻ°ā§€ āĻ¨āĻĨāĻŋ āĻ†āĻ‡āĻĄāĻŋ āĻ…āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻ•āĻ°āĻ¤ā§‡:

# source: false ОСĐŊĐ°Ņ‡Đ°ĐĩŅ‚, Ņ‡Ņ‚Đž ĐŊĐĩ ĐŊŅƒĐļĐŊĐž иСвĐģĐĩĐēĐ°Ņ‚ŅŒ _source ĐŊаКдĐĩĐŊĐŊŅ‹Ņ… Đ´ĐžĐēŅƒĐŧĐĩĐŊŅ‚Ов
curl -XGET "$ES_URL/blog/post/_search?pretty" -d'
{
  "_source": false,
  "query": {
    "match": {
      "content": "иŅŅ‚ĐžŅ€Đ¸Ņ"
    }
  }
}'
{
  "took" : 13,
  "timed_out" : false,
  "_shards" : {
    "total" : 5,
    "successful" : 5,
    "failed" : 0
  },
  "hits" : {
    "total" : 3,
    "max_score" : 0.11506981,
    "hits" : [ {
      "_index" : "blog",
      "_type" : "post",
      "_id" : "2",
      "_score" : 0.11506981
    }, {
      "_index" : "blog",
      "_type" : "post",
      "_id" : "1",
      "_score" : 0.11506981
    }, {
      "_index" : "blog",
      "_type" : "post",
      "_id" : "3",
      "_score" : 0.095891505
    } ]
  }
}

āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻ¯āĻĻāĻŋ āĻ†āĻŽāĻ°āĻž āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ "āĻ—āĻ˛ā§āĻĒ" āĻ…āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻ•āĻ°āĻŋ, āĻ†āĻŽāĻ°āĻž āĻ•āĻŋāĻ›ā§āĻ‡ āĻ–ā§āĻāĻœā§‡ āĻĒāĻžāĻŦ āĻ¨āĻž, āĻ•āĻžāĻ°āĻŖ āĻ¸ā§‚āĻšā§€āĻ¤ā§‡ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻŽā§‚āĻ˛ āĻļāĻŦā§āĻĻ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¤āĻžāĻĻā§‡āĻ° āĻ•āĻžāĻ¨ā§āĻĄ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻ•āĻŸāĻŋ āĻ‰āĻšā§āĻš-āĻŽāĻžāĻ¨ā§‡āĻ° āĻ…āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻ•āĻ°āĻ¤ā§‡, āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻ• āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤

āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ° _score āĻļā§‹ āĻĒā§āĻ°āĻžāĻ¸āĻ™ā§āĻ—āĻŋāĻ•āĻ¤āĻž. āĻ¯āĻĻāĻŋ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§āĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻĢāĻŋāĻ˛ā§āĻŸāĻžāĻ° āĻĒā§āĻ°āĻ¸āĻ™ā§āĻ—ā§‡ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻŋāĻ¤ āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§‡ _score āĻŽāĻžāĻ¨ āĻ¸āĻ°ā§āĻŦāĻĻāĻž 1 āĻāĻ° āĻ¸āĻŽāĻžāĻ¨ āĻšāĻŦā§‡, āĻ¯āĻžāĻ° āĻ…āĻ°ā§āĻĨ āĻĢāĻŋāĻ˛ā§āĻŸāĻžāĻ°ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻŽāĻŋāĻ˛āĨ¤

āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻ•

āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻ• āĻ¸ā§‹āĻ°ā§āĻ¸ āĻŸā§‡āĻ•ā§āĻ¸āĻŸāĻ•ā§‡ āĻŸā§‹āĻ•ā§‡āĻ¨ā§‡āĻ° āĻ¸ā§‡āĻŸā§‡ āĻ°ā§‚āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻ•āĻ°āĻ¤ā§‡ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨āĨ¤
āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻ• āĻāĻ•āĻŸāĻŋ āĻ—āĻ āĻŋāĻ¤ āĻŸā§‹āĻ•ā§‡āĻ¨āĻžāĻ‡āĻœāĻžāĻ° āĻāĻŦāĻ‚ āĻŦā§‡āĻļ āĻ•āĻŋāĻ›ā§ āĻāĻšā§āĻ›āĻŋāĻ• āĻŸā§‹āĻ•ā§‡āĻ¨ āĻĢāĻŋāĻ˛ā§āĻŸāĻžāĻ°. āĻŸā§‹āĻ•ā§‡āĻ¨āĻžāĻ‡āĻœāĻžāĻ°ā§‡āĻ° āĻ†āĻ—ā§‡ āĻŦā§‡āĻļ āĻ•āĻŋāĻ›ā§ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻšāĻžāĻ° āĻĢāĻŋāĻ˛ā§āĻŸāĻžāĻ°. āĻŸā§‹āĻ•ā§‡āĻ¨āĻžāĻ‡āĻœāĻžāĻ°āĻ°āĻž āĻ¸ā§‹āĻ°ā§āĻ¸ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚āĻ•ā§‡ āĻŸā§‹āĻ•ā§‡āĻ¨ā§‡ āĻŦāĻŋāĻ­āĻ•ā§āĻ¤ āĻ•āĻ°ā§‡, āĻ¯ā§‡āĻŽāĻ¨ āĻ¸ā§āĻĒā§‡āĻ¸ āĻāĻŦāĻ‚ āĻŦāĻŋāĻ°āĻžāĻŽāĻšāĻŋāĻšā§āĻ¨ āĻ…āĻ•ā§āĻˇāĻ°āĨ¤ āĻŸā§‹āĻ•ā§‡āĻ¨āĻĢāĻŋāĻ˛ā§āĻŸāĻžāĻ° āĻŸā§‹āĻ•ā§‡āĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡, āĻŽā§āĻ›ā§‡ āĻĢā§‡āĻ˛āĻ¤ā§‡ āĻŦāĻž āĻ¨āĻ¤ā§āĻ¨ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡, āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻļāĻŦā§āĻĻā§‡āĻ° āĻ•āĻžāĻ¨ā§āĻĄ āĻ›ā§‡āĻĄāĻŧā§‡, āĻ…āĻŦā§āĻ¯āĻ¯āĻŧ āĻ…āĻĒāĻ¸āĻžāĻ°āĻŖ, āĻĒā§āĻ°āĻ¤āĻŋāĻļāĻŦā§āĻĻ āĻ¯ā§‹āĻ— āĻ•āĻ°ā§āĻ¨āĨ¤ CharFilter - āĻĒā§āĻ°ā§‹ āĻ¸ā§‹āĻ°ā§āĻ¸ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°ā§‡, āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, html āĻŸā§āĻ¯āĻžāĻ— āĻ•ā§‡āĻŸā§‡ āĻĻā§‡āĻ¯āĻŧāĨ¤

ES āĻāĻ° āĻŦā§‡āĻļ āĻ•āĻŋāĻ›ā§ āĻ†āĻ›ā§‡ āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻ•. āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻ• āĻ°āĻžāĻļāĻŋāĻ¯āĻŧāĻžāĻ¨.

āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻ¯āĻžāĻ• API āĻāĻŦāĻ‚ āĻ†āĻ¸ā§āĻ¨ āĻĻā§‡āĻ–āĻŋ āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻāĻŦāĻ‚ āĻ°āĻžāĻļāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻ•āĻ°āĻž "āĻŦāĻŋāĻĄāĻŧāĻžāĻ˛āĻ›āĻžāĻ¨āĻž āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻŽāĻœāĻžāĻ° āĻ—āĻ˛ā§āĻĒ" āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚āĻŸāĻŋāĻ•ā§‡ āĻ°ā§‚āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻ•āĻ°ā§‡:

# иŅĐŋĐžĐģŅŒĐˇŅƒĐĩĐŧ Đ°ĐŊĐ°ĐģиСаŅ‚ĐžŅ€ standard       
# ОйŅĐˇĐ°Ņ‚ĐĩĐģŅŒĐŊĐž ĐŊŅƒĐļĐŊĐž ĐŋĐĩŅ€ĐĩĐēОдиŅ€ĐžĐ˛Đ°Ņ‚ŅŒ ĐŊĐĩ ASCII ŅĐ¸ĐŧвОĐģŅ‹
curl -XGET "$ES_URL/_analyze?pretty&analyzer=standard&text=%D0%92%D0%B5%D1%81%D0%B5%D0%BB%D1%8B%D0%B5%20%D0%B8%D1%81%D1%82%D0%BE%D1%80%D0%B8%D0%B8%20%D0%BF%D1%80%D0%BE%20%D0%BA%D0%BE%D1%82%D1%8F%D1%82"
{
  "tokens" : [ {
    "token" : "вĐĩŅĐĩĐģŅ‹Đĩ",
    "start_offset" : 0,
    "end_offset" : 7,
    "type" : "<ALPHANUM>",
    "position" : 0
  }, {
    "token" : "иŅŅ‚ĐžŅ€Đ¸Đ¸",
    "start_offset" : 8,
    "end_offset" : 15,
    "type" : "<ALPHANUM>",
    "position" : 1
  }, {
    "token" : "ĐŋŅ€Đž",
    "start_offset" : 16,
    "end_offset" : 19,
    "type" : "<ALPHANUM>",
    "position" : 2
  }, {
    "token" : "ĐēĐžŅ‚ŅŅ‚",
    "start_offset" : 20,
    "end_offset" : 25,
    "type" : "<ALPHANUM>",
    "position" : 3
  } ]
}
# иŅĐŋĐžĐģŅŒĐˇŅƒĐĩĐŧ Đ°ĐŊĐ°ĐģиСаŅ‚ĐžŅ€ russian
curl -XGET "$ES_URL/_analyze?pretty&analyzer=russian&text=%D0%92%D0%B5%D1%81%D0%B5%D0%BB%D1%8B%D0%B5%20%D0%B8%D1%81%D1%82%D0%BE%D1%80%D0%B8%D0%B8%20%D0%BF%D1%80%D0%BE%20%D0%BA%D0%BE%D1%82%D1%8F%D1%82"
{
  "tokens" : [ {
    "token" : "вĐĩŅĐĩĐģ",
    "start_offset" : 0,
    "end_offset" : 7,
    "type" : "<ALPHANUM>",
    "position" : 0
  }, {
    "token" : "иŅŅ‚ĐžŅ€",
    "start_offset" : 8,
    "end_offset" : 15,
    "type" : "<ALPHANUM>",
    "position" : 1
  }, {
    "token" : "ĐēĐžŅ‚",
    "start_offset" : 20,
    "end_offset" : 25,
    "type" : "<ALPHANUM>",
    "position" : 3
  } ]
}

āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻ• āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚āĻŸāĻŋāĻ•ā§‡ āĻ¸ā§āĻĒā§‡āĻ¸ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦāĻŋāĻ­āĻ•ā§āĻ¤ āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻ¸āĻŦāĻ•āĻŋāĻ›ā§āĻ•ā§‡ āĻ›ā§‹āĻŸ āĻšāĻžāĻ¤ā§‡āĻ° āĻ…āĻ•ā§āĻˇāĻ°ā§‡ āĻ°ā§‚āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻ•āĻ°ā§‡, āĻ°āĻžāĻļāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻ• āĻ—ā§āĻ°ā§āĻ¤ā§āĻŦāĻšā§€āĻ¨ āĻļāĻŦā§āĻĻāĻ—ā§āĻ˛āĻŋ āĻ¸āĻ°āĻŋāĻ¯āĻŧā§‡ āĻĻā§‡āĻ¯āĻŧ, āĻāĻŸāĻŋāĻ•ā§‡ āĻ›ā§‹āĻŸ āĻšāĻžāĻ¤ā§‡āĻ° āĻ…āĻ•ā§āĻˇāĻ°ā§‡ āĻ°ā§‚āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻ•āĻ°ā§‡ āĻāĻŦāĻ‚ āĻļāĻŦā§āĻĻā§‡āĻ° āĻ¸ā§āĻŸā§‡āĻŽāĻŸāĻŋ āĻ°ā§‡āĻ–ā§‡ āĻĻā§‡āĻ¯āĻŧāĨ¤

āĻ†āĻ¸ā§āĻ¨ āĻĻā§‡āĻ–āĻŋ āĻ°āĻžāĻļāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻ• āĻ•ā§‹āĻ¨ āĻŸā§‹āĻ•ā§‡āĻ¨āĻžāĻ‡āĻœāĻžāĻ°, āĻŸā§‹āĻ•ā§‡āĻ¨āĻĢāĻŋāĻ˛ā§āĻŸāĻžāĻ°, āĻšāĻžāĻ°āĻĢāĻŋāĻ˛ā§āĻŸāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡:

{
  "filter": {
    "russian_stop": {
      "type":       "stop",
      "stopwords":  "_russian_"
    },
    "russian_keywords": {
      "type":       "keyword_marker",
      "keywords":   []
    },
    "russian_stemmer": {
      "type":       "stemmer",
      "language":   "russian"
    }
  },
  "analyzer": {
    "russian": {
      "tokenizer":  "standard",
      /* TokenFilters */
      "filter": [
        "lowercase",
        "russian_stop",
        "russian_keywords",
        "russian_stemmer"
      ]
      /* CharFilters ĐžŅ‚ŅŅƒŅ‚ŅŅ‚вŅƒŅŽŅ‚ */
    }
  }
}

āĻ†āĻ¸ā§āĻ¨ āĻ°āĻžāĻļāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻ­āĻŋāĻ¤ā§āĻ¤āĻŋāĻ• āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻ• āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻ•āĻ°āĻŋ, āĻ¯āĻž āĻāĻ‡āĻšāĻŸāĻŋāĻāĻŽāĻāĻ˛ āĻŸā§āĻ¯āĻžāĻ—āĻ—ā§āĻ˛āĻŋ āĻ•ā§‡āĻŸā§‡ āĻĢā§‡āĻ˛āĻŦā§‡āĨ¤ āĻāĻ° āĻĄāĻŋāĻĢāĻ˛ā§āĻŸ āĻ•āĻ˛ āĻ•āĻ°āĻž āĻ¯āĻžāĻ•, āĻ•āĻžāĻ°āĻŖ āĻāĻ‡ āĻ¨āĻžāĻŽā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻ• āĻĄāĻŋāĻĢāĻ˛ā§āĻŸāĻ°ā§‚āĻĒā§‡ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻž āĻšāĻŦā§‡āĨ¤

{
  "filter": {
    "ru_stop": {
      "type":       "stop",
      "stopwords":  "_russian_"
    },
    "ru_stemmer": {
      "type":       "stemmer",
      "language":   "russian"
    }
  },
  "analyzer": {
    "default": {
      /* дОйавĐģŅĐĩĐŧ ŅƒĐ´Đ°ĐģĐĩĐŊиĐĩ html Ņ‚ĐĩĐŗОв */
      "char_filter": ["html_strip"],
      "tokenizer":  "standard",
      "filter": [
        "lowercase",
        "ru_stop",
        "ru_stemmer"
      ]
    }
  }
}

āĻĒā§āĻ°āĻĨāĻŽāĻ¤, āĻ¸ā§‹āĻ°ā§āĻ¸ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚ āĻĨā§‡āĻ•ā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¤ HTML āĻŸā§āĻ¯āĻžāĻ— āĻŽā§āĻ›ā§‡ āĻĢā§‡āĻ˛āĻž āĻšāĻŦā§‡, āĻ¤āĻžāĻ°āĻĒāĻ° āĻŸā§‹āĻ•ā§‡āĻ¨āĻžāĻ‡āĻœāĻžāĻ° āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻāĻŸāĻŋāĻ•ā§‡ āĻŸā§‹āĻ•ā§‡āĻ¨ā§‡ āĻŦāĻŋāĻ­āĻ•ā§āĻ¤ āĻ•āĻ°āĻŦā§‡, āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§‚āĻĒ āĻŸā§‹āĻ•ā§‡āĻ¨āĻ—ā§āĻ˛āĻŋ āĻ›ā§‹āĻŸ āĻšāĻžāĻ¤ā§‡āĻ° āĻ…āĻ•ā§āĻˇāĻ°ā§‡ āĻšāĻ˛ā§‡ āĻ¯āĻžāĻŦā§‡, āĻ¤ā§āĻšā§āĻ› āĻļāĻŦā§āĻĻāĻ—ā§āĻ˛āĻŋ āĻ¸āĻ°āĻžāĻ¨ā§‹ āĻšāĻŦā§‡ āĻāĻŦāĻ‚ āĻ…āĻŦāĻļāĻŋāĻˇā§āĻŸ āĻŸā§‹āĻ•ā§‡āĻ¨āĻ—ā§āĻ˛āĻŋ āĻļāĻŦā§āĻĻā§‡āĻ° āĻ¸ā§āĻŸā§‡āĻŽ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻĨāĻžāĻ•āĻŦā§‡ā§ˇ

āĻāĻ•āĻŸāĻŋ āĻ¸ā§‚āĻšāĻ• āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

āĻ‰āĻĒāĻ°ā§‡ āĻ†āĻŽāĻ°āĻž āĻĄāĻŋāĻĢāĻ˛ā§āĻŸ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻ• āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻ•āĻ°ā§‡āĻ›āĻŋāĨ¤ āĻāĻŸāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸ā§āĻŸā§āĻ°āĻŋāĻ‚ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻĒā§āĻ°āĻ¯ā§‹āĻœā§āĻ¯ āĻšāĻŦā§‡āĨ¤ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĒā§‹āĻ¸ā§āĻŸā§‡ āĻŸā§āĻ¯āĻžāĻ—āĻ—ā§āĻ˛āĻŋāĻ° āĻāĻ•āĻŸāĻŋ āĻ…ā§āĻ¯āĻžāĻ°ā§‡ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¤āĻžāĻ‡ āĻŸā§āĻ¯āĻžāĻ—āĻ—ā§āĻ˛āĻŋāĻ“ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻ• āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ•āĻ°āĻž āĻšāĻŦā§‡āĨ¤ āĻ•āĻžāĻ°āĻŖ āĻ†āĻŽāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻŸā§āĻ¯āĻžāĻ—ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻšā§āĻŦāĻšā§ āĻŽāĻŋāĻ˛ā§‡āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻĒā§‹āĻ¸ā§āĻŸāĻ—ā§āĻ˛āĻŋ āĻ–ā§āĻāĻœāĻ›āĻŋ, āĻ¤āĻžāĻ°āĻĒāĻ° āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŸā§āĻ¯āĻžāĻ— āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻŖ āĻ¨āĻŋāĻˇā§āĻ•ā§āĻ°āĻŋāĻ¯āĻŧ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡ā§ˇ

āĻ†āĻ¸ā§āĻ¨ āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻ• āĻāĻŦāĻ‚ āĻŽā§āĻ¯āĻžāĻĒāĻŋāĻ‚ āĻ¸āĻš āĻāĻ•āĻŸāĻŋ āĻ¸ā§‚āĻšāĻ• āĻŦā§āĻ˛āĻ— 2 āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻŋ, āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻŸā§āĻ¯āĻžāĻ— āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡āĻ° āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻŖ āĻ¨āĻŋāĻˇā§āĻ•ā§āĻ°āĻŋāĻ¯āĻŧ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡:

curl -XPOST "$ES_URL/blog2" -d'
{
  "settings": {
    "analysis": {
      "filter": {
        "ru_stop": {
          "type": "stop",
          "stopwords": "_russian_"
        },
        "ru_stemmer": {
          "type": "stemmer",
          "language": "russian"
        }
      },
      "analyzer": {
        "default": {
          "char_filter": [
            "html_strip"
          ],
          "tokenizer": "standard",
          "filter": [
            "lowercase",
            "ru_stop",
            "ru_stemmer"
          ]
        }
      }
    }
  },
  "mappings": {
    "post": {
      "properties": {
        "content": {
          "type": "string"
        },
        "published_at": {
          "type": "date"
        },
        "tags": {
          "type": "string",
          "index": "not_analyzed"
        },
        "title": {
          "type": "string"
        }
      }
    }
  }
}'

āĻ†āĻ¸ā§āĻ¨ āĻāĻ‡ āĻ¸ā§‚āĻšāĻ•ā§‡ āĻāĻ•āĻ‡ 3 āĻŸāĻŋ āĻĒā§‹āĻ¸ā§āĻŸ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻŋ (āĻŦā§āĻ˛āĻ—2)āĨ¤ āĻ†āĻŽāĻŋ āĻāĻ‡ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻŸāĻŋ āĻŦāĻžāĻĻ āĻĻā§‡āĻŦ āĻ•āĻžāĻ°āĻŖ... āĻāĻŸāĻŋ āĻŦā§āĻ˛āĻ— āĻ¸ā§‚āĻšā§€āĻ¤ā§‡ āĻ¨āĻĨāĻŋ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻžāĻ° āĻ…āĻ¨ā§āĻ°ā§‚āĻĒāĨ¤

āĻ…āĻ­āĻŋāĻŦā§āĻ¯āĻ•ā§āĻ¤āĻŋ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¸āĻš āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻĒāĻžāĻ ā§āĻ¯ āĻ…āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨

āĻ†āĻ¸ā§āĻ¨ āĻ…āĻ¨ā§āĻ¯ āĻ§āĻ°āĻŖā§‡āĻ° āĻ…āĻ¨ā§āĻ°ā§‹āĻ§āĻŸāĻŋ āĻāĻ•āĻŦāĻžāĻ° āĻĻā§‡āĻ–ā§‡ āĻ¨ā§‡āĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻ•:

# ĐŊаКдĐĩĐŧ Đ´ĐžĐēŅƒĐŧĐĩĐŊŅ‚Ņ‹, в ĐēĐžŅ‚ĐžŅ€Ņ‹Ņ… вŅŅ‚Ņ€ĐĩŅ‡Đ°ĐĩŅ‚ŅŅ ŅĐģОвО 'иŅŅ‚ĐžŅ€Đ¸Đ¸'
# query -> simple_query_string -> query ŅĐžĐ´ĐĩŅ€ĐļиŅ‚ ĐŋОиŅĐēОвŅ‹Đš СаĐŋŅ€ĐžŅ
# ĐŋĐžĐģĐĩ title иĐŧĐĩĐĩŅ‚ ĐŋŅ€Đ¸ĐžŅ€Đ¸Ņ‚ĐĩŅ‚ 3
# ĐŋĐžĐģĐĩ tags иĐŧĐĩĐĩŅ‚ ĐŋŅ€Đ¸ĐžŅ€Đ¸Ņ‚ĐĩŅ‚ 2
# ĐŋĐžĐģĐĩ content иĐŧĐĩĐĩŅ‚ ĐŋŅ€Đ¸ĐžŅ€Đ¸Ņ‚ĐĩŅ‚ 1
# ĐŋŅ€Đ¸ĐžŅ€Đ¸Ņ‚ĐĩŅ‚ иŅĐŋĐžĐģŅŒĐˇŅƒĐĩŅ‚ŅŅ ĐŋŅ€Đ¸ Ņ€Đ°ĐŊĐļиŅ€ĐžĐ˛Đ°ĐŊии Ņ€ĐĩСŅƒĐģŅŒŅ‚Đ°Ņ‚Ов
curl -XPOST "$ES_URL/blog2/post/_search?pretty" -d'
{
  "query": {
    "simple_query_string": {
      "query": "иŅŅ‚ĐžŅ€Đ¸Đ¸",
      "fields": [
        "title^3",
        "tags^2",
        "content"
      ]
    }
  }
}'

āĻ•āĻžāĻ°āĻŖ āĻ†āĻŽāĻ°āĻž āĻ°āĻžāĻļāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻ¸ā§āĻŸā§‡āĻŽāĻŋāĻ‚ āĻ¸āĻš āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻļā§āĻ˛ā§‡āĻˇāĻ• āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ›āĻŋ, āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻ‡ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§āĻŸāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¨āĻĨāĻŋ āĻĢā§‡āĻ°āĻ¤ āĻĻā§‡āĻŦā§‡, āĻ¯āĻĻāĻŋāĻ“ āĻ¸ā§‡āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° 'āĻ‡āĻ¤āĻŋāĻšāĻžāĻ¸' āĻļāĻŦā§āĻĻāĻŸāĻŋ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤

āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ā§‡ āĻŦāĻŋāĻļā§‡āĻˇ āĻ…āĻ•ā§āĻˇāĻ° āĻĨāĻžāĻ•āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡, āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ:

""fried eggs" +(eggplant | potato) -frittata"

āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ āĻ¸āĻŋāĻ¨āĻŸā§āĻ¯āĻžāĻ•ā§āĻ¸:

+ signifies AND operation
| signifies OR operation
- negates a single token
" wraps a number of tokens to signify a phrase for searching
* at the end of a term signifies a prefix query
( and ) signify precedence
~N after a word signifies edit distance (fuzziness)
~N after a phrase signifies slop amount
# ĐŊаКдĐĩĐŧ Đ´ĐžĐēŅƒĐŧĐĩĐŊŅ‚Ņ‹ ĐąĐĩС ŅĐģОва 'Ņ‰ĐĩĐŊĐēи'
curl -XPOST "$ES_URL/blog2/post/_search?pretty" -d'
{
  "query": {
    "simple_query_string": {
      "query": "-Ņ‰ĐĩĐŊĐēи",
      "fields": [
        "title^3",
        "tags^2",
        "content"
      ]
    }
  }
}'

# ĐŋĐžĐģŅƒŅ‡Đ¸Đŧ 2 ĐŋĐžŅŅ‚Đ° ĐŋŅ€Đž ĐēĐžŅ‚иĐēОв

āĻ°ā§‡āĻĢāĻžāĻ°ā§‡āĻ¨ā§āĻ¸

PS

āĻ†āĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ…āĻ¨ā§āĻ°ā§‚āĻĒ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§-āĻĒāĻžāĻ ā§‡āĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧā§‡ āĻ†āĻ—ā§āĻ°āĻšā§€ āĻšāĻ¨, āĻ¨āĻ¤ā§āĻ¨ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ§āĻžāĻ°āĻŖāĻž āĻ°āĻžāĻ–ā§‡āĻ¨ āĻŦāĻž āĻ¸āĻšāĻ¯ā§‹āĻ—āĻŋāĻ¤āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¸ā§āĻ¤āĻžāĻŦ āĻ°āĻžāĻ–ā§‡āĻ¨, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻ†āĻŽāĻŋ āĻŦā§āĻ¯āĻ•ā§āĻ¤āĻŋāĻ—āĻ¤ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ¯āĻŧ āĻŦāĻž āĻ‡āĻŽā§‡āĻ˛ā§‡āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻāĻ•āĻŸāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĒā§‡āĻ¯āĻŧā§‡ āĻ–ā§āĻļāĻŋ āĻšāĻŦ [āĻ‡āĻŽā§‡āĻ˛ āĻ¸ā§āĻ°āĻ•ā§āĻˇāĻŋāĻ¤].

āĻ‰āĻ¤ā§āĻ¸: www.habr.com