# Topics, Partitions, Offsets और Records — Apache Kafka: बुनियाद से Production तक Event Streaming

Source: https://www.geekswithgeeks.com/hi/kafka/kb-core-concepts

> समझें कि topic क्रमबद्ध partitions में कैसे बँटा है और offsets records को कैसे पहचानते हैं।

## Log की बनावट

**Record** (message) में वैकल्पिक **key**, एक **value**, **timestamp** और वैकल्पिक **headers** होते हैं। **Topic** **partitions** में बँटा है; हर partition records का **क्रमबद्ध, केवल-जोड़ने वाला क्रम** है, और हर record को अपने partition में क्रमिक संख्या मिलती है जिसे **offset** कहते हैं। **क्रम की गारंटी सिर्फ़ एक partition के भीतर है**, पूरे topic में नहीं। Partitions समानांतरता की इकाई हैं: ज़्यादा partitions का मतलब ज़्यादा consumers समानांतर पढ़ सकते हैं और डेटा brokers में फैलता है।

## Log का चित्र

हर partition अंत में बढ़ता है। Offsets कभी नहीं बदलते, और consumer याद रखता है कि वह अगला कौन-सा offset पढ़ेगा।

```text
topic "orders" (3 partitions)

partition 0:  [0][1][2][3][4]  -> next write goes to offset 5
partition 1:  [0][1][2]
partition 2:  [0][1][2][3]

consumer A reads partition 0 at offset 3; consumer B reads partition 1 at offset 1
Ordering is guaranteed inside each partition only.
```

## Offsets प्रति partition होते हैं

Partition 0 का offset 7 और partition 1 का offset 7 अलग records हैं। स्थिति को हमेशा जोड़ी (partition, offset) के रूप में सोचें।

**Quiz:** Record का क्रम कहाँ guaranteed है?

- [x] एक partition के भीतर
- [ ] Topic के सभी partitions में
- [ ] सभी topics में
- [ ] कहीं नहीं

*Answer:* एक partition के भीतर. Kafka प्रति partition क्रम रखता है; partitions के बीच क्रम guaranteed नहीं।
