Blog

blog-thumb
by Thomas Memenga on 20 Mar 2025

Evolving GraphQL Schemas in Spring Boot: Best Practices

GraphQL APIs are designed to evolve continuously without requiring explicit version increments. Unlike REST, where introducing breaking changes often means creating a new versioned endpoint, GraphQL encourages a single versionless API that grows over time. This is possible because clients only retrieve fields they ask for, so adding new capabilities doesn’t break existing queries. For example, you can introduce new fields or types in the schema and old clients won’t be affected since they won’t request those new fields. The goal is to avoid breaking changes whenever possible and use GraphQL’s built-in tools (like deprecation) to guide clients through changes. This agile, incremental approach to schema development is even highlighted in GraphQL best practices (Principle #5: “the schema should … evolve smoothly over time”).

blog-thumb
by Thomas Memenga on 12 Feb 2025

Securely Using Spring Boot Actuator

Spring Boot Actuator offers powerful insights into your application’s internals, enabling production-grade monitoring and management. However, if misconfigured, these same tools can expose sensitive information, leading to serious security breaches. A notable example of this occurred when researchers discovered an unprotected Spring Boot Actuator endpoint in a Volkswagen telematics service. A single open /actuator/heapdump endpoint granted access to a heap dump containing AWS credentials in plaintext. Those credentials led to the download of 9 terabytes of GPS data from hundreds of thousands of cars.

blog-thumb
by Thomas Memenga on 04 Nov 2024

Optimizing Azure Data Explorer for Large-Scale IoT Telemetry Data

Azure Data Explorer (ADX) is a fast, fully managed analytics database optimized for high-volume streaming data like IoT telemetry. In energy and smart city scenarios, ADX can ingest millions of sensor readings and provide sub-second analytical queries. This overview covers schema design best practices, performance tuning, delta (incremental) querying, cost considerations, and how ADX compares to other time-series solutions.

blog-thumb
by Thomas Memenga on 14 May 2024

Ursa's Lakehouse First Architecture

In the realm of data streaming platforms, StreamNative’s Ursa architecture represents a transformative shift, particularly with its “Lakehouse First” design. This blog post explores the technical underpinnings of this approach, its advantages, and the impact it has on data handling and processing.

blog-thumb
by Thomas Memenga on 30 Aug 2023

Beginner's Guide to Managing Partitions in Delta Lake Tables

Delta Lake simplifies data management in Apache Spark by providing robust, transactional data storage. Managing partitions effectively is crucial for optimizing data operations. This guide provides beginners with a clear understanding of how to add and remove partitions from a Delta Lake table.