Revolutionizing DHIS2 Integration: A Faster, More Efficient Approach with ADX and Django

This abstract has been accepted at the 2024 DHIS2 Annual Conference

click to view session
session link: Integration Lessons & Stories From The Field

Revolutionizing DHIS2 Integration: A Faster, More Efficient Approach with ADX and Django

In the pursuit of optimizing data exchange within the DHIS2 ecosystem, we present an advanced solution, the third iteration in our journey, designed to overcome the challenges encountered in our previous solutions. Developed as part of the openIMIS initiative, our latest DHIS2 solution leverages the power of ADX and Django, introducing a paradigm shift in data processing and aggregation. The initial DHIS2 integration using tracker, crafted by HISP India, faced significant performance issues (after tuning), with ETL taking upto two months on efficient servers. Recognizing the need for improvement, we ventured into our second solution for openIMIS implementation in Tanzania. While this proved faster, it operated as a standalone solution outside openIMIS, which was difficult to maintain. With our last solution, we address both speed and integration concerns, creating a robust and efficient system. Key Advantages of our DHIS2 Integration: 1. ADX Format for Data Exchange: Our solution adopts the ADX format, an efficient method for data exchange. This departure from standard payload significantly enhances data transfer speed, ensuring timely and reliable transmission between systems. 2. Django for Cube Creation and Data Definition: Unlike its predecessors, this solution utilizes Django, framework used by openIMIS, to create data cubes and define data values & Metadata. This shift empowers users to configure and manage crucial components at the Django level, providing flexibility and control. 3. Aggregating Dataset Values in Django: Aggregating dataset values within the Django framework, our solution alleviates the burden on the DHIS2, contributing to a considerable boost in performance. This not only accelerates data processing but also enhances overall system efficiency. 4. Reusable Configurations in Django: Defining all data elements and configurations within Django, users gain the advantage of reusability, eliminating the need for rewriting SQL queries, a common challenge faced in previous solutions, as configurations can be easily re-purposed when needed. 5. Django-ORM for Simplified Querying: The use of Django-ORM eliminates the necessity for complex SQL queries. Our solution automates data handling through Django ORM, simplifying the querying process and enhancing system maintainability. In summary, our DHIS2 integration not only resolves the speed issues of its predecessors but also introduces a new era of configurability, reusability, and simplicity. By embracing ADX and the capabilities of Django, we aim to contribute to the DHIS2 community’s pursuit of efficiency and innovation in health information systems.