Last active
May 10, 2018 11:48
-
-
Save keremcankabadayi/c43b4f7c7fc1128da0fdd2f5210f9ff6 to your computer and use it in GitHub Desktop.
Elastic-Percolator Research - Issues
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
GET /_cat/indices?v | |
DELETE * | |
PUT /my-index | |
{ | |
"settings": { | |
"analysis": { | |
"analyzer": { | |
"standard_lowercase_example": { | |
"type": "custom", | |
"tokenizer": "whitespace", | |
"filter": ["lowercase"] | |
}, | |
"turkish_lowercase_example": { | |
"type": "custom", | |
"tokenizer": "whitespace", | |
"filter": ["turkish_lowercase"] | |
} | |
}, | |
"filter": { | |
"turkish_lowercase": { | |
"type": "lowercase", | |
"language": "turkish" | |
} | |
} | |
} | |
}, | |
"mappings": { | |
"_doc": { | |
"properties": { | |
"title": { | |
"type": "text", | |
"analyzer": "standard_lowercase_example" | |
}, | |
"query": { | |
"type": "percolator" | |
} | |
} | |
} | |
} | |
} | |
POST /my-index/_doc/ | |
{ | |
"query": { | |
"span_near" : { | |
"clauses" : [ | |
{ "span_term" : { "title" : "idari" } }, | |
{ "span_term" : { "title" : "yargının" } }, | |
{ "span_term" : { "title" : "gelişimi" } } | |
], | |
"slop" : 0, | |
"in_order" : true | |
} | |
} | |
} | |
GET /my-index/_search | |
{ | |
"query" : { | |
"percolate" : { | |
"field": "query", | |
"document" : { | |
"title" : "Dünya Mirası Sözleşmesi 20. komutancıkcı kerem-betül geldi İdari Yargının Gelişimi" | |
} | |
} | |
}, | |
"highlight": { | |
"fields": { | |
"title": { | |
"number_of_fragments" : 3, | |
"fragment_size" : 1500 | |
} | |
} | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// see indexes | |
GET /_cat/indices?v | |
// delete all indexes | |
DELETE * | |
//creating percolator index | |
PUT /my-index | |
{ | |
"mappings": { | |
"_doc": { | |
"properties": { | |
"message": { | |
"type": "text" | |
}, | |
"query": { | |
"type": "percolator" | |
} | |
} | |
} | |
} | |
} | |
//creating percolator index with analyzer | |
PUT /my-index | |
{ | |
"settings": { | |
"analysis": { | |
"analyzer": { | |
"standard_lowercase_example": { | |
"type": "custom", | |
"tokenizer": "whitespace", | |
"filter": ["lowercase"] | |
}, | |
"turkish_lowercase_example": { | |
"type": "custom", | |
"tokenizer": "whitespace", | |
"filter": ["turkish_lowercase"] | |
} | |
}, | |
"filter": { | |
"turkish_lowercase": { | |
"type": "lowercase", | |
"language": "turkish" | |
} | |
} | |
} | |
}, | |
"mappings": { | |
"_doc": { | |
"properties": { | |
"title": { | |
"type": "text", | |
"analyzer": "standard_lowercase_example" | |
}, | |
"query": { | |
"type": "percolator" | |
} | |
} | |
} | |
} | |
} | |
//put a percolate query. ids are auto-incremented. "message" is field name. | |
POST /my-index/_doc/?refresh | |
{ | |
"query" : { | |
"match" : { | |
"message" : "seçkin" | |
} | |
} | |
} | |
//new document | |
//fragment_size is size of our document in the result. if we want to see all document, number must be big. | |
GET /my-index/_search | |
{ | |
"query" : { | |
"percolate" : { | |
"field": "query", | |
"document" : { | |
"message" : "Anasayfa, seçkin maddelerden birinin giriş bölümünün sergilendiği bir bölüme sahiptir. Bu bölümde, okuyuculara Vikipedi'nin ürettiği en başarılı içerik örnekleri sergilenmektedir. Bu ayın anasayfaya çıkan seçkin madde listesi buradan görülebilir. Maddenin anasayfaya çıkabilmesi için seçkin madde statüsünde olması gerekmektedir (herhangi bir maddeyi aday göstermek için bkz: Vikipedi:Seçkin madde adayları). Seçkin madde statüsü alan maddeler, seçilme sıralarına göre kronolojik olarak anasayfaya çıkarlar. Seçkin içerik sorumluları, anasayfaya çıkacak olan maddelerin düzeninden ve sistemin sağlıklı işleyişinden sorumludur. Konuyla ilgili bilgi almak veya herhangi bir sorun bildirmek için lütfen sorumluların sayfasına mesaj bırakın." | |
} | |
} | |
}, | |
"highlight": { | |
"fields": { | |
"message": { | |
"number_of_fragments" : 20, | |
"no_match_size": 50, | |
"fragment_size" : 200 | |
} | |
} | |
} | |
//result | |
{ | |
"took": 82, | |
"timed_out": false, | |
"_shards": { | |
"total": 5, | |
"successful": 5, | |
"skipped": 0, | |
"failed": 0 | |
}, | |
"hits": { | |
"total": 1, | |
"max_score": 0.51040375, | |
"hits": [ | |
{ | |
"_index": "my-index", | |
"_type": "_doc", | |
"_id": "0IFCRGMBALUwXXg1w9QP", | |
"_score": 0.51040375, | |
"_source": { | |
"query": { | |
"match": { | |
"message": "seçkin" | |
} | |
} | |
}, | |
"fields": { | |
"_percolator_document_slot": [ | |
0 | |
] | |
}, | |
"highlight": { | |
"message": [ | |
"Anasayfa, <em>seçkin</em> maddelerden birinin giriş bölümünün sergilendiği bir bölüme sahiptir. Bu bölümde, okuyuculara Vikipedi'nin ürettiği en başarılı içerik örnekleri sergilenmektedir. Bu ayın anasayfaya çıkan <em>seçkin</em> madde listesi buradan görülebilir. Maddenin anasayfaya çıkabilmesi için <em>seçkin</em> madde statüsünde olması gerekmektedir (herhangi bir maddeyi aday göstermek için bkz: Vikipedi:Seçkin madde adayları). <em>Seçkin</em> madde statüsü alan maddeler, seçilme sıralarına göre kronolojik olarak anasayfaya çıkarlar. <em>Seçkin</em> içerik sorumluları, anasayfaya çıkacak olan maddelerin düzeninden ve sistemin sağlıklı işleyişinden sorumludur. Konuyla ilgili bilgi almak veya herhangi bir sorun bildirmek için lütfen sorumluların sayfasına mesaj bırakın." | |
] | |
} | |
} | |
] | |
} | |
} | |
//if we add this percolator query | |
POST /my-index/_doc/?refresh | |
{ | |
"query" : { | |
"match" : { | |
"message" : "seçkin maddelerden" | |
} | |
} | |
} | |
//result is not what we expect. at first match "maddelerden" is matching at end of the message. | |
{ | |
"took": 76, | |
"timed_out": false, | |
"_shards": { | |
"total": 5, | |
"successful": 5, | |
"skipped": 0, | |
"failed": 0 | |
}, | |
"hits": { | |
"total": 2, | |
"max_score": 0.9080545, | |
"hits": [ | |
{ | |
"_index": "my-index", | |
"_type": "_doc", | |
"_id": "0YFERGMBALUwXXg1RdTW", | |
"_score": 0.9080545, | |
"_source": { | |
"query": { | |
"match": { | |
"message": "seçkin maddelerden" | |
} | |
} | |
}, | |
"fields": { | |
"_percolator_document_slot": [ | |
0 | |
] | |
}, | |
"highlight": { | |
"message": [ | |
"Anasayfa, <em>seçkin</em> <em>maddelerden</em> birinin giriş bölümünün sergilendiği bir bölüme sahiptir. Bu bölümde, okuyuculara Vikipedi'nin ürettiği en başarılı içerik örnekleri sergilenmektedir. Bu ayın anasayfaya çıkan <em>seçkin</em> madde listesi buradan görülebilir. Maddenin anasayfaya çıkabilmesi için <em>seçkin</em> madde statüsünde olması gerekmektedir (herhangi bir maddeyi aday göstermek için bkz: Vikipedi:Seçkin madde adayları). <em>Seçkin</em> madde statüsü alan maddeler, seçilme sıralarına göre kronolojik olarak anasayfaya çıkarlar. <em>Seçkin</em> içerik sorumluları, anasayfaya çıkacak olan maddelerin düzeninden ve sistemin sağlıklı işleyişinden sorumludur. Konuyla ilgili bilgi almak veya herhangi bir sorun bildirmek için lütfen sorumluların sayfasına mesaj bırakın <em>maddelerden</em>." | |
] | |
} | |
}, | |
{ | |
"_index": "my-index", | |
"_type": "_doc", | |
"_id": "0IFCRGMBALUwXXg1w9QP", | |
"_score": 0.51123756, | |
"_source": { | |
"query": { | |
"match": { | |
"message": "seçkin" | |
} | |
} | |
}, | |
"fields": { | |
"_percolator_document_slot": [ | |
0 | |
] | |
}, | |
"highlight": { | |
"message": [ | |
"Anasayfa, <em>seçkin</em> maddelerden birinin giriş bölümünün sergilendiği bir bölüme sahiptir. Bu bölümde, okuyuculara Vikipedi'nin ürettiği en başarılı içerik örnekleri sergilenmektedir. Bu ayın anasayfaya çıkan <em>seçkin</em> madde listesi buradan görülebilir. Maddenin anasayfaya çıkabilmesi için <em>seçkin</em> madde statüsünde olması gerekmektedir (herhangi bir maddeyi aday göstermek için bkz: Vikipedi:Seçkin madde adayları). <em>Seçkin</em> madde statüsü alan maddeler, seçilme sıralarına göre kronolojik olarak anasayfaya çıkarlar. <em>Seçkin</em> içerik sorumluları, anasayfaya çıkacak olan maddelerin düzeninden ve sistemin sağlıklı işleyişinden sorumludur. Konuyla ilgili bilgi almak veya herhangi bir sorun bildirmek için lütfen sorumluların sayfasına mesaj bırakın maddelerden." | |
] | |
} | |
} | |
] | |
} | |
} | |
// to get over above issue we should use span like this. | |
POST /my-index/_doc/ | |
{ | |
"query": { | |
"span_near" : { | |
"clauses" : [ | |
{ "span_term" : { "message" : "seçkin" } }, | |
{ "span_term" : { "message" : "maddelerden" } } | |
], | |
"slop" : 0, | |
"in_order" : true | |
} | |
} | |
} | |
//new document same the previous one | |
GET /my-index/_search | |
{ | |
"query" : { | |
"percolate" : { | |
"field": "query", | |
"document" : { | |
"message" : "Anasayfa, seçkin maddelerden birinin giriş bölümünün sergilendiği bir bölüme sahiptir. Bu bölümde, okuyuculara Vikipedi'nin ürettiği en başarılı içerik örnekleri sergilenmektedir. Bu ayın anasayfaya çıkan seçkin madde listesi buradan görülebilir. Maddenin anasayfaya çıkabilmesi için seçkin madde statüsünde olması gerekmektedir (herhangi bir maddeyi aday göstermek için bkz: Vikipedi:Seçkin madde adayları). Seçkin madde statüsü alan maddeler, seçilme sıralarına göre kronolojik olarak anasayfaya çıkarlar. Seçkin içerik sorumluları, anasayfaya çıkacak olan maddelerin düzeninden ve sistemin sağlıklı işleyişinden sorumludur. Konuyla ilgili bilgi almak veya herhangi bir sorun bildirmek için lütfen sorumluların sayfasına mesaj bırakın maddelerden." | |
} | |
} | |
}, | |
"highlight": { | |
"fields": { | |
"message": { | |
"number_of_fragments" : 3, | |
"fragment_size" : 1500 | |
} | |
} | |
} | |
} | |
//result is like. | |
// as we see, only one match because we use span_term | |
{ | |
"took": 82, | |
"timed_out": false, | |
"_shards": { | |
"total": 5, | |
"successful": 5, | |
"skipped": 0, | |
"failed": 0 | |
}, | |
"hits": { | |
"total": 1, | |
"max_score": 0.5780211, | |
"hits": [ | |
{ | |
"_index": "my-index", | |
"_type": "_doc", | |
"_id": "my-span-query", | |
"_score": 0.5780211, | |
"_source": { | |
"query": { | |
"span_near": { | |
"clauses": [ | |
{ | |
"span_term": { | |
"message": "seçkin" | |
} | |
}, | |
{ | |
"span_term": { | |
"message": "maddelerden" | |
} | |
} | |
], | |
"slop": 0, | |
"in_order": true | |
} | |
} | |
}, | |
"fields": { | |
"_percolator_document_slot": [ | |
0 | |
] | |
}, | |
"highlight": { | |
"message": [ | |
"Anasayfa, <em>seçkin</em> <em>maddelerden</em> birinin giriş bölümünün sergilendiği bir bölüme sahiptir. Bu bölümde, okuyuculara Vikipedi'nin ürettiği en başarılı içerik örnekleri sergilenmektedir. Bu ayın anasayfaya çıkan seçkin madde listesi buradan görülebilir. Maddenin anasayfaya çıkabilmesi için seçkin madde statüsünde olması gerekmektedir (herhangi bir maddeyi aday göstermek için bkz: Vikipedi:Seçkin madde adayları). Seçkin madde statüsü alan maddeler, seçilme sıralarına göre kronolojik olarak anasayfaya çıkarlar. Seçkin içerik sorumluları, anasayfaya çıkacak olan maddelerin düzeninden ve sistemin sağlıklı işleyişinden sorumludur. Konuyla ilgili bilgi almak veya herhangi bir sorun bildirmek için lütfen sorumluların sayfasına mesaj bırakın maddelerden." | |
] | |
} | |
} | |
] | |
} | |
} | |
//using span_multi with prefix. it's highlighting starting with "vik" | |
POST /my-index/_doc/my-span-query?refresh&pretty | |
{ | |
"query": { | |
"span_multi" : { | |
"match":{ | |
"prefix" : { "message" : { "value" : "vik" } } | |
} | |
} | |
} | |
} | |
//result like | |
{ | |
"took": 44, | |
"timed_out": false, | |
"_shards": { | |
"total": 5, | |
"successful": 5, | |
"skipped": 0, | |
"failed": 0 | |
}, | |
"hits": { | |
"total": 1, | |
"max_score": 0.79610133, | |
"hits": [ | |
{ | |
"_index": "my-index", | |
"_type": "_doc", | |
"_id": "my-span-query", | |
"_score": 0.79610133, | |
"_source": { | |
"query": { | |
"span_multi": { | |
"match": { | |
"prefix": { | |
"message": { | |
"value": "vik" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"fields": { | |
"_percolator_document_slot": [ | |
0 | |
] | |
}, | |
"highlight": { | |
"message": [ | |
"Bu bölümde, okuyuculara <em>Vikipedi'nin</em> ürettiği en başarılı içerik örnekleri sergilenmektedir. Bu ayın anasayfaya çıkan seçkin madde listesi buradan görülebilir. Maddenin anasayfaya çıkabilmesi için seçkin madde statüsünde olması gerekmektedir (herhangi bir maddeyi aday göstermek için bkz: <em>Vikipedi:Seçkin</em> madde adayları). Seçkin madde statüsü alan maddeler, seçilme sıralarına göre kronolojik olarak anasayfaya çıkarlar. Seçkin içerik sorumluları, anasayfaya çıkacak olan maddelerin düzeninden ve sistemin sağlıklı işleyişinden sorumludur. Konuyla ilgili bilgi almak veya herhangi bir sorun bildirmek için lütfen sorumluların sayfasına mesaj bırakın maddelerden." | |
] | |
} | |
} | |
] | |
} | |
} | |
mirası kelimesinde büyük i'den kaynaklı sıkıntı var
abcd dediğimiz lowercase öncesi değeri linklerken kullan, yoksa tüm titlelar lowercase oluyor
parantez, tire, virgül dönüşümleri yapılacak
title.json içerisinde Bilim kelimesi geçen çok title var
en, madde, kimya gibi tek olup birden fazla title'da geçen kelime mevcut
main() içindeki print kısmına try catch ekle
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
büyük harf olunca tanımıyor