Serverless Technologies ile Gerçek Zamanlı Veri İşleme Borularını Geliştirmek

Parla işlemeye güvenen örgütler genellikle kendilerini veri saatlerini veya hatta günlerini olayların gerçekleştiğinden uzaklaştırır. Buna karşılık, gerçek zamanlı veri işleme hatları derhal karar verme, anomali algılama ve kişiselleştirilmiş kullanıcı deneyimlerini oluşturabilir. Serverless teknolojiler operasyonel yönetim üst düzeylerini minimum altyapı yükü ile kurmak mümkün kılar.

Serverless Technologies Nedir?

Serverless hesaplama, bulut sağlayıcının dinamik olarak tahsis ve sunucu yönetiminin atama ve düzenlemesini dinamik olarak yönetebildiği bir bulut yürütme modelidir. Geliştiriciler, işlevleri veya konteynerler şeklinde kod yazmaktadır ve sağlayıcı ölçeklendirme, ya da kullanılabilirlik, taşıyıcılar (önetici) anlamına gelmez; çünkü sunucu yönetimi soyutlanır.0)AWS Lambda.

Hesap ötesinde, sunucusuz veri kesintisi, depolama, mesajlaşma ve analitik için yönetilen hizmetleri kapsar - tek bir sanal makineye göre bir boru hattına monte edilebilir olan tüm özellikler otomatik ölçeklendirme, ücret kullanımı fiyatlandırması ve gerçek zamanlı boru hatları inşa edildiğinde, bu özellikler geleneksel sunucu tabanlı mimarilere kıyasla daha düşük gecikmeli ve operasyonel karmaşıklığın tümüne dönüştürülür.

Gerçek Zamanlı Veri Borularının Anahtar Bileşenleri

Gerçek zamanlı bir veri hattı, verilerin tüketildiği, işlenmiş, depolandığı ve saniyeler veya milisans içinde hareket ettiği sürekli bir akıştır. temel bina blokları bulut platformları arasında tutarlı kalır:

  • [FONT=0]Data Ingestion[[[Dönetici:0)[[Döneticiler) - Üreticilerden gelen olayları yakalamak için giriş noktası (IoT sensörleri, mobil uygulamalar, web sunucusu logları, veritabanılar) Amazon Kinesis Data Streams, Azure Event Hubs ve Google Cloud Pub/Sub gibi yönetilen akış hizmetleri, yüksek kodlu, kalıcı olaylarını yakalamak için tasarlanmıştır.
  • [FONT:0]Data Processing [DÜDÜT:1] - dönüşüm, filtreleme, aggregasyon veya zenginleştirme, boru hattı aracılığıyla akışladıkları gibi olayların analiz edilmesi - AWS Lambda, Azure Functions, Google Cloud Functions - Azure Analytics, veya Google Cloud Functions - otomatik dönüşümler veya devletli işlemler için en hafif seçenektir (örneğin, pencereli aggregasyonlar), sağlayıcıları sunucusuz akış işleme motorları sunar.
  • [FONT=0]Data Storage [[Dönetici:0)[Dönetici, panolar veya uzun vadeli saklamalar için geçerli olan varış noktaları (Amazon DynamoDB, Azure Cosmos DB) sütuner veritabanına (Google BigQuery, Amazon Redchange Serverless) ve nesne mağazaları (Amazon S3, Azure Blob Storage) bağlıdır.
  • [FONT=0]Visualization and monitoring[Dönetici] – gerçek zamanlı panolar, uyarılar ve Amazon QuickSight, Microsoft Power BI (tabiberle bağlantılı veri setleri ile bağlantılı) ve Google Looker Studio, kanalını izlemek için kritik: Amazon CloudWatch, Azure Monitor ve Google Cloud Operations Suite gibi hizmetler, geri bildirim sistemleri, gecikme, hata oranları ve kod üzerinden.

Bu bileşenler mesajlaşma, güvenlik ve orkestrasyon ile birlikte kablolanmalıdır. Serverless teknolojiler her parçayı bağımsız olarak ölçeklenebilir hale getirir ve yapıştırıcı genellikle bulut platformunun etkinliği bütünleme katmanı tarafından sağlanır.

Serverless Real-Time Borular için Mimari Desenler

Bina blokları yaygındırken, seçtiğiniz mimarlık, verilerin doğasına ve gerekli garantilere bağlıdır. Üç desen hükmediyor:

Fan-Out with Mesaj Queues

Olaylar tek bir ingestion noktasına gelir (örneğin, soğuk depolama için bir kayıt yazın) ve sonra birden fazla sunucusuz işlev veya depolama lavabosu için hayran kalır. Bu model aynı çiğ olayı birden çok bağımsız eylemleri tetiklerken idealdir - örneğin, gerçek zamanlı bir panjur, soğuk depolama için bir kayıt yazın.

Step Functions ile zincirlenmiş İşleme

Bazı boru hatları, sunucusuz işlevlerin bir dizisini koordine etmek gerektirir. Bu, verilerin doğrulanması gereken, zenginleştirilmesi gereken ve ardından koleksiyoncu, AWS Step Functions, Azure Logic Apps veya Google Cloud Workflows, genel boru hattı mantığını basitleştirmek için kullanışlıdır.

Devletli Eşle Akış İşleme

Pencerelenmiş agregalar (örneğin, dakikada tıklamalar) veya karmaşık bir olay işleme (tablosuz işlemlerde eşleşen), durumsuz fonksiyonlar yetersizdir.Bu model, Apache Flink gibi platform otomatik işleme motorları gerçek zamanlı analiz için en güçlü, ancak devlet boyutunun ve kontrol noktalarının maliyetinden kaçınmak için dikkatli bir şekilde yönetilmesi gerekir.

Bir Boru Hattı: AWS Örnek

Kavramları zemine koymak için, beton bir senaryo düşünün: Web tıklama verilerini almak, bir dakika pencerede URL'ye sayfa görüşlerini saymak ve gerçek zamanlı bir paniğe sonuçları depolamak için sonuçları depolamak. tamamen sunucusuz AWS hizmetleri kullanarak:

  1. [FONT:0)Data Ingestion:[[Dönetici:[Dönetici:0)[[FONT=0)) A Kinesis Data Stream ile iki shards (ölen ihtiyaç olduğu gibi). Her bir shard 1 MB/s veya 1000 kayıt / yapımcı - bir web uygulaması veya BulutFront log gibi - JSON olayları yayına gönderebilir.
  2. [FONT:0)Data Processing: [Dönetici: [Dönetici] Bir Lambda işlevi, Kinesis akışı tarafından tetiklenir (olay olay kaynağı haritasına göre). işlev, JSON'u tekrar okur ve “url’yi kullanarak, Flink'i kullanarak bir SQL uygulaması ile kullanın.
  3. [FONT:0]Storage: [Dönetici: [Dönder: [Dönder: 0,0] [Dönetici: [Dönetici: 0,8|Dönetici: 0,5|Dönergeler, daha sonra analiz için Kinesis Firehose'yu kullanarak S3'e arşivlenebilir.
  4. [FONT:0]Visualization:[Dönetici:[Dönetici:[Dönetici:0) Amazon QuickSight, DynamoDB'ye Athena aracılığıyla bağlantı kurmak (her dakikayı yenilemek için gerçek zamanlı bir pannamoDB konektörünü kullanmak için DynamoDB'ye bağlantı kurmak için özel bir uygulama kullanın.

Bu bütün boru hattı, EC2 örneklerini, hiçbir manuel ölçeklendirmez ve yalnızca veri akışları olduğunda maliyetleriz. Lambda işlevleri, DynamoDB okuma / yazma kapasitesi ve Kinesis shard saatleri, ana maliyet sürücüleri tarafından ele alınır. İzleme BulutWatch panjurlar ve alarmlar akış yaşı (isBehindLatest) yavaşları tespit etmek için yapılır.

Gerçek Zamanlı Borular için Serverless kullanımı Faydaları

Meydanlar ve düşünceler

Serverless gerçek zamanlı boru hatları güçlüdür, ancak mimarların ele alması gereken özel zorluklar tanıtmaktadır:

Maliyet Optimizasyon Stratejileri

Serverless fiyatlandırma modelleri sürprizlerden kaçınmak için dikkatli bir tasarım gerektirir:

Güvenlik Önergeleri

Gerçek zamanlı boru hatları genellikle hassas verilerle çalışır. Serverless güvenlik en iyi uygulamalar şunları içerir:

Gerçek Dünya Vakaları Kullanıyor

Serverless gerçek zamanlı boru hatları endüstriler boyunca dağıtılır:

Dış Kaynaklar

Daha derin dalışlar için, bu resmi belge ve rehberlere bakınız:

Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç

Serverless teknolojiler gerçek zamanlı veri işleme hatları için destek vermek için olgunlaşmıştır. Basit dönüşümler için devletli pencereli analitikler ve orkestralar çok yönlü akışlar için daha iyi hale getirmeye devam ederken, eyalet yönetimi ve maliyet izleme, sunucusuz gerçek zamanlı boru hatları - basit dönüşümler için devletsiz fonksiyonlar, devlet destekli çalışma akışları için yönetilen akış işleme işlemleri, ve orkestralar bu çok yönlü akışlara yatırım yapmaya devam edebilir.