Hadoop MapReduce based string query on large dataset