Mimari (IT)Sistem Mühendisi

Otonom araç filosu koordinasyonu için gezegen ölçeğinde, gerçek zamanlı coğrafi indeksleme ve yönlendirme altyapısı kurmak; çarpışma önleme hesaplamaları için dinamik hareket eden milyonlarca varlık arasında 50 ms altı sorgu gecikmesi sağlamak, bölgesel araç hareketlerinde trafik kontrol parçalarının geçişi sırasında katı tutarlılığı sağlamak ve merkezi gönderim darboğazları olmadan trafik desen tahminlerine dayanarak öngörüsel yük dengelemesi uygulamak?

Hintsage yapay zeka asistanı ile mülakatları geçin

Soruya cevap

Mimari, coğrafi mikro bölgeleri haritalayan dinamik parçaları oluşturmak için S2 Geometry hücrelerini kullanan hiyerarşik mekansal parçalama kullanır. Her hücre, Dragonfly bellek içi depolarında yerel araç durumunu yöneten bağımsız bir Raft konsensüs grubu olarak çalışır ve çarpışma vektörleri için lineer okuyucular sağlar. Hücreler arası iletişim, yerellik bilincine sahip yönlendirme ile Envoy proxy'leri üzerinden gRPC akışlarını kullanır; Apache Kafka, pozisyon telemetrisini Apache Flink'e trafik desen tahmini için iletir. Öngörücü motor, tıkanıklık oluşmadan önce proaktif parçalama bölünmeleri veya göçleri tetikleyen yeniden dengeleme ipuçları oluşturur ve merkezi bir koordinator ihtiyacını ortadan kaldırır.

Gerçek hayattan bir durum

Küresel bir otonom paylaşım platformu, on milyon aracın aynı anda pozisyon güncellemeleri yaptığı Yeni Yıl gecesi yoğunluğu sırasında felakete yol açan gecikme artışları yaşadı. Mevcut PostgreSQL PostGIS kümesi, okuma kopyalarıyla 400 ms replikasyon gecikmesi gösterdi ve bu da çarpışma önleme sistemlerinin eski koordinatlara dayalı yollar hesaplamasına neden oldu ve San Francisco'nun merkezinde acil frenleme zincirlerine zorladı.

Mühendislik ekibi, tutarlılık ile gecikme çatışmasını çözmek için üç ayrı mimari yaklaşımı değerlendirdi. İlk çözüm, güçlü tutarlı yazma üzerinden önbellekleme ile basitlik sunan merkezi bir Redis Sentinel dağıtımını önerdi, ancak bu, bir arıza noktası ve birincil veri merkezinden uzak araçlar için 80 ms'yi aşan bölgesel gecikme cezası getirdi. İkinci çözüm, mükemmel yazma verimliliği ve bölünme toleransı sunan ancak uzlaşma pencerelerinde fiziksel çarpışmalara izin verebilecek kritik güvenlik hesaplamalarında geçici ayrılmayı riske atan nihayetinde tutarlı bir Cassandra halkası önerdi.

Üçüncü çözüm, bağımsız konsensüs alanları olarak Raft liderlerinin hücre merkezlerinde yer alacağı hiyerarşik hücresel parçaları tasarladı. Bu yaklaşım, Dragonfly sıcak depolama ile alt milisaniyelik mekansal sorguların yapılandırılmasını, küresel uzlaşma gerektirmeden transfer anlaşmazlıklarını tahkim etmek için hücre sınırlarında Byzantine Fault Tolerant şahit düğümleri ile birleştirir. Ekip, bu çözümü, trafik kontrolü kararlarının kenar düğümlerine yerelleştirilirken lider bağlılığı ile güvenlik kritik operasyonlar için katı seri hale getirme sağlaması nedeniyle seçti.

Uygulamadan sonra platform, bölgesel transferler sırasında çarpışma sorguları için 12 ms p99 gecikmesine ulaştı ve sonraki yoğunluk etkinlikleri boyunca sıfır güvenlik olayı ve öngörücü Flink modelleri ile parça göçü yükünü% 73 oranında azaltarak öngörücü yeniden dengeleme sağladı.

Adayların sıklıkla gözden kaçırdığı noktalar


Ağ bölünmesi sırasında bir aracın tam olarak iki mekansal parça arasındaki sınırda fiziksel olarak konumlandığında split-brain senaryolarını nasıl önlersiniz?

Adaylar genellikle basit GPS koordinat yuvarlama veya zaman damgasına dayalı en son yazma kazananı önerir; bu, güvenlik kritik sistemler için başarısızdır. Doğru yaklaşım, araç durumu vektörleri için vector clock versiyonlamasını uygular, farklı yolları birleştirebilen CRDT tabanlı pozisyon geçmişlerini sürdürür ve tam uzlaşma gerektirmeden sahiplik anlaşmazlıklarını gözlemleyip tahkim etmek için hücre sınırlarında Byzantine Fault Tolerant şahit düğümleri dağıtır. Bu, bölünmeler sırasında bile, araçların yargı yetkisi üzerine kriptografik kanıt temelinde tam yetkili yönlendirme almasını sağlar.


Naif geohash-temelli parçalama, ekvator yakınlarındaki yüksek hızdaki varlıklar için neden felaketle sonuçlanır ve kutup bölgelerine kıyasla?

Birçok aday, geohash algoritmalarının içsel uzaysal distorsiyonunu gözden kaçırır; bu, küreyi, enlem durumuna bağlı olarak farklı fiziksel boyutlara sahip dikdörtgen hücrelere böler. Ekvator yakınında, bir geohash hücresi 5 km² kaplayabilirken Oslo'da 0.5 km²'yi kapsayabilir; bu, tropik mega şehirlerde sıcak parçalar ve Nordic bölgelerinde kullanılmayan parçalar oluşturur. Çözüm, coğrafi konuma bakılmaksızın eşit alan hücrelerine yaklaşık bölümler oluşturan S2 Geometry veya H3 indeksleme sistemleri gerektirir ve hacim dağılımını eşit bir şekilde sağlamak için küresel uzay geometrisi kullanır.


Bir öngörüsel yük dengeleme modeli, binlerce aracı beklenen bir tıkanıklık bölgesinden aynı alternatif parçaya yönlendirirken kalabalık saldırıları nasıl önlersiniz?

Bu davranış fenomeni, "kendini değiştiren kehanet" olarak bilinir ve öngörücü modeller eski tıkanıklık çözerken yeni tıkanıklık yaratır. Çözüm, ani çarpışma tehditleri için rota hesaplamalarının geçici eski verileri tolere etmesine olanak tanıyan aşamalı tutarlılık seviyelerinin uygulanmasını gerektirirken, ayrıca araç güncellemelerini eşzamanlı hale getirmek için Gossip protokolü yayılımında jitter mekanizmalarının kullanılmasını gerektirir. Ayrıca, her parçaya göre Token Bucket hız sınırlaması ile, kaynak hücrelerin aşırı yüklenmesini önlemek için proaktif geri basınç işaretleri ile HTTP/2 akış kontrolü sağlanır ve sistemin mis hesaplama sırasında çökmeden zarif bir şekilde azalmasını sağlar.