FHIR and openEHR: When to Use Which, and How They Coexist

HL7 FHIR was designed to exchange clinical data and openEHR to keep it for a lifetime. This article compares the two on the dimensions that affect architecture, shows the same blood pressure in each, and sets out a coexistence design for Azure with a tested mapping in Python and C# that reports what the FHIR resource could not carry.

Read more →

RAG over FHIR Data on AWS HealthLake and Azure Health Data Services: Retrieval That Respects the Record

A FHIR record is a graph of coded, dated, status-bearing resources, not a document corpus. This article sets out a retrieval design for generative AI over FHIR data: FHIR search for exact questions, similarity search for notes, pinned allergies and medication, a hard partition by patient, and citations on every statement. Tested on synthetic data and mapped to AWS HealthLake and the Azure Health Data Services FHIR service.

Read more →

Amazon S3 Vectors vs. OpenSearch Serverless vs. pgvector for RAG: Cost Floors, Query Bills and Tenant Isolation

All three AWS vector stores can now cost close to nothing at rest, but they bill and isolate tenants in very different ways. This comparison models Amazon S3 Vectors, OpenSearch Serverless (classic and next generation) and Aurora PostgreSQL with pgvector across three workload shapes, checks the S3 Vectors model against the worked examples on the AWS pricing page, and shows where the tenant boundary belongs in each.

Read more →

Declarative Stream Processing: EventBridge Pipes vs. Custom Lambda Glue

EventBridge Pipes is usually sold as cheaper and lighter on concurrency than a Lambda stream consumer. Checked against the AWS documentation, both claims mostly disappear once the consumer filters on its event source mapping. This article compares the two for a DynamoDB Streams to EventBridge integration, with tested code, a reproducible cost model and a decision framework.

Read more →