# Elasticsearch - Edit distance using fuzzy is inaccurate

**URL:** <https://discuss.elastic.co/t/elasticsearch-edit-distance-using-fuzzy-is-inaccurate/99958>\
**Category:** Elasticsearch\
**Created:** [September 10, 2017, 3:13am UTC](https://discuss.elastic.co/t/elasticsearch-edit-distance-using-fuzzy-is-inaccurate/99958 "2017-09-10T03:13:22Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![prasperl](https://avatars.discourse-cdn.com/v4/letter/p/df788c/32.png) [@prasperl](https://discuss.elastic.co/u/prasperl)\
**Post date:** [September 10, 2017, 3:13am UTC](https://discuss.elastic.co/t/elasticsearch-edit-distance-using-fuzzy-is-inaccurate/99958/1 "2017-09-10T03:13:22Z")

</div>

I am using ES 5.5 and my requirement is to allow upto two edits while matching a field.

In ES,I have value as **124456788** and query comes in as **123456789**

```
"fuzzy": {
							"idkey": {
								"value": **"123456789"** ,
								"fuzziness": "20"
								
							}
						}

```

To my knowledge the edit distance is 2 between these two numbers. But it is not matching even with fuzziness property as 20.

I did an explain api call and here is what I am seeing

```
"description": "no match on required clause (((idkey:012345789)^0.7777778 (idkey:012346789)^0.7777778 (idkey:013456789)^0.7777778 (idkey:023456789)^0.8888889 (idkey:102345678)^0.7777778 (idkey:112345678)^0.7777778 (idkey:113456789)^0.8888889 (idkey:120456589)^0.7777778 (idkey:121345678)^0.7777778 (idkey:122345678)^0.7777778 (idkey:122345679)^0.7777778 (idkey:122456789)^0.8888889 (idkey:123006789)^0.7777778 (idkey:123045678)^0.7777778 (idkey:123096789)^0.7777778 (idkey:123106789)^0.7777778 (idkey:123145678)^0.7777778 (idkey:123146789)^0.7777778 (idkey:123226789)^0.7777778 (idkey:123256789)^0.8888889 (idkey:123345678)^0.7777778 (idkey:123345689)^0.7777778 (idkey:123346789)^0.7777778 (idkey:123406784)^0.7777778 (idkey:123415678)^0.7777778 (idkey:123435678)^0.7777778 (idkey:123446789)^0.8888889 (idkey:123453789)^0.8888889 (idkey:123454789)^0.8888889 (idkey:123455789)^0.8888889 (idkey:123456289)^0.8888889 (idkey:123456489)^0.8888889 (idkey:123456709)^0.8888889 (idkey:123456779)^0.8888889 (idkey:123456780)^0.8888889 (idkey:123456781)^0.8888889 (idkey:123456783)^0.8888889 (idkey:123456785)^0.8888889 (idkey:123456786)^0.8888889 (idkey:123456787)^0.8888889 (idkey:123456889)^0.8888889 (idkey:123457789)^0.8888889 (idkey:123466789)^0.8888889 (idkey:123496789)^0.8888889 (idkey:123556789)^0.8888889 (idkey:126456789)^0.8888889 (idkey:223456789)^0.8888889 (idkey:423456789)^0.8888889 (idkey:623456789)^0.8888889 (idkey:723456789)^0.8888889)^5.0)",

```

The value I am expecting to match is 124456788 but ES query is internally not converting it as one of the possible match parameter in fuzzy query.

Do i need to use different ES method to make this work?

---

<div class="post-metadata">

**Author:** ![spinscale](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/spinscale/32/25011_2.png) [@spinscale](https://discuss.elastic.co/u/spinscale)\
**Post date:** [September 11, 2017, 7:08am UTC](https://discuss.elastic.co/t/elasticsearch-edit-distance-using-fuzzy-is-inaccurate/99958/2 "2017-09-11T07:08:26Z")

</div>

check the documentation about [fuzziness](https://www.elastic.co/guide/en/elasticsearch/reference/5.5/common-options.html#fuzziness) and how many transpositions it is supporting.

You might want to check out the [phonetic analysis plugin](https://www.elastic.co/guide/en/elasticsearch/plugins/5.5/analysis-phonetic.html) as an alternative.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [October 9, 2017, 7:08am UTC](https://discuss.elastic.co/t/elasticsearch-edit-distance-using-fuzzy-is-inaccurate/99958/3 "2017-10-09T07:08:27Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
