The consulting company K-Algorithms specializes in the area of architecture, design, development and post-implementation improvements of complex database driven applications.
Every manager of an application development or production support team is familiar with situations where the customer complains about their application running slowly. When hiring new specialists for the team, questions on how to address such situations play the most important role. And yet, diagnostics of application performance problems and/or estimation of application scalability present a major problem which does not have a simple solution.
Performance problems can be created by one program performing an important business function sucking all the juice from the available hardware. Such problems can't necessarily be addressed by simply purchasing more hardware. In particular cases such purchases would not improve anything or would be ridiculously expensive.
In all likelihood, such programs are not using the most efficient algorithms to get the data. In some situations it's acceptable to use a brute force solution, in some situations it's not.
More severe problems happen when entire applications start experiencing performance problems due to growth of data and transactional volume and can't provide desirable levels of performance in terms of response time and/or throughput. Again, this may be addressed by adding raw power, using clustering and other hardware-based solutions or it may need few touches in the data model and/or access patterns in order to break the bottleneck in the least intrusive way.
Implementation of hardware based solutions needs to take into consideration the underlying algorithms and application logic in order to make best use of material investment and to get the biggest bang for the buck. This happens for a very simple reason - even though vendors claim that their solution is universal and provides a certain abstraction layer, each solution has internal logic which gives the best results only when such a solution is used properly. Specifically, it applies to Oracle RAC, partitioning and other quite expensive solutions which buy you nothing but administrative overhead when used incorrectly.
K-Algorithms has consultants with experience in each and every type of database driven application you can find on the market. We have a solid background in computer science and mathematical theory to provide efficient solutions to your problems and extensive industrial experience to make those solutions the most practical, least intrusive and most profitable compared to the alternatives.
We can provide help with Oracle, DB2, MSSQL, MySQL, Informix based applications based on any Unix/Linux or Windows platforms, different clustering solutions, Web applications, older client-server systems, Data Warehouses with slow ETL, cube build processes and the like.
The K(ey) is in the Algorithms!
Copyright ©2006 K-Algorithms Consulting