• Buradasın

    Google Data Flow ve Streaming Teknolojileri Eğitim Videosu

    youtube.com/watch?v=HufEJsbi9xk

    Yapay zekadan makale özeti

    • Bu video, Duygu adlı bir eğitimcinin Google Data Flow ve streaming teknolojileri hakkında sunduğu kapsamlı bir eğitim içeriğidir.
    • Video, streaming ve beş arasındaki temel farkları açıklayarak başlıyor, ardından streaming uygulamalarında kullanılan teknolojiler (Spark Streaming, Flink, Samza, Kafka Stream) tanıtılıyor. Daha sonra Google Data Flow'un özellikleri, transform fonksiyonları (filtre, gruplama, toplama, birleştirme vb.), window türleri ve trigger türleri detaylı şekilde anlatılıyor. Son bölümde ise WhatsApp verileri üzerinden pratik bir uygulama yapılarak veri akışı oluşturma ve SuperSet görselleştirme aracının kullanımı gösteriliyor.
    • Eğitim içeriğinde ayrıca streaming uygulamalarının mimarisi, çalışma prensipleri ve veri akışı oluşturma süreci adım adım anlatılmaktadır. SuperSet görselleştirme aracının ücretsiz versiyonunun yeterli olduğu ve daha karmaşık görselleştirme ihtiyaçları için ücretli versiyonların (1000-5000 dolar) tercih edilebileceği de belirtilmektedir.
    00:20Streaming ve Batch İşlemlerinin Farkları
    • Batch işlem, yıllardır kullanılan klasik yöntemdir ve bir gün veya bir saat boyunca biriktirilen verilerin topluca işlenerek sonuçlarının bir yere yazılması ve kullanılması şeklinde çalışır.
    • Batch işlemin en büyük dezavantajı, verinin önce biriktirilip sonra işlenmesi ve zamanın üstünden geçmiş olmasıdır.
    • Streaming uygulamaları, veriyi anlık olarak işleyerek bugünü şimdi görebilmeyi sağlar ve anlık karar verebilmeyi mümkün kılar.
    01:21Streaming Uygulamalarının Amacı
    • Büyük sitelerde yüzlerce editör için karar verebilecekleri destek, kaynak ve bilgi sağlamak, streaming uygulamalarının amacıdır.
    • Kullanıcıların en çok ihtiyaç duyduğu metrikler, örneğin en çok hangi kategoride ürün alınıyor veya en çok okunan haber kategorileri gibi hayati bilgilerdir.
    • Streaming uygulamaları, sürekli olarak değişik bölümlerde ani spike yapabilen bölümlarda gelen datanın bir bir işlenerek topluca değil de bir bir işlenerek üzerinden birden fazla metrik üretilmesi şeklinde çalışır.
    03:05Streaming Uygulamalarının Teknik Yapısı
    • Streaming uygulamalarının sağlaması gereken şey, gelen veri miktarını biriktirmeden, geciktirmeden işleyebileceği bir altyapıdır.
    • Veri ilk store edip kaybetmeme kısmında, Kafka, Passa gibi mesaj güvenlikleri kullanılır.
    • Modern bir yazılımda, kullanıcının müdahalesine gerek kalmadan kendi kendine olabilen bir altyapı sunulması gerekir.
    04:32Popüler Streaming Teknolojileri
    • Apache Flink, Berlin Üniversitesi'nden başlamış ve şu anda Tata şirketinin öncülüğünde geliştirilmektedir.
    • Samza Link'in open source ettiği bir teknolojidir.
    • Kafka Stream, Kafka projesinin içinden başlamış olup, Java uygulamalarında ayrı olarak da kullanılabilir.
    06:10Streaming Teknolojileri Arasındaki Farklar
    • Spark Streaming, mikro batch ve batch işlem yapabilir, ancak Spark temelli olmasından dolayı mikro batch olması gerekiyor.
    • Bazı teknolojiler daha fazla servisle entegre olabilirken, bazıları daha az servisle entegre olabilir.
    • Çalıştırma ortamı olarak da farklılıklar olabilir.
    07:37Streaming Mimarisi
    • Basit bir processing uygulaması için, ön tarafında load balance ile arka tarafında bir motosikle grubun içinde çalışan uygulama bulunur.
    • Alınan veri, Passa, Amazon Kinesis veya Kafka gibi mesaj güvenlikleri kullanılarak biriktirilir.
    • Bu mimari, otomatik ölçeklenebilir şekilde ayarlanabilir ve metrikler görselleştirme araçları kullanılarak kullanıcıya gösterilebilir.
    10:13Google Data Flow Özellikleri
    • Google Data Flow, Avro, normal ha dosyaları, text dosyaları, Kafka, Amazon Kinesis, Google WhatsApp, Active ve CMS gibi kaynaklardan okuma yapabilir.
    • SQL database'leri, Google Big Query, BigTable Data Store, Google Span ve Cassandra gibi veritabanlarıyla çalışabilir.
    • Metrik ürettiği için, Open Trigger gibi hazır metrik araçları ile entegre edilebilir.
    12:34Data Flow Uygulaması ve Fonksiyonlar
    • Data flow uygulamasında yapılan değişikliklere fonksiyon denir ve bunlar transform olarak isimlendirilir.
    • Data flow cluster içinde veriler collectionlar içinde taşınır ve üzerinde işlem yapmak için fonksiyonlar kullanılır.
    • Filtre, gruplama, toplama, maksimum değer alma gibi işlemler için farklı fonksiyonlar kullanılır ve sonuçlar tek elemanlı bir collection olarak elde edilir.
    14:03Collection İşlemleri ve Performans
    • Collectionların parça sayısını değiştirmek paralelliği artırır ve işlemi hızlandırır.
    • Fayda yazma durumlarında, birden fazla küçük fayda yazmak yerine bir büyük fayda yazmak daha mantıklıdır.
    • Collectionlar bir kere oluşturulduktan sonra değiştirilemez çünkü klas üzerinde bölünüp parçalar halinde dağıtılır.
    16:01Window Türleri ve Triggerlar
    • Data flow'ta fix time, sliding time, session bazlı ve time window gibi farklı window türleri kullanılabilir.
    • Sliding time window, uygulama açık olduğu sürece başı ve sonu sürekli kayar ve trigger tanımlayarak belirli aralıklarla refresh yapılır.
    • Triggerlar time processing, time data ve kompozit triggerlar olmak üzere üç çeşittir ve hangi triggerın kullanılacağı duruma göre belirlenir.
    20:18Örnek Uygulama
    • Bir müşteri için yapılan uygulamada WhatsApp'tan gelen data okunarak bir koleksiyona çevrilir.
    • Gelen JSON verileri filtrelenir ve sadece gereken alanlar seçilir.
    • Window işlemi tanımlanarak veri küçültülür ve triggerlar ile belirli aralıklarla hesaplama yapılır.
    22:39Google Cloud Data Flow Kullanımı
    • Data Flow'da farklı kayıtlar için her seferinde baştan resetlemek veya toplayarak göndermek tercih edilebilir.
    • Satış kanalı bazında sipariş sayısı, ürün miktarı ve toplam sipariş miktarı hesaplanarak data flow yazdırılır.
    • Streaming özelliği sayesinde uygulama kapatılmadığı sürece sürekli çalışır ve Google Cloud Konsolda data flow grafiği görüntülenebilir.
    24:37Data Flow Performansı ve Görselleştirme
    • Data Flow'da her bir işlem için geçen süre (sp time) gösterilir ve performans sorunları için ipuçları sunulur.
    • Görselleştirme için Süperset tercih edilmiştir çünkü çeşitli grafik çeşitleri sunar ve Python ve R uygulaması olarak çalışır.
    • Süperset, eski veri formatlarını okuyabilir ve ClickHouse gibi farklı veri depolama sistemlerini de destekleyebilir.
    27:22Süperset Özellikleri ve Kullanım Alanları
    • Süperset'te dashboard oluşturulabilir ve filtreler tanımlanabilir, grafikler bu filtrelere göre otomatik olarak değişir.
    • Süperset ücretsiz bir open source araçtır, ancak ücretli versiyonları bin dolar ve üzeri fiyatlarla sunulmaktadır.
    • Gösterilen örnekte satış kanalı bazında sipariş sayısı ve toplam miktar, sistem bazında toplam satış sayısı gibi veriler gösterilmiştir.

    Yanıtı değerlendir

  • Yazeka sinir ağı makaleleri veya videoları özetliyor