Azure Data Factory'de Azure Fonksiyon Etkinliği

ŞUNLARA UYGULANIR: Azure Data Factory Azure Synapse Analytics

İpucu

Microsoft Fabric'daki Data Factory, daha basit bir mimariye, yerleşik yapay zekaya ve yeni özelliklere sahip yeni nesil Azure Data Factory. Veri tümleştirmeyi yeni kullanmaya başladıysanız Fabric Data Factory ile başlayın. Mevcut ADF iş yükleri veri bilimi, gerçek zamanlı analiz ve raporlama genelinde yeni özelliklere erişmek için Fabric yükseltebilir.

Azure İşlevi etkinliği, Azure Data Factory veya Synapse işlem hattında Azure İşlevleri çalıştırmanızı sağlar. bir Azure İşlevi çalıştırmak için bağlı bir hizmet bağlantısı oluşturmanız gerekir. Ardından bağlı hizmeti, yürütmeyi planladığınız Azure İşlevini belirten bir etkinlikle kullanabilirsiniz.

Kullanıcı arabirimiyle Azure İşlev etkinliği oluşturma

İşlem hattında Azure İşlevi etkinliğini kullanmak için aşağıdaki adımları tamamlayın:

  1. İşlem hattı Etkinlikleri bölmesinin Azure İşlev bölümünü genişletin ve Azure İşlev etkinliğini işlem hattı tuvaline sürükleyin.

  2. Tuvalde henüz seçili değilse yeni Azure İşlev etkinliğini ve ayrıntılarını düzenlemek için Settings sekmesini seçin.

    Azure İşlevi etkinliği için kullanıcı arabiriminin ekran görüntüsü.

  3. Tanımlanmış bir Azure İşlevi bağlı hizmetiniz yoksa yeni bir hizmet oluşturmak için Yeni'yi seçin. yeni Azure İşlev bağlı hizmet bölmesinde, mevcut Azure İşlev Uygulaması URL'nizi seçin ve bir İşlev Anahtarı sağlayın.

    Yeni Azure İşlevi bağlı hizmet oluşturma bölmesinin ekran görüntüsü.

  4. Azure İşlev bağlı hizmetini seçtikten sonra yapılandırmayı tamamlamak için işlev adını ve diğer ayrıntıları sağlayın.

Azure Fonksiyon bağlantılı hizmet

Azure işlevinin dönüş türü geçerli bir JObject olmalıdır. (JArrayolmadığını unutmayın.) JObject herhangi bir dönüş türü başarısız olur ve JObject kullanıcı hatasını oluşturur.

İşlev Anahtarı, her birinin bir işlev uygulamasında ayrı benzersiz anahtarlara veya ana anahtara sahip olduğu işlev adına güvenli erişim sağlar. Yönetilen kimlik, işlev uygulamasının tamamına güvenli erişim sağlar. Kullanıcının işlev adına erişmek için anahtar sağlaması gerekir. Daha fazla bilgi için İşlev erişim anahtarı hakkında daha fazla bilgi için işlev belgelerine bakın

Özellik Açıklama Gerekli
Tür Tür özelliği şu şekilde ayarlanmalıdır: AzureFunction Yes
İşlev uygulaması URL'si Azure İşlev Uygulaması URL'si. Biçim: https://<accountname>.azurewebsites.net. Bu URL, Azure portalında İşlev Uygulamanızı görüntülerken URL bölümünün altındaki değerdir Yes
İşlev tuşu Azure İşlevi için erişim anahtarı. İlgili işlevin Yönet bölümünü seçin ve İşlev Anahtarı'nı veya Konak anahtarını kopyalayın. Daha fazla bilgi için buraya bakın: Erişim anahtarlarıyla çalışma Yes
Kimlik Doğrulaması Azure İşlevini çağırmak için kullanılan kimlik doğrulama yöntemi. Desteklenen değerler , Sistem tarafından atanan yönetilen kimlik veya 'anonim' değerleridir. Yes
Kaynak Kimliği Azure İşlevinin Uygulama (istemci) kimliği. İlgili işlevin Kimlik Doğrulaması bölümüne geçin ve Kimlik sağlayıcısı altında Uygulama (istemci) kimliğini alın. Bu özellik, sistem tarafından atanan yönetilen kimliği kullandığınızda görüntülenir. Daha fazla bilgi için bkz. Microsoft Entra oturum açma özelliğini kullanacak şekilde App Service'inizi veya Azure İşlevleri uygulamanızı yapılandırma. Hayır*

/* resourceId Özellik, sistem tarafından atanan yönetilen kimlik kimlik doğrulamasını kullandığınızda gereklidir.

Sistem tarafından atanan yönetilen kimlik doğrulaması

Sistem tarafından atanan yönetilen kimlik (SAMI) kimlik doğrulamasını iki şekilde kullanabilirsiniz:

  • Kaynak Kimliğini olarak https://management.azure.comayarlayın. Data Factory, sistem tarafından atanan yönetilen kimliğini kullanarak İşlev Uygulamasına bağlanır ve işlev uygulamasını anonim kimlik doğrulamasıyla yürütür.

  • Anonim kimlik doğrulaması kullanmak istemediğiniz güvenli ortamlar için Kaynak Kimliği olarak bir Hizmet Asıl Adı (SPN) yapılandırın. SPN, İşlev Uygulamasında doğru yapılandırılmalıdır:

    1. Hizmet sorumlusu kimliği olarak yeni bir uygulama kaydı oluşturun.

    2. İşlev uygulamanızda Ayarlar'ın altındaki Kimlik Doğrulaması bölümüne gidin ve bir Kimlik sağlayıcısı oluşturun.

    3. Belirli İstemci Uygulamalarından gelen izin verilen istekler bölümüne ADF Uygulama Kimliği'ni ve Belirli kimliklerden gelen isteklere izin ver bölümünde Nesne Kimliği'ni ekleyin. Uygulama kimliği ve Nesne Kimliği şu adımları izleyerek bulunabilir:

      1. Azure portal'u açın
      2. Kurumsal uygulamalar'a gidin
      3. Azure Data Factory/Yönetilen kimlik adınızı arayın.
      4. Tabloda bulunan nesne ve uygulama kimliklerini kopyalayın.

      Uygulama kimliği ve nesne kimliğiyle doldurulacak kutuları gösteren uygulama kaydının ekran görüntüsü.

Azure İşlev etkinliği

Özellik Açıklama İzin verilen değerler Gerekli
Adı İşlem hattındaki etkinliğin adı String Yes
Tür Etkinlik türü "AzureFunctionActivity" String Yes
Bağlı hizmet İlgili Azure İşlev Uygulaması için Azure İşlev bağlı hizmeti Bağlı hizmet referansı Yes
İşlev adı bu etkinliğin çağırdığını Azure İşlev Uygulamasındaki işlevin adı String Yes
Metot İşlev çağrısı için REST API yöntemi Desteklenen Dize Türleri: "GET", "POST", "PUT" Yes
Başlık İsteğe gönderilen üst bilgiler. Örneğin, bir istekte dili ve türü ayarlamak için: "headers": { "Accept-Language": "en-us", "Content-Type": "application/json" } Dize (veya dizenin resultType değeriyle ifade) Hayır
Gövde Fonksiyon API yöntemine istekle birlikte gönderilen gövde Dize (veya dizenin resultType değerini içeren ifade) veya nesnesi. PUT/POST yöntemleri için gereklidir

İstek yükü şemasını İstek yükü şeması bölümünde bulabilirsiniz.

Yönlendirme ve sorgular

Azure İşlev Etkinliği routing destekler. Örneğin, Azure İşlevinizde uç nokta https://functionAPP.azurewebsites.net/api/<functionName>/<value>?code=<secret> varsa, Azure İşlev Etkinliğinde kullanılacak functionName<functionName>/<value> olur. Çalışma zamanında isteneni functionName sağlamak için bu işlevi parametreleştirebilirsiniz.

Not

Dayanıklı İşlevler için functionName, yönlendirme bilgilerini dahil etmek için işlevin bağlamasının JSON tanımındaki route özelliğinden alınmalıdır. Sadece functionName kullanıldığında ve rota detayı eklenmediğinde, İşlev Uygulaması bulunamadığından başarısızlığa neden olur.

Azure İşlev Etkinliği ayrıca queries destekler. Sorgunun functionNamebir parçası olarak eklenmesi gerekir. Örneğin, işlev adı HttpTriggerCSharp ve eklemek istediğiniz sorgu name=hello olduğunda, Azure İşlev Etkinliği'nde functionNameHttpTriggerCSharp?name=hello olarak oluşturabilirsiniz. Bu işlev parametrelendirilebilir, böylece değer çalışma zamanında belirlenebilir.

Zaman aşımı ve uzun süre çalışan işlevler

Azure İşlevleri ayarlarda yapılandırdığınız functionTimeout ayarından bağımsız olarak 230 saniye sonra zaman aşımına uğrar. Daha fazla bilgi için bu makaleye bakın. Bu davranışa geçici bir çözüm bulmak için asenkron bir desen izleyin veya Azure'un Dayanıklı İşlevler hizmetini kullanın. Dayanıklı İşlevler avantajı, kendi durum izleme mekanizmalarını sunmalarıdır, bu nedenle kendi durum izlemenizi uygulamanız gerekmez.

bu makalede Dayanıklı İşlevler hakkında daha fazla bilgi edinin. Dayanıklı İşlev'i çağırmak için bir Azure İşlev Etkinliği ayarlayabilirsiniz; bu, bu örnek gibi farklı bir URI'ye sahip bir yanıt döndürür. statusQueryGetUri İşlev çalışırken HTTP Durumu 202 döndürdüğünden, web etkinliği kullanarak işlevin durumunu yoklayabilirsiniz. Web Etkinliğini, url alanını @activity('<AzureFunctionActivityName>').output.statusQueryGetUri olarak ayarlayarak kurun. Dayanıklı İşlev tamamlandığında, işlevin çıkışı Web Etkinliğinin çıkışıdır.

Örnek

Azure İşlevi kullanarak tar dosyasının içeriğini ayıklamak için bir örnek bulabilirsiniz.

İşlem hatları ve etkinlikler içindeki desteklenen etkinlikler hakkında daha fazla bilgi edinin.