Canonical Hotel Entity Model

Birden fazla supplier'dan gelen property kayıtlarını tek canonical hotel entity altında birleştiren identity, alias, lineage ve merge modelini tasarlayın.

Editoryal bilgi
Advertisement

Canonical hotel entity, supplier-specific property kayıtlarını tek bir “doğru hotel” kaydı altında birleştiren core identity katmanıdır. Amaç source kayıtlarını silmek değil, source identity ile canonical identity arasındaki ilişkiyi izlenebilir hale getirmektir.

Production senaryosu

Aynı tesis Expedia'da bir ID, Booking bağlantısında başka ID, direct channel'da üçüncü ID ile gelir. İsim, adres, koordinat ve brand bilgileri küçük farklar içerebilir.

Mimari akış

text
Supplier Property
 -> Candidate Generation
 -> Match Features
 -> Match Decision
 -> Canonical Hotel
 -> Source Mapping
 -> Attribute Provenance
 -> Merge / Split / Reconciliation

Temel entity'ler

  • CanonicalHotel
  • SupplierProperty
  • PropertyMapping
  • PropertyAlias
  • AttributeObservation
  • MergeDecision
  • SourceConfidence

Canonical model

Canonical hotel kaydında stable internal ID bulunmalı. Name, address, geo, brand, stars, phone gibi attribute'ların her biri için source ve observedAt saklanması faydalıdır.

Tek “name” alanının source bilgisini kaybetmesi ileride reconciliation'ı zorlaştırır.

Match features

  • normalized name,
  • address components,
  • latitude/longitude distance,
  • phone,
  • brand/chain,
  • postal code,
  • official website,
  • known provider cross-reference.

Hiçbir feature tek başına mutlak doğruluk sağlamaz.

Merge ve split kararları

False merge, false split'ten çoğu zaman daha zararlıdır çünkü yanlış offer'lar aynı hotel altında gösterilebilir.

Confidence düşükse auto-merge yerine review queue veya “unresolved” state tercih edilebilir.

Attribute provenance

Canonical field winner belirlerken “son gelen kazanır” yaklaşımı risklidir. Source priority, confidence, freshness ve field-specific rule kullanılmalıdır.

Örneğin koordinat için official source daha güçlü olabilirken amenity için birden fazla source union edilebilir.

Failure modes

  • aynı isimli farklı hotel merge,
  • rebrand sonrası duplicate,
  • address normalization hatası,
  • moved property,
  • supplier stale record,
  • chain hotel name collision.

Cache ve consistency

Mapping değişikliği yalnız catalog'u değil cached search result, offer index ve analytics dimension'larını etkileyebilir. Merge/split işlemi event üreterek downstream consumer'lara bildirilmelidir.

Observability

  • auto-match rate,
  • manual-review rate,
  • merge reversal,
  • duplicate-property rate,
  • unresolved rate,
  • high-distance match count,
  • stale source mapping.

Alternatifler

Küçük tek-provider sistemde canonical layer gereksiz olabilir. İki veya daha fazla supplier geldiğinde cross-provider comparison için neredeyse zorunlu hale gelir.

Production checklist

  • stable canonical ID
  • source mapping table
  • provenance per attribute
  • confidence score
  • merge/split audit trail
  • rebrand workflow
  • downstream invalidation event
  • manual review path
Teknik danışmanlık

Benzer bir entegrasyon mu planlıyorsunuz?

Gereksinim, feed/API tasarımı ve production yaklaşımını birlikte değerlendirebiliriz.

Projenizi konuşalım →

İlgili içerikler