This work examines the problem of algorithm performance in the task of determining the number of possible results for next choice when filtering data in web applications. Typically most modern web services using Database Management Systems (DBMS) for handling and storing such data. But the bigger amount of data for filtering is used, the slower web services outputs results. This article describes the essence of the problem and ways to solve it, and proposes an architectural solution for web applications that allows to remove the load from the main DBMS and transfer the solution to this problem into a separate service. The proposed solution can be applied for online catalogs or online stores, where selection is carried out according to a set of criteria, when each element in Boolean form meets the criterion or does not meet. As an example, the algorithm was implemented using the PHP platform on real websites. The proposed algorithm using methods for fast search of intersections between product arrays, that allow to increase search speed and don’t use SQL queries for this purpose. So the sample of code using PHP language provided that implements described algorithm. This allow to host this module as a separate application or as a microservice. As a result the solution allow to increase the speed of search possible result from 1.5 to 10 times faster than using typical solution with SQL queries.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Implementation of Optimized Data Selection Algorithms for Web Applications

  • Oleksandr Godunov,
  • Daria Shkrabachenko

摘要

This work examines the problem of algorithm performance in the task of determining the number of possible results for next choice when filtering data in web applications. Typically most modern web services using Database Management Systems (DBMS) for handling and storing such data. But the bigger amount of data for filtering is used, the slower web services outputs results. This article describes the essence of the problem and ways to solve it, and proposes an architectural solution for web applications that allows to remove the load from the main DBMS and transfer the solution to this problem into a separate service. The proposed solution can be applied for online catalogs or online stores, where selection is carried out according to a set of criteria, when each element in Boolean form meets the criterion or does not meet. As an example, the algorithm was implemented using the PHP platform on real websites. The proposed algorithm using methods for fast search of intersections between product arrays, that allow to increase search speed and don’t use SQL queries for this purpose. So the sample of code using PHP language provided that implements described algorithm. This allow to host this module as a separate application or as a microservice. As a result the solution allow to increase the speed of search possible result from 1.5 to 10 times faster than using typical solution with SQL queries.