mindit.io logo
    • retail
      • / retail

        Retail industry, mindit.io

        In the intricate world of retail, mindit.io stands out as your strategic ally.

    • banking
      • / banking
        Woman using a card payment terminal, retail sector, mindit.io

        We partner with European banks on AI transformation, data-platform modernization, and regulatory-grade integration across Benelux, DACH, and UK.

    • financial services
      • / financial services

        Financial services: mindit.io data and AI

        Custom software and data platforms for asset managers, payments providers, and insurers across DACH and the US.

    • healthcare
      • / healthcare

        Doctor with digital tablet in hospital, healthcare sector, mindit.io

        ML and integration solutions for hospitals, health-tech platforms, and national health systems, including Switzerland’s national health sector.

    • hospitality
      • / hospitality
        Hospitality: mindit.io data and AI

        Operational and guest-experience software for hotels, restaurants, and global travel groups.

    • foodtech
      • / foodtech
        Burger and fresh salad, food and beverage sector, mindit.io

        Product engineering for the food industry: from plant-based configurators to supply-chain analytics.

    • manufacturing
      • / manufacturing
        Aerial view of industrial conveyor belt, manufacturing sector, mindit.io

        Industrial software, IoT integration, and data platforms for manufacturers modernizing operations.

    • publishing
      • / publishing
        Publishing: mindit.io AI solutions

        ML platforms and editorial workflow systems for publishers, including Izzard Ink Publishing.

    • real estate
      • / real estate
        Modern residential buildings at dusk, real estate sector, mindit.io

        Property tech and data analytics for real-estate operators and asset managers.

    • telco
      • / telco
        Person using smartphone, telecom sector, mindit.io

        Telecom-grade software for network optimization, customer-facing apps, and AI-driven insights.

    • / company
    • about us
      • / about us

        mindit.io partners and people
        The partner of choice for data & product engineering to drive business growth & deliver an impact within your organization
    • product engineering
      • / product engineering
        We specialize in Software Product Engineering, transforming your concepts into impactful products.
    • technology
      • / technology
        mindit.io AI Native company
        250+ specialists skilled in software, BI, integration, offering end-to-end services from research to ongoing maintenance.
    • methodology
      • / methodology
        Custom software solutions, mindit.io
        We specialize in software product engineering, transforming your concepts into impactful products.
    • careers
      • / careers
        Careers at mindit.io
        Our team needs one more awesome person, like you. Let’s grow together! Why not give it a try?
    • do good
      • / do good
        mindit.io team member do good ESG initiatives by the sea
        We’re a team devoted to making the world better with small acts. We get involved and always stand for kindness.
    • events
      • / events
        From Databricks’ Data + AI Summit to Day-to-Day: How the Latest Announcements Impact Real Deployments – Live Webinar
    • blog
      • / blog
        Databricks Just Moved the Goalposts. Here’s What That Means for Your Team.
        Databricks just rebuilt the data stack for AI agents. Here is what Retail and Banking should do about it.
    • contact us
      • / contact us
        Request a mindit.io webinar
        We would love to hear from you! We have offices and teams in Romania and Switzerland. How can we make your business thrive?
  • / get in touch

helping enterprises become AI-native organizations

Application performance

Working on applications with a lot of data and thousands of users it means that we always need to be with an eye on performance. We often hear questions like “Why this save takes so long?” or “Why your request is faster than mine” and so on. So we put together a list of tips& tricks / best practices that will always help you keep your performance under control.
1. sendStringParametersAsUnicode

The default value for this property is true, which means that String parameters are send to the database in Unicode format (for example it will send VARCHAR parameter in NVARCHAR, so there will be an extra/implicit conversion).If we set this value to false, the String parameters will be sent to the database in non-Unicode format. Below we have an example of a query run with the parameter set to true and then the same query with the parameter set to false.
sendStringParameterAsUnicode=true
sendStringParameterAsUnicode=false


2. Caching

Caching helps to avoid reading the same data multiple times, so the time used for that reading will decrease considerably, especially if we have a lot of data. But it is important to apply this concept to data that does not change very often, because otherwise the new changes on those data will not be taken into account, the old version being saved in the cache.
Without caching
With caching

For 44k rows, we can see that the time has decreased from 21 seconds to 23 milliseconds using caching, so this is an important instrument in controlling the performance of an application.


3. Moving logic from Java to SQL

Implementing business logic in SQL is probably not the first thought that comes to mind for a developer. Many are accustomed to keeping the database just to store information and all the logic to be done in Java. But there are situations where a logic written in SQL saves more time, the database being very efficient in working with a lot of heavy data. The best way we can do this is through stored procedures called from Java or through native queries.
Logic in Java
Logic in SQL4.


4. Asynchronous methods

Asynchronous methods help a lot in reducing execution time, but must be used intelligently, not in situations where these methods update the data used immediately in the application. For example, we may use asynchronous methods when we want to send notifications/emails to users to let them know that their data processing is complete. Sending the email may take some time, so there is no need for the application to wait for the email to be sent to display the end of the operation in the UI.

This also helps if the asynchronous method fails, so that the user does not feel this in the application and can continue to work
Without async method
With async method

Here are some simple examples of how we can improve the performance of an application, things we may or may not have thought about, but which, with a few changes, help keep a large application under control.

Distribute:

/turn your vision into reality

The best way to start a long-term collaboration is with a Pilot project. Let’s talk.