Here at POEditor, we’re always trying to optimize and improve performance. For this reason, in the past few weeks, we’ve been really busy reconstructing our Translation Memory engine.
Given the growth rate of POEditor and the number of strings in large accounts, we began noticing some delay in the TM for suggested translations, especially when the system searched for translations of small strings (such as “Account” or “Cancel”). Some tests and debugging quickly pointed us to the database queries, which had become slower as the database increased.
We then took a radical decision, to move all the TM related searches to a dedicated search engine. After lots of research and tests, we choose Elasticsearch, which is based on the powerful Apache Lucene project. Elasticsearch is a flexible and powerful open source, distributed, real-time search and analytics engine, running on Java.
To cut the technical stuff short, the performance improved by a factor of more than 10 times in some cases and it’s expected that the future growth won’t affect the system performance as it did before this.
We would like to see you test the limits of the Translation Memory engine, with countless translations from old and new localization projects. You will surely be compelled by how this powerful piece of software enhances the automated part of the POEditor experience!