Talend - Hadoop Dağıtılmış Dosya Sistemi

Bu bölümde Talend'in Hadoop dağıtılmış dosya sistemiyle nasıl çalıştığını detaylı olarak öğrenelim.

Ayarlar ve Ön Koşullar

HDFS ile Talend'e geçmeden önce, bu amaçla karşılanması gereken ayarlar ve ön koşullar hakkında bilgi edinmeliyiz.

Burada Cloudera hızlı başlangıç ​​5.10 VM'yi sanal kutu üzerinde çalıştırıyoruz. Bu VM'de bir Yalnızca Ana Bilgisayar Ağı kullanılmalıdır.

Yalnızca Ana Bilgisayar Ağ IP'si: 192.168.56.101

Ayrıca, cloudera yöneticisinde de çalışan aynı ana makineye sahip olmalısınız.

Şimdi Windows sisteminizde c: \ Windows \ System32 \ Drivers \ etc \ hosts konumuna gidin ve bu dosyayı aşağıda gösterildiği gibi Not Defteri'ni kullanarak düzenleyin.

Benzer şekilde, cloudera hızlı başlangıç ​​sanal makinenizde, / etc / hosts dosyanızı aşağıda gösterildiği gibi düzenleyin.

sudo gedit /etc/hosts

Hadoop Bağlantısını Ayarlama

Depo panelinde Meta Veriler'e gidin. Hadoop Kümesi'ne sağ tıklayın ve yeni bir küme oluşturun. Bu Hadoop küme bağlantısının adını, amacını ve açıklamasını verin.

Sonrakine tıkla.

Dağıtımı cloudera olarak seçin ve kullandığınız sürümü seçin. Yapılandırmayı geri getir seçeneğini seçin ve İleri'ye tıklayın.

Yönetici kimlik bilgilerini (bağlantı noktası, kullanıcı adı, şifre ile URI) aşağıda gösterildiği gibi girin ve Bağlan'a tıklayın. Ayrıntılar doğruysa, keşfedilen kümelerin altında Cloudera QuickStart'ı alacaksınız.

Getir'i tıklayın. Bu, HDFS, YARN, HBASE, HIVE için tüm bağlantıları ve yapılandırmaları getirecektir.

Tümünü seçin ve Bitir'e tıklayın.

Tüm bağlantı parametrelerinin otomatik olarak doldurulacağını unutmayın. Kullanıcı adında cloudera'yı belirtin ve Bitir'i tıklayın.

Bununla, bir Hadoop Kümesine başarıyla bağlandınız.

HDFS'ye bağlanma

Bu işte, HDFS'de bulunan tüm dizinleri ve dosyaları listeleyeceğiz.

Öncelikle bir job oluşturacağız ve sonra ona HDFS bileşenleri ekleyeceğiz. İş Tasarımına sağ tıklayın ve yeni bir iş oluşturun - hadoopjob.

Şimdi paletten 2 bileşen ekleyin - tHDFSConnection ve tHDFSList. THDFSConnection'a sağ tıklayın ve bu 2 bileşeni 'OnSubJobOk' tetikleyicisini kullanarak bağlayın.

Şimdi, talend hdfs bileşenlerinin ikisini de yapılandırın.

THDFSConnection'da, Özellik Türü olarak Depo öğesini seçin ve daha önce oluşturduğunuz Hadoop cloudera kümesini seçin. Bu bileşen için gerekli tüm gerekli ayrıntıları otomatik olarak dolduracaktır.

THDFSList'te, "Mevcut bir bağlantıyı kullan" ı seçin ve bileşen listesinde yapılandırdığınız tHDFSConnection öğesini seçin.

HDFS Dizininde HDFS'nin ana yolunu verin ve sağdaki gözat düğmesine tıklayın.

Yukarıda belirtilen konfigürasyonlarla bağlantıyı düzgün bir şekilde kurduysanız, aşağıda gösterildiği gibi bir pencere göreceksiniz. HDFS ana sayfasında bulunan tüm dizinleri ve dosyaları listeler.

Bunu ClDdera'da HDFS'nizi kontrol ederek doğrulayabilirsiniz.

HDFS'den dosya okunuyor

Bu bölümde, Talend'de HDFS'den bir dosyanın nasıl okunacağını anlayalım. Bu amaçla yeni bir iş oluşturabilirsiniz, ancak burada mevcut olanı kullanıyoruz.

Paletten tasarımcı penceresine tHDFSConnection, tHDFSInput ve tLogRow gibi 3 bileşeni Sürükle ve Bırak.

THDFSConnection'a sağ tıklayın ve 'OnSubJobOk' tetikleyicisini kullanarak tHDFSInput bileşenini bağlayın.

THDFSInput'a sağ tıklayın ve bir ana bağlantıyı tLogRow'a sürükleyin.

THDFSConnection'ın daha önce olduğu gibi benzer yapılandırmaya sahip olacağını unutmayın. THDFSInput'ta, "Mevcut bir bağlantıyı kullan" ı seçin ve bileşen listesinden tHDFSConnection öğesini seçin.

Dosya Adında, okumak istediğiniz dosyanın HDFS yolunu belirtin. Burada basit bir metin dosyası okuyoruz, bu nedenle Dosya Türünüz Metin Dosyasıdır. Benzer şekilde, girişinize bağlı olarak satır ayırıcı, alan ayırıcı ve başlık ayrıntılarını aşağıda belirtildiği gibi doldurun. Son olarak, Şemayı düzenle düğmesini tıklayın.

Dosyamız yalnızca düz metin içerdiğinden, String türünde yalnızca bir sütun ekliyoruz. Şimdi Tamam'ı tıklayın.

Note - Girişiniz farklı türlerde birden çok sütuna sahipse, burada buna göre şemadan bahsetmeniz gerekir.

TLogRow bileşeninde, düzenleme şemasında sütunları senkronize et'i tıklayın.

Çıktınızın yazdırılmasını istediğiniz modu seçin.

Son olarak, işi yürütmek için Çalıştır'ı tıklayın.

Bir HDFS dosyasını okumayı başardıktan sonra, aşağıdaki çıktıyı görebilirsiniz.

HDFS'ye Dosya Yazma

Talend'de HDFS'den nasıl dosya yazılacağını görelim. Paletten tasarımcı penceresine tHDFSConnection, tFileInputDelimited ve tHDFSOutput gibi 3 bileşeni Sürükle ve Bırak.

THDFSConnection'a sağ tıklayın ve 'OnSubJobOk' tetikleyicisini kullanarak tFileInputDelimited bileşenini bağlayın.

TFileInputDelimited'a sağ tıklayın ve bir ana bağlantıyı tHDFSOutput'a sürükleyin.

THDFSConnection'ın daha önce olduğu gibi benzer yapılandırmaya sahip olacağını unutmayın.

Şimdi, tFileInputDelimited içinde, Dosya adı / Akış seçeneğinde girdi dosyasının yolunu verin. Burada girdi olarak bir csv dosyası kullanıyoruz, dolayısıyla alan ayırıcı "," dir.

Giriş dosyanıza göre üstbilgi, altbilgi ve sınırı seçin. Burada başlığımızın 1 olduğuna dikkat edin çünkü 1 satır sütun adlarını içeriyor ve sınır 3'tür çünkü HDFS'ye sadece ilk 3 satırı yazıyoruz.

Şimdi, şemayı düzenle'yi tıklayın.

Şimdi, girdi dosyamıza göre şemayı tanımlayın. Girdi dosyamız aşağıda belirtildiği gibi 3 sütun içerir.

THDFSOutput bileşeninde, senkronizasyon sütunlarını tıklayın. Ardından, Varolan bir bağlantıyı kullan bölümünde tHDFS Bağlantısı'nı seçin. Ayrıca, Dosya adı alanında dosyanızı yazmak istediğiniz yere bir HDFS yolu verin.

Dosya türünün metin dosyası, Eylem "oluştur", Satır ayırıcı "\ n" ve alan ayırıcı ";"

Son olarak, işinizi yürütmek için Çalıştır'ı tıklayın. İş başarıyla yürütüldüğünde, dosyanızın HDFS'de bulunup bulunmadığını kontrol edin.

İşinizde bahsettiğiniz çıktı yolu ile aşağıdaki hdfs komutunu çalıştırın.

hdfs dfs -cat /input/talendwrite

HDFS üzerine yazmada başarılı olursanız aşağıdaki çıktıyı göreceksiniz.