Bosh sahifa Wiki Event time

Event time

Event time — hodisaning qayta ishlash tizimiga qachon yetib kelganini emas, manbada qachon sodir bo‘lganini bildiruvchi vaqt. Stream processingda u tarmoq kechikishi, buffer, offline qurilma va retry sabab tartibsiz kelgan eventlarni haqiqiy vaqt oynasiga joylashtirish uchun ishlatiladi. Event time to‘g‘ri natija beradi, lekin manba soati va kechikkan data siyosatini boshqarishni talab qiladi.

Boshqa vaqtlar

Processing time operator eventni qayta ishlagan lokal soatdir. U sodda va past kechikishli, ammo klaster yukiga qarab ayni input turli windowga tushishi mumkin. Ingestion time event broker yoki enginega kirgan vaqt bo‘lib, manba va processing time orasidagi murosadir.

Masalan, telefon 10:02 da hodisa yaratib, internet yo‘qligi sabab 10:15 da yuborsa, event time 10:02, ingestion 10:15 bo‘ladi. “10:00–10:05 dagi hodisalar” hisobotida event time ishlatilsa u avvalgi oynaga qo‘shiladi; processing time esa keyingi oynaga noto‘g‘ri joylaydi.

Timestamp manbasi

Timestamp hodisa sodir bo‘lgan joyga imkon qadar yaqin yaratiladi. Server qabul vaqti client event time o‘rnini bosa olmaydi. Mobil va IoT qurilma soati noto‘g‘ri, qo‘lda o‘zgartirilgan yoki timezone siz bo‘lishi mumkin. UTC instant bilan birga original offset, device ID va clock quality metadata si saqlanishi foydali.

Bir eventda biznes vaqti, yaratilish, yuborilish va database commit vaqti bo‘lishi mumkin. Schema har birining semantikasini nomda aniq ko‘rsatadi. Faqat timestamp ustuni pipeline bosqichlarida qayta yozilib, tarixni yo‘qotishi mumkin.

Watermark va kechikish

Engine barcha event kelganini bilolmaydi. Watermark “bundan oldingi eventlarning ko‘pi kelib bo‘ldi” degan progress signalidir. U event-time window qachon hisoblanishi va state qachon tozalanishini belgilaydi. Watermark juda tez yurtsa kech eventlar yo‘qoladi, juda sust bo‘lsa natija va state cleanup kechikadi.

Allowed lateness window yopilgandan keyin ma’lum muddat updatega ruxsat beradi. Late event oldingi natijani retract va qayta chiqarishi yoki side outputga tushishi mumkin. Sink upsert va versionni qo‘llamasa, yangilangan agregat dublikat sifatida ko‘rinadi.

Tartib va takror

Event time bir xil bo‘lgan hodisalarning qat’iy tartibini bermaydi. Source sequence, partition offset yoki biznes version tie-breaker bo‘lishi mumkin. Retry ayni eventni takror yuborsa, event ID deduplikatsiya uchun kerak. Deduplikatsiya state retentioni eng kech takror kelish muddatini qamrab oladi.

Out-of-order ko‘rsatkichi event time va arrival time farqi taqsimoti bilan o‘lchanadi. p99 kechikish watermark siyosatini asoslashga yordam beradi. Kelajak sanasi yoki juda eski event quarantine qilinadi; bunday qiymat watermarkni to‘xtatib yoki noto‘g‘ri oynani ifloslantirishi mumkin.

Bitemporal holat

Ba’zi tizim eventning biznesda amal qilgan vaqtini va database bu faktni qachon bilganini alohida saqlaydi. Kech tuzatish tarixiy event timega tegishli bo‘lsa ham system time bo‘yicha bugun kiritiladi. Bitemporal query “o‘sha paytda aslida nima bo‘lgan” va “o‘sha kuni biz nimani bilgan edik” savollarini farqlaydi. Audit, moliyaviy tuzatish va qayta hisoblashda bu ajratish muhim.

Clock tuzatish

Qurilma soati keskin sakrasa, server ishonch darajasi yoki known offset bilan timestampni tuzatishi mumkin. Asl qiymat yo‘qotilmaydi; corrected time va usul metadata sifatida saqlanadi. Tizim tuzatishni jim o‘zgartirsa, keyingi forensic tahlil qiyinlashadi.

Bog‘liq tushunchalar

Processing time, Ingestion time, Watermark, Window, Late data, Stream processing, Clock skew