Build / API & backend
Go to overview

Ethernetics

Ethernetics was founded with a clear mission: to reduce energy consumption at Data Centers and Telecommunication Providers, addressing the source of energy usage right at the power plugs at the back of the servers. While AI is still in its early stages, it holds promising potential for impactful change. Why specifically these organizations? With the internet's continuous rapid growth, data centers and telecommunication providers have become huge players in carbon emissions. Ethernetics uses its AI-ready Smart Power Distribution Unit (PDU) to monitor and reduce energy usage at the rack level, promising a 5% decrease, leading to a decrease in energy consumption in magnitudes of a few percent up to over 10%. This is a huge improvement for sectors where electricity makes up 80% of the bills. Ethernetics’ ambitious goal and effective solution resulted in a nomination for 2024 Change Makers!

Tech
  • Angular
  • PHP
  • AWS

Challenge

Ethernetics needed a platform tailored for business-oriented users, providing them with a dashboard focused on relevant insights. Rather than detailed measurement graphs, the dashboard presents straightforward status updates and descriptions. Additionally, the platform demonstrates the effectiveness of their services, showing the impact compared to taking no action, making energy-saving efforts more transparent and cost-effective in the long run.

What we did

For this project, icapps worked on multiple features: a user-friendly web dashboard that communicates through a performant API layer that retrieves data from hardware devices and makes it available to the web app, a back-end layer, cloud setup, and, lastly, data management through Zabbix. Now, customers can utilize the different dashboards to plan actions and determine data-driven decisions.

A complex backend

The back-end layer organizes the data using TimescaleDB; a time series database optimized for data that changes over time, which was crucial in this project. This aggregated data is then sent to the front-end application. The backend is hosted on AWS and includes several components:

1. Zabbix, a powerful data monitoring platform, collects real-time data from the customer’s server racks. However, collecting this data was not simple. Due to the large amount of data pushed every few seconds, real-time processing and visualization proved to be a significant challenge. We overcame this by adding TimescaleDB to store the large amount of data that Zabbix collects.

2. In this project, the backend acts as the frontend, but what does that mean? In order to optimize the front-end, the back-end service is tailored to meet the requirements of the front-end application. The back-end layer is responsible for processing the large amount of data it receives from communicating with Zabbix into manageable chunks. This process of collecting and summarizing is data aggregation. This way, the front-end layer is able to filter the data and visualize it in different graphs. This layer also implements business logic, which decides whether users are prohibited from viewing data. This ensures that customers can view their data only, not those of others. Additionally, the implemented business logic allows the front-end layer to make calculations based on raw data communicated by Zabbix, such as energy consumption, power quality, KPI scores, etc.

3. The API layer is developed to facilitate communication between the Zabbix and business logic components to implement additional features on the platform. Additionally, our API ensures the frontend application receives optimized data for visualization and user-specific needs.

4. We implemented a multi-tenant setup to guarantee clear data separation, allowing multiple parties to share the same software while keeping their data separately. This is in combination with a central IdP system, which is responsible for user authentication and RBAC, ensuring that each member can only access their own relevant data. The addition of the multi-tenant setup provides a personalized user experience while maintaining a high level of security.

Front-end designed for a personalized user experience

The frontend consists of two main components: dashboards and visualizations.

1. Every customer has different, specific monitoring needs. Hence, the web application features customizable dashboards. This way, users are able to access different views based on their specific needs, and it allows them to structure and organize their data in a way that is meaningful and relevant to them. This enables users to make data-driven decisions rather than based on their intuition.

2. In order to ensure the presented data in the dashboards is easy to understand and comprehensible, visualizations are created. By using the Javascript Data-Driven Documents library (D3), the visualizations are created dynamically, meaning that the visualizations change in response to user interaction or changes in the data collected by Zabbix. However, the visualizations were also challenging due to the large amount of data. This required careful considerations with the end-user experience in mind to ensure the platform would be easy to comprehend and use.

Cloud infrastructure optimized for the security of large data

By leveraging AWS services, we ensured the resilience of our different infrastructure components, so the system would remain operational even when faced with disruptions. Cloud functions can dynamically scale up or down depending on the demand, enabling the system to handle large amounts of data and users to maintain an optimal performance. This data is then stored and processed within EU data centers to facilitate a high level of security and full compliance with privacy and data protection regulations. 

This complex system from back-end to cloud infrastructure is visualized in the image below. 



An efficient collaboration

We were very excited to work on this project together with Ethernetics. The true ecological importance of Ethernetics combined with its technical and innovative approach is truly unique!

We were happy to apply our knowledge to this complex problem. Due to the result-oriented nature of this collaboration, we were able to work hands-on transparently. Ethernetics and icapps will continue working together to add more features and data streams.

Let's create an app together

Contact