Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Risks and benefits when implementing

 

Custom implementation

...

When a custom implementation is created please keep in mind that Blueriq upgrades may lead to changes in the persistence API, which should be implemented in the custom implementation to avoid loss of functionality (eq. Blueriq plugins who call the API). Where possible we will try to be backwards compatible, but if not possible it may be that the impact of an upgrade is larger then usually. 

 

Different programming language

 

When the default programming language within an organization is different from Java it may not be desirable to obtain and maintain Java knowledge. This could be a reason to implement a complete custom Persistence API implementation in the desired programming language. Besides the OLingo (Java) library which is used by Blueriq, libraries are available for at least .Net, Javascript, C++ and Python. 

...

  • Benefit
    • Free to choose a programming language
  • Risks
    • Knowledge of OData is needed.
    • A specific OData implementation is needed that understands the URL's generated by Blueriq. The URL's generated by the runtime are specific for Blueriq due to the generic behavior of the product.

...

Different database

...

Within many enterprise organisations a certain database type is preferred above others. Please see Patform Support for more details on our supported database types. If the preferred database type of a customer is different and the costs of setting up and maintaining or the license costs of one of the supported types are too high a custom implementation can be made based on the Blueriq API that reuses the Blueriq API and OData\OLingo implementation and translation modules. This means that the Blueriq libraries are used to translate the OData Http-requests to API-calls and predefined expression trees. The API calls and the translation of the expression trees to custom SQL queries needs to be implemented.

 

  • Benefits
    • Limited knowledge of OData is needed.
    • Not all OData functionality has to be reimplemented.
    • Custom implementation is closer to the default Blueriq implementation. This has the advantage that the impact of changes in the Persistence API is smaller.
  • Risks
    • No free choice of programming language.

 

 

Different database scheme

...

It may be desirable to store the data in another format than the default Aggregates with custom metadata fields. For example data should be stored as relational data instead of the current approach Aggregates. In this scenario a custom implementation may reuse of the Blueriq API and OData\OLingo implementation and translation modules. This means that the Blueriq libraries are used to translate the OData Http-requests to API-calls and predefined expression trees. The API calls have to be implemented, the expression trees have to be translated to custom SQL queries, and mapping to the custom scheme has to be created and maintained.

...

  • Benefits
    • Limited knowledge of OData is needed.

    • Not all OData functionality has to be reimplemented.

    • Custom implementation is closer to the default Blueriq implementation.

  • Risks
    • No free choice of programming language.
    • Flexibility loss due to that model changes that should be persistent lead to changes in the database as well

...