AWS Glue etkileşimli oturumları mühendislerin etkileşimli bir not defterinde veri hazırlama ve analitik iş yükleri oluşturmasına, test etmesine ve çalıştırmasına olanak tanır. Etkileşimli oturumlar, yalıtılmış geliştirme ortamları sağlar, temel bilgi işlem kümesiyle ilgilenir ve boşta duran kaynakları durdurmak için yapılandırmaya izin verir.
Tutkal etkileşimli oturumları, önerilen varsayılan yapılandırmaları sağlar ve ayrıca kullanıcıların oturumu özelleştir ihtiyaçlarını karşılamak için. Örneğin, daha büyük bir veri kümesi üzerinde deney yapmak için daha fazla çalışan sağlayabilir veya uzun süreli iş yükleri için boşta kalma zaman aşımını ayarlayabilirsiniz. Bu seçenekleri iş yüküne göre değiştirebilme esnekliği ile seçeneklerin belirli sınırlar içinde değiştirilmesini sağlamanız ve bir kontrol mekanizması uygulamanız gerekebilir.
Bu yazıda, bir dağıtım sürecini sunuyoruz yeniden kullanılabilir çözüm AWS Glue etkileşimli oturum sınırlarını üç seçeneğe uygulamak için: bağlantı, çalışan sayısı ve maksimum boşta kalma süresi. İlk seçenek, örneğin etkileşimli bir oturumu yalnızca bir VPC içinde çalıştırılacak şekilde zorunlu kılarak, trafiğe özel inceleme ve kontroller uygulama ihtiyacını ele alır. Diğer ikisi, maliyetler ve kullanım üzerindeki sınırları zorlar. AWS Tutkal çalışan sayısına ve oturum başına boşta kalma süresine bir üst sınır uygulayarak kaynaklar. AWS Glue içindeki diğer mülkler veya hizmetler için çözümü daha da genişletebilirsiniz.
Çözüme genel bakış
Önerilen mimari, sunucusuz bileşenler üzerine kuruludur ve yeni bir AWS Glue etkileşimli oturumu oluşturulduğunda çalışır.
İş akışı adımları aşağıdaki gibidir:
- Bir veri mühendisi, aşağıdakiler aracılığıyla yeni bir AWS Glue etkileşimli oturumu oluşturur: AWS Yönetim Konsolu veya yerel olarak bir Jupyter not defterinde.
- Etkileşimli oturum, yeni bir etkinlik oluşturur. AWS CloudTrail için
CreateSession
oturum başlatılır başlatılmaz oturumu tanımlamak ve incelemek için ilgili tüm bilgileri içeren olay. - An Amazon EventBridge kuralı, CloudTrail olaylarını filtreler ve bir AWS Lambda denetleme işlevi
CreateSession
olay. - Lambda işlevi,
CreateSession
olayı ve tanımlanmış tüm sınır koşullarını kontrol eder. Şu anda, bu çözümle yapılandırılabilen sınırlar, maksimum çalışan sayısı, dakika cinsinden boşta kalma zaman aşımı ve zorunlu bağlantı ile dağıtım ile sınırlıdır. - Tanımlanan sınır koşullarından herhangi biri karşılanmazsa, örneğin sağlanan yapılandırmaya bağlı olarak oturum için çok fazla çalışan sağlanırsa, işlev etkileşimli oturumu hemen sonlandırır ve aracılığıyla bir e-posta gönderir. Amazon Basit Bildirim Servisi (Amazon SNS'si). Oturum henüz başlamadıysa işlev herhangi bir işlem yapmadan önce oturumun başlamasını bekler.
- Oturum durdurulduysa, bir SNS konusuna bir e-posta gönderilir. Etkileşimli oturum not defterinde, oturumun sonlandırılma nedeni hakkında herhangi bir bilgi bulunmamaktadır. Bu nedenle, veri mühendislerine SNS konusu aracılığıyla ek bağlam bilgileri sağlanır.
- İşlev başarısız olursa, oturumlar bir ölü mektup kuyruğu içeride Amazon Basit Kuyruk Hizmeti (Amazon SQS). Ayrıca kuyruk izlenir ve bir mesaj olması durumunda bir Amazon Bulut İzleme alarmı.
Aşağıdaki adımlar, çözümü nasıl oluşturacağınız ve dağıtacağınız konusunda size yol gösterir. Kod şu adreste mevcuttur: GitHub repo.
Önkoşullar
Bu izlenecek yol için aşağıdaki ön koşullara sahip olmalısınız:
Dağıtılan kaynaklara genel bakış
Gerekli tüm kaynaklar bir AWS CloudFormation altında bulunan dosya cfn/template.yaml
. Bu kaynakları devreye almak için, AWS Sunucusuz Uygulama Modeli (AWS SAM), tüm bağımlılıkları uygun bir şekilde oluşturmamızı ve paketlememizi sağlar ve ayrıca AWS CloudFormation adımlarını bizim için yönetir.
CloudFormation yığını aşağıdaki kaynakları dağıtır:
- Her ikisi de src/functions dizini altında tanımlanan, kitaplığıyla birlikte bir Lambda işlevi. Fonksiyon kontroldür. Oturumun tanımlanan sınırlar içinde başlatıldığını doğrulayacaktır.
- Bir EventBridge kuralı. Bu etkinlik CloudTrail'i dinler ve yeni bir etkileşimli oturum olması durumunda kontrol Lambda işlevini tetikler.
- Lambda işlevine eklenmiş bir SQS atılacak ileti kuyruğu (DLQ). Bu, bir Lambda işlevi arızasını tetikleyen olayların bir kaydını tutar.
- Lambda işlevi arızalarını ve DLQ'daki mesajları izleyen iki CloudWatch alarmı.
E-posta yoluyla bildirim etkinleştirilirse iki kaynak daha dağıtılır:
Ek olarak AWS CloudFormation, gerekli tüm AWS Kimlik ve Erişim Yönetimi (IAM) rolleri ve politikaları ve bir AWS Anahtar Yönetim Hizmeti (AWS KMS) anahtarı, değiştirilen verilerin şifrelenmesini sağlar.
Çözümü dağıtın
Kullanıcı yerel ortamının kurulumu da dahil olmak üzere dağıtım yaşam döngüsünü kolaylaştırmak için gerekli tüm adımları açıklayan bir Makefile sağlıyoruz. AWS kimlik bilgilerinizin yenilendiğinden ve hesabınıza erişebildiğinizden emin olun. Daha fazla bilgi için bkz. Yapılandırma ve kimlik bilgisi dosyası ayarları.
- Makefile'ı keşfedin ve değişkenlerin değerlerini değiştirerek Bölge ve yığın adını gerektiği gibi ayarlayın
AWS_REGION
veSTACK_NAME
. - set
KILL_SESSION = "True"
sınırların dışında bulunan etkileşimli oturumu hemen durdurmak istiyorsanız. İzin verilen değerler Doğru veya Yanlış'tır; varsayılan True'dur. - set
NOTIFICATION_EMAIL_ADDRESS = <your.email@provider.com>
içindeMakefile
Bir oturum sınırların dışında bulunduğunda bildirim almak istiyorsanız. - Kontrolleriniz için değerler belirleyin:
ENFORCE_VPC_CONNECTION
bir VPC içinde çalışmayan oturumları durdurmak için (doğru veya yanlış).MAX_WORKERS
bir oturum için maksimum çalışan sayısını ayarlamak için (sayısal).MAX_IDLE_TIMEOUT_MINUTES
oturumlar için maksimum boşta kalma süresini dakika cinsinden (sayısal) tanımlamak için.
- Tüm önkoşul kitaplıklarını kurun:
Bunlar, dizindeki bu deponun içinde yeni oluşturulmuş bir Python sanal ortamı altına kurulacaktır.
.venv
. - Yeni yığını dağıtın:
Bu komut aşağıdaki görevleri tamamlayacaktır:
- Ön koşulların karşılanıp karşılanmadığını kontrol edin.
- Yapmak
pytest unittest
Python dosyalarında. - CloudFormation şablonunu doğrulayın.
- Eserleri oluşturun (Lambda işlevi ve Lambda katmanları).
- Kaynakları AWS SAM aracılığıyla dağıtın.
Çözümü test edin
Bakın Jupyter için AWS Glue etkileşimli oturumlarıyla tanışın Etkileşimli bir oturum yürütme hakkında bilgi için. Gönderideki talimatları izlerseniz (bölüm İlk kod hücrenizi çalıştırın ve AWS Glue not defterinizi yazın), etkileşimli oturumun başlatılması aşağıdakine benzer bir hatayla başarısız olmalıdır.
Hücredeki kod örneği:
Alınan çıktı:
E-posta özelliğini etkinleştirdiyseniz, ayrıca bir e-posta bildirimi almanız gerekir.
AWS Glue konsolunda oturum kimliğinizin listelenmediğini de kontrol edebilirsiniz.
Temizlemek
Aşağıdaki komutu çalıştırarak dağıtılan kaynakları temizleyin:
Önerilen gönderiyi izleyerek dağıtılan kaynakların, Jupyter için AWS Glue etkileşimli oturumlarıyla tanışın, önceki komutla kaldırılmayacaktır.
Sınırlamalar
CloudTrail etkinlikleri için EventBridge'e teslimat garantisi en iyi çabadır. Bu, CloudTrail'in tüm etkinlikleri EventBridge'e teslim etmeye çalışacağı anlamına gelir, ancak bazı nadir durumlarda bir etkinlik teslim edilemeyebilir. Daha fazla bilgi için bkz. AWS hizmetlerinden gelen olaylar.
Sonuç
Bu gönderi, çalışan sayısı, boşta kalma zaman aşımları ve AWS Glue bağlantısı üzerindeki kısıtlamaları uygulamak için AWS Glue etkileşimli oturumlarında sınır koşullarının uygulanmasına yönelik bir çözümün nasıl oluşturulacağını, dağıtılacağını ve test edileceğini açıkladı.
Bu çözümü ihtiyaçlarınıza göre uyarlayabilir ve diğer seçenekler üzerinde kontrollere izin verecek şekilde genişletebilirsiniz.
AWS Glue etkileşimli oturumlarının nasıl kullanılacağı hakkında daha fazla bilgi edinmek için bkz. Jupyter için AWS Glue etkileşimli oturumlarıyla tanışın ve AWS Glue etkileşimli oturumlarını kullanarak AWS Glue işlerini PyCharm ile yazın.
Yazarlar Hakkında
Nicolas Jacob Baer İsviçre merkezli, veri mühendisliği ve makine öğrenimine güçlü bir şekilde odaklanan Kıdemli Bulut Uygulama Mimarıdır. Veri platformları tasarlamak ve gelişmiş analitik/ml kullanım senaryoları oluşturmak için kurumsal müşterilerle yakın bir şekilde çalışır.
Luca Mazzaferro Amazon Web Services'ta Kıdemli DevOps Mimarıdır. Otomatikleştirilmiş, tekrarlanabilir ve güvenli bir altyapıya sahip olmayı seviyor. Boş zamanlarında yemek yapmayı sever, özellikle pizza.
Kemeng Çang İsviçre merkezli, makine öğrenimi ve kullanıcı deneyimine güçlü bir şekilde odaklanan bir Bulut Uygulama Mimarıdır. Kullanıcı deneyimleri tasarlamak ve gelişmiş analitik/ml kullanım senaryoları oluşturmak için müşterilerle yakın işbirliği içinde çalışır.
Mark WalserAmazon Web Services Kıdemli Küresel Veri Mimarı, iş sorunlarını çözen ve AWS hizmetlerinin benimsenmesini hızlandıran yenilikçi Büyük Veri çözümleri geliştirmek için müşterilerle işbirliği yapıyor. İş dışında koşmaktan, yüzmekten ve teknoloji ile ilgili her şeyden zevk alıyor.
Gal Heyne AI/ML, veri mühendisliği ve iş zekasına güçlü bir şekilde odaklanan, Kaliforniya merkezli bir AWS Glue Ürün Yöneticisidir. Müşterinin iş gereksinimlerine ilişkin derin bir anlayış geliştirme ve kullanımı kolay veri ürünleri tasarlamak için mühendislerle işbirliği yapma konusunda tutkulu.
- SEO Destekli İçerik ve Halkla İlişkiler Dağıtımı. Bugün Gücünüzü Artırın.
- PlatoData.Network Dikey Üretken Yapay Zeka. Kendine güç ver. Buradan Erişin.
- PlatoAiStream. Web3 Zekası. Bilgi Genişletildi. Buradan Erişin.
- PlatoESG. Otomotiv / EV'ler, karbon, temiz teknoloji, Enerji, Çevre, Güneş, Atık Yönetimi. Buradan Erişin.
- Blok Ofsetleri. Çevre Dengeleme Sahipliğini Modernleştirme. Buradan Erişin.
- Kaynak: https://aws.amazon.com/blogs/big-data/enforce-boundaries-on-aws-glue-interactive-sessions/
- :vardır
- :dır-dir
- :olumsuzluk
- $UP
- 1
- 10
- 100
- 7
- a
- Hakkımızda
- erişim
- Hesap
- Action
- uyarlamak
- Ek
- adresleri
- Benimseme
- ileri
- AI / ML
- alarm
- Türkiye
- izin vermek
- izin
- veriyor
- Ayrıca
- Amazon
- Amazon Web Servisleri
- an
- analytics
- ve
- herhangi
- Uygulama
- Tamam
- Uygulanması
- mimari
- ARE
- argümanlar
- AS
- At
- yazar
- Otomatik
- mevcut
- AWS
- AWS CloudFormation
- AWS Tutkal
- merkezli
- BE
- olmuştur
- önce
- İYİ
- Büyük
- büyük Veri
- Blog
- her ikisi de
- sınırları
- inşa etmek
- yapılı
- iş
- fakat
- by
- Kaliforniya
- çağrı
- CAN
- hangi
- dava
- durumlarda
- hücre
- değişiklik
- değişmiş
- Kontrol
- Çekler
- yakından
- bulut
- Küme
- kod
- işbirliği
- tamamlamak
- bileşenler
- hesaplamak
- koşullar
- yapılandırma
- bağ
- konsolos
- kısıtlamaları
- bağlam
- kontrol
- kontroller
- maliyetler
- yaratmak
- çevrimiçi kurslar düzenliyorlar.
- oluşturur
- KİMLİK
- Tanıtım
- Şu anda
- görenek
- Müşteriler
- veri
- veri mühendisi
- Veri Hazırlama
- derin
- Varsayılan
- tanımlı
- teslim etmek
- teslim edilen
- teslim
- bağlı
- dağıtmak
- konuşlandırılmış
- dağıtma
- açılma
- dağıtır
- tarif edilen
- Dizayn
- geliştirmek
- gelişen
- gelişme
- DevOps
- kolay
- çaba
- ya
- E-posta
- etkin
- sağlar
- şifreli
- uçları
- uygulamak
- zorlama
- mühendis
- Mühendislik
- Mühendisler
- sağlamak
- kuruluş
- kurumsal müşteriler
- çevre
- ortamları
- hata
- özellikle
- Eter (ETH)
- Etkinlikler
- olaylar
- örnek
- istisna
- alışverişinde
- Deneyimler
- deneme
- uzatmak
- kolaylaştırmak
- FAIL
- başarısız
- Başarısızlık
- yanlış
- Özellikler(Hazırlık aşamasında)
- fileto
- dosyalar
- filtreler
- bulur
- Ad
- Esneklik
- odak
- takip et
- takip etme
- şu
- İçin
- bulundu
- Ücretsiz
- itibaren
- işlev
- daha fazla
- Ayrıca
- GAL
- almak
- Küresel
- garanti
- Var
- he
- onun
- Ne kadar
- Nasıl Yapılır
- HTML
- http
- HTTPS
- IAM
- ID
- belirlemek
- Kimlik
- boş
- if
- hemen
- ithalat
- in
- Dahil olmak üzere
- bilgi
- Altyapı
- başlatılan
- yenilikçi
- içeride
- talimatlar
- interaktif
- içine
- çağırır
- yalıtılmış
- IT
- ONUN
- İş
- Mesleki Öğretiler
- jpg
- Jupyter Not Defteri
- anahtar
- büyük
- katmanları
- ÖĞRENİN
- öğrenme
- kütüphaneler
- Kütüphane
- yaşam döngüsü
- seviyor
- Sınırlı
- sınırları
- Listelenmiş
- yerel
- lokal olarak
- bulunan
- giriş
- makine
- makine öğrenme
- yapmak
- yönetim
- müdür
- yönetir
- çok
- maksimum
- Mayıs..
- anlamına geliyor
- mekanizma
- Neden
- mesaj
- mesajları
- araya geldi
- olabilir
- dakika
- izlenen
- izleme
- Daha
- isim
- gerekli
- gerek
- gerekli
- ihtiyaçlar
- yeni
- yeni
- yok hayır
- defter
- tebliğ
- numara
- oluştu
- of
- on
- bir tek
- operasyon
- seçenek
- Opsiyonlar
- or
- sipariş
- Diğer
- dışarı
- çıktı
- dışında
- paket
- tutkulu
- başına
- Pizza
- Platformlar
- Platon
- Plato Veri Zekası
- PlatoVeri
- Zevk
- politikaları
- Çivi
- hazırlık
- önkoşullar
- mevcut
- önceki
- sorunlar
- süreç
- üretir
- PLATFORM
- ürün müdürü
- Ürünler
- özellikleri
- önerilen
- sağlamak
- sağlanan
- sağlar
- hüküm
- Python
- NADİR
- hazır
- neden
- Tavsiye edilen
- kayıt
- bölge
- ilgili
- uygun
- çıkarıldı
- yenilenmiş
- Depo
- Kaynaklar
- rolleri
- Kural
- koşmak
- koşu
- ishal
- Sam
- Bölüm
- Secured
- görmek
- gönderir
- kıdemli
- gönderdi
- Serverless
- Hizmetler
- Oturum
- oturumları
- set
- kurulum
- o
- meli
- benzer
- Basit
- çözüm
- Çözümler
- ÇÖZMEK
- biraz
- Yakında
- Kıvılcım
- özel
- hız
- yığın
- başlama
- başladı
- Açıklama
- Durum
- Basamaklar
- dur
- durdu
- güçlü
- elbette
- yüzme
- isviçre
- Bizi daha iyi tanımak için
- alma
- görevleri
- Teknoloji
- şablon
- test
- o
- The
- ve bazı Asya
- Orada.
- bu nedenle
- Bunlar
- işler
- Re-Tweet
- Bu
- üç
- İçinden
- zaman
- için
- çok
- konu
- trafik
- dönüşümler
- tetikleyebilir
- tetiklenir
- gerçek
- iki
- tip
- altında
- altında yatan
- anlayış
- us
- kullanım
- kullanım
- kullanımın söz
- kullanıcı
- kullanıcılar
- kullanma
- ux
- DOĞRULA
- Değerler
- üzerinden
- Sanal
- beklemek
- Bekleyen
- örneklerde
- istemek
- oldu
- we
- ağ
- web hizmetleri
- ne zaman
- her ne zaman
- hangi
- süre
- irade
- ile
- içinde
- İş
- işçi
- işçiler
- iş akışı
- çalışır
- henüz
- sen
- zefirnet