Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
ŞUNLARA UYGULANIR:
Azure Data Factory
Azure Synapse Analytics
İpucu
Microsoft Fabric'daki
Bu öğreticide, Azure Data Factory işlem hattı oluşturmak için Azure portalını kullanacaksınız. Bu işlem hattı, bir Spark etkinliğini ve talep üzerine bir Azure HDInsight bağlı hizmetini kullanarak verileri dönüştürür.
Bu öğreticide aşağıdaki adımları gerçekleştireceksiniz:
- Veri fabrikası oluşturma.
- Spark etkinliği kullanan bir işlem hattı oluşturun.
- İşlem hattını çalıştırmayı tetikleyin.
- İşlem hattı çalışmasını izleyin.
Azure aboneliğiniz yoksa başlamadan önce free hesabı oluşturun.
Önkoşullar
Not
Azure ile etkileşime geçmek için Azure Az PowerShell modülünü kullanmanızı öneririz. Başlamak için bkz. Azure PowerShell yükleme. Az PowerShell modülüne nasıl geçiş yapılacağını öğrenmek için bkz. AzureRM'den Az Azure PowerShell dağıtma.
- Azure depolama hesabı. Bir Python betiği ve bir giriş dosyası oluşturur ve bunları Azure Depolama'a yüklersiniz. Spark programının çıktısı bu depolama hesabında depolanır. İsteğe bağlı Spark kümesi, birincil depolama alanıyla aynı depolama hesabını kullanır.
Not
HdInsight standart katmanda yalnızca genel amaçlı depolama hesaplarını destekler. Hesabın premium veya yalnızca blob depolama hesabı olmadığından emin olun.
- Azure PowerShell. Azure PowerShell yükleme ve yapılandırma başlığındaki yönergeleri izleyin.
Python betiğini Blob depolama hesabınıza yükleme
aşağıdaki içeriğe sahip WordCount_Spark.py adlı bir Python dosyası oluşturun:
import sys from operator import add from pyspark.sql import SparkSession def main(): spark = SparkSession\ .builder\ .appName("PythonWordCount")\ .getOrCreate() lines = spark.read.text("wasbs://adftutorial@<storageaccountname>.blob.core.windows.net/spark/inputfiles/minecraftstory.txt").rdd.map(lambda r: r[0]) counts = lines.flatMap(lambda x: x.split(' ')) \ .map(lambda x: (x, 1)) \ .reduceByKey(add) counts.saveAsTextFile("wasbs://adftutorial@<storageaccountname>.blob.core.windows.net/spark/outputfiles/wordcount") spark.stop() if __name__ == "__main__": main()<storageAccountName> değerini Azure depolama hesabınızın adıyla değiştirin. Ardından dosyayı kaydedin.
Azure Blob depolama alanında adftutorial adlı bir kapsayıcı mevcut değilse oluşturun.
Spark adlı bir klasör oluşturun.
Spark klasörünün altında script adlı bir alt klasör oluşturun.
WordCount_Spark.py dosyasını script alt klasörüne yükleyin.
Girdi dosyasını yükleme
- Bazı metinlerle minecraftstory.txt adlı bir dosya oluşturun. Spark programı bu metindeki sözcükleri sayar.
- Spark klasörünün altında inputfiles adlı bir alt klasör oluşturun.
- minecraftstory.txt dosyasını inputfiles alt klasörüne yükleyin.
Veri fabrikası oluşturma
Quickstart: Azure portalını kullanarak veri fabrikası oluşturma makalesindeki adımları izleyerek, eğer çalışabileceğiniz bir veri fabrikanız yoksa, bir veri fabrikası oluşturun.
Bağlı hizmetler oluşturma
Bu bölümde iki bağlı hizmet oluşturacaksınız:
- Azure depolama hesabını veri fabrikasına bağlamak için kullanılan bir Azure Depolama bağlı hizmetidir. Bu depolama alanı, isteğe bağlı HDInsight kümesi tarafından kullanılır. Ayrıca, çalıştırılacak Spark betiğini içerir.
- İstek üzerine HDInsight bağlantılı hizmet. Azure Data Factory otomatik olarak bir HDInsight kümesi oluşturur ve Spark programını çalıştırır. Daha sonra, küme önceden yapılandırılmış bir süre boyunca boşta kaldığında HDInsight kümesini siler.
Azure Depolama bağlı hizmet oluşturma
Giriş sayfasında, sol paneldeki Yönet sekmesine geçin.
Pencerenin alt kısmındaki Bağlantılar’ı ve sonra + Yeni’yi seçin.
Yeni Bağlı Hizmet penceresinde Data Store>Azure Blob Depolama'ı seçin ve ardından Continue öğesini seçin.
Depolama hesabı adı için listeden ad seçip Kaydet öğesini seçin.
İsteğe bağlı bir HDInsight bağlı hizmeti oluşturma
Başka bir bağlı hizmet oluşturmak için + Yeni düğmesini tekrar seçin.
Yeni Bağlı Hizmet penceresinde Compute>Azure HDInsight'ı seçin ve ardından Continue öğesini seçin.
Yeni Bağlı Hizmet penceresinde aşağıdaki adımları tamamlayın:
a. AdınaAzureHDInsightLinkedService girin.
b. Tür içinİsteğe Bağlı HDInsight’ın seçili olduğunu onaylayın.
c. Azure Depolama Bağlı Hizmet için AzureBlobStorage1 öğesini seçin. Bu bağlı hizmeti daha önce oluşturmuştunuz. Farklı bir ad kullandıysanız, doğru adı burada belirtin.
d. Küme türü için spark’ı seçin.
e. Hizmet sorumlusu kimliği için, HDInsight kümesi oluşturma iznine sahip hizmet sorumlusunun kimliğini girin.
Bu hizmet sorumlusu, abonelikte ya da kümenin oluşturulduğu kaynak grubunda Katkıda Bulunan rolünün bir üyesi olmalıdır. Daha fazla bilgi için bkz. Microsoft Entra uygulaması ve hizmet sorumlusu oluşturma. Hizmet sorumlusu kimliği Uygulama Kimliği ile eşdeğerdir ve Hizmet sorumlusu anahtarı bir İstemci gizli dizisinin değerine eşdeğerdir.
f. Hizmet sorumlusu anahtarı için anahtarı girin.
g. Kaynak grubu için veri fabrikası oluştururken kullandığınız kaynak grubunun aynısını seçin. Spark kümesi bu kaynak grubunda oluşturulur.
h. İşletim sistemi türü seçeneğini genişletin.
i. Küme kullanıcısı adı için bir ad girin.
j. Kullanıcı için Küme parolası girin.
k. Bitir'i seçin.
Not
Azure HDInsight, desteklediği her Azure bölgede kullanabileceğiniz toplam çekirdek sayısını sınırlar. İsteğe bağlı HDInsight bağlı hizmeti için HDInsight kümesi, birincil depolama alanı olarak kullanılan aynı Azure Depolama konumda oluşturulur. Kümenin başarıyla oluşturulabilmesi için yeterince çekirdek kotanızın olduğundan emin olun. Daha fazla bilgi için bkz. HDInsight’ta Hadoop, Spark, Kafka ve daha fazlası ile küme ayarlama.
Bir işlem hattı oluştur
+ (artı) düğmesini seçin, ardından menüden İşlem Hattı'nı seçin.
Etkinlikler araç kutusunda HDInsight’ı genişletin. Etkinlikler araç kutusundan Spark etkinliğini işlem hattı tasarımcısının yüzeyine sürükleyin.
Alt kısımdaki Spark etkinlik penceresinin özellikler bölümünde aşağıdaki adımları tamamlayın:
a. HDI Kümesi sekmesine geçin.
b. Önceki yordamda oluşturduğunuz AzureHDInsightLinkedService hizmetini seçin.
Betik/Jar sekmesine geçin ve aşağıdaki adımları tamamlayın:
a. İş Bağlı Hizmeti için AzureBlobStorage1'i seçin.
b. Depolamaya Gözat’ı seçin.
c. adftutorial/spark/script klasörüne göz atın, WordCount_Spark.py dosyasını seçin ve Son’a tıklayın.
İşlem hattını doğrulamak için araç çubuğundaki Doğrula düğmesini seçin. Doğrulama penceresini kapatmak için >> (sağ ok) düğmesini seçin.
Tümünü Yayımla seçin. Data Factory kullanıcı arabirimi varlıkları (bağlı hizmetler ve işlem hattı) Azure Data Factory hizmetinde yayımlar.
İşlem hattını çalıştır
Araç çubuğunda Tetikleyici Ekle'yi ve ardından Şimdi Tetikle'yi seçin.
İşlem hattını izleme
Monitör sekmesine geçin. Bir işlem hattı çalıştırması gördüğünüzden emin olun. Spark kümesi oluşturma işlemi yaklaşık 20 dakika sürer.
Belirli aralıklarla Yenile’yi seçerek işlem hattı yürütme durumunu kontrol edin.
İşlem hattı çalıştırmasıyla ilişkili etkinlik çalıştırmalarını görmek için Eylemler sütunundaki Etkinlik Çalıştırmalarını Göster’i seçin.
Üst kısımdaki Tüm İşlem Hattı Çalıştırmaları bağlantısını seçerek işlem hattı çalıştırmaları görünümüne geri dönebilirsiniz.
Çıktıyı doğrulama
adftutorial kapsayıcısının spark/otuputfiles/wordcount klasöründe çıktı dosyasının oluşturulduğunu doğrulayın.
Dosya, girdi metin dosyasındaki her bir sözcüğü ve sözcüğün dosyada görünme sayısını içermelidir. Örneğin:
(u'This', 1)
(u'a', 1)
(u'is', 1)
(u'test', 1)
(u'file', 1)
İlgili içerik
Bu örnekteki işlem hattı, Spark etkinliğini ve isteğe bağlı bir HDInsight bağlı hizmetini kullanarak verileri dönüştürür. Şunları öğrendiniz:
- Veri fabrikası oluşturma.
- Spark etkinliği kullanan bir işlem hattı oluşturun.
- İşlem hattını çalıştırmayı tetikleyin.
- İşlem hattı çalışmasını izleyin.
Sanal ağdaki bir Azure HDInsight kümesinde Hive betiği çalıştırarak verileri dönüştürmeyi öğrenmek için sonraki öğreticiye geçin:
Tutorial: Azure Sanal Ağ içinde Hive kullanarak verileri dönüştürün.