Apache Kafka is a distributed streaming platform that can be used to build real-time data pipelines. It publishes and subscribes to streams of records in a fault-tolerant and durable way, and helps process streams of records as they occur. Key characteristics of Kafka include high throughput ingestion, fault-tolerant storage, high availability, scalability, and support for concurrent processing and ordering guarantees. It provides functionality similar to a messaging system but with a unique design as a distributed, partitioned, replicated commit log service.