DataService Studio'da bir API isteği parametresini veya yanıt verisini süzgeç olarak işlemek üzere bir Aviator işlevi oluşturun.
Önkoşullar
Bir iş akışı oluşturmuş olmanız gerekir. Daha fazla bilgi için bkz. İş akışı oluşturma ve yönetme.
-
DataService Studio için özel bir kaynak grubu satın almış olmanız gerekir . Daha fazla bilgi için bkz. DataService Studio için özel kaynak grubu kullanma.
NotAviator işlevleri, DataService Studio için özel bir kaynak grubunda çalıştırılmalıdır.
Arka plan
DataService Studio'da işlevler oluşturabilir, test edebilir ve dağıtabilirsiniz. Bir işlev dağıtıldıktan sonra bunu bir API ile süzgeç olarak ilişkilendirerek istek parametrelerini veya yanıt verilerini işleyebilir ve çeşitli iş senaryoları için karmaşık sorgu mantığı uygulayabilirsiniz. Kod örnekleri için bkz. En iyi uygulamalar: Aviator işlevini süzgeç olarak kullanma.
Sınırlamalar
Aviator işlevleri, DataService Studio için özel bir kaynak grubunda çalıştırılmalıdır.
Bir işlevi API süzgeci olarak kullanırken ön süzgeç ve arka süzgeç aynı işlev türünü kullanmalıdır. Her ikisi için de Aviator veya Python seçin.
Kullanım notları
Güvenlik ve performans nedenleriyle Aviator işlevlerinin DataService Studio için özel bir kaynak grubunda çalıştırılması gerekir. Bu nedenle:
Bir işlevi düzenlerken veya test ederken işlevi DataService Studio için özel bir kaynak grubuyla ilişkilendirmeniz gerekir. Daha fazla bilgi için bkz. İşlev yönetme.
API geliştirme sırasında bir süzgeci etkinleştirip hedef işlevle ilişkilendirirken API'yi DataService Studio için özel bir kaynak grubuyla ilişkilendirmeniz gerekir. Daha fazla bilgi için bkz. Veri kaynağından API oluşturma (API Gateway).
İşlev yapısı
Aviator işlevleri aşağıdaki yerleşik şablonu kullanır. Söz dizimi ayrıntıları için bkz. Aviator işlevi söz dizimi.
## --- AviatorScript ---
## $0: the default name of the input param.
## Expressions must be separated by the semicolon ";".
## Example 1:
## $0.a: Get the attribute "a" from the input param "$0".
## $0.b[index]: Get the element at the specified index from the array "b" in the input param "$0". The index cannot be an expression or a variable.
## Example 2:
## Input: {"keyA":[1,2],"keyB":"value"}
## Function: $0.keyA[0]=3; $0.keyB="new_value"; return $0;
## Output: {"keyA":[3,2],"keyB":"new_value"}
return $0;
Bu şablona dayanarak işlevi değiştirin.
Bir Aviator işlevi için varsayılan girdi parametresi adı
$0şeklindedir ve değiştirilemez. İşlevin tüm girdisini almak için$0kullanabilirsiniz.DataService Studio'da işlevler, istek parametrelerini ve yanıt verilerini işlemek amacıyla API süzgeci olarak hizmet verir. Bu nedenle
$0ile temsil edilen işlev girdisi bir JSON nesnesidir. İstek parametreleri düz bir JSON yapısı (derinlik 1) olarak, yanıt verileri ise iç içe geçmiş bir JSON yapısı (derinlik N) olarak aktarılır.Bir işlev API ön süzgeci olarak kullanıldığında sistem API istek parametrelerini veya önceki bir işlevden gelen çıktıyı bir
key-value mapyapısından JSON nesnesine dönüştürerek$0parametresine iletir. JSON nesnesindeki her anahtarın değer alanı dize türünde olmalıdır.İşlev bir API ön süzgeci olarak kullanıldığında çıktısı bir
key-value mapolmalıdır. Bu çıktı SQL deyimi yürütme için girdi parametreleri olarak hizmet eder. Bu nedenle yalnızca derinliği bir olan düz birkey-value mapdesteklenir.
DataService Studio'ya gitme
DataWorks konsolu üzerinde oturum açın. Hedef bölgede sol gezinme bölmesinden seçeneğini tıklayın. Açılan listeden bir çalışma alanı seçin ve Go to DataService Studio öğesini tıklayın.
İşlev oluşturma
-
Service Development sayfasında
simgesinin üzerine gelin ve seçeneğini tıklayın.Alternatif olarak hedef iş akışını bulun, Function öğesine sağ tıklayın ve seçeneğini belirleyin.
-
Create Aviator Function iletişim kutusunda parametreleri yapılandırın.
Parametre
Açıklama
Function Name
İşlev için benzersiz bir ad. En fazla 256 karakter uzunluğunda olabilir.
Function Template
Yalnızca AviatorScript Standard v1 desteklenir.
Function Description
İşlev hakkında kısa bir açıklama. En fazla 512 karakter uzunluğunda olabilir.
Location
İşlevin hedef dizini.
NotBelirli bir iş akışı, klasör veya işlev kategorisi seçin. İş akışı yoksa önce bir tane oluşturun.
Determine seçeneğini tıklayın.
Edit Code alanında işlev kodunu girin.
-
Kaynak grubunu yapılandırın.
-
İşlev düzenleme sayfasının sağ bölmesinde Resource Group for DataService Studio seçeneğini tıklayın. Resource Group Type bölümünde API çağrıları için kaynak grubu türünü ayarlayın.
Sadece DataService Studio için özel bir kaynak grubu seçebilirsiniz.
NotHedef kaynak grubu adını listeden seçemiyorsanız DataWorks konsolu adresine gidin ve Modify Workspace Ownership kullanarak kaynak grubunu çalışma alanınıza bağlayın. Yeni bir kaynak grubu satın almak için Purchase Exclusive Resource Group for DataService Studio seçeneğini de tıklayabilirsiniz. Daha fazla bilgi için bkz. DataService Studio için özel kaynak grubu kullanma.
-
Environment Configuration bölümünde Memory ve Timeout değerlerini ayarlayabilirsiniz.
DataService Studio için özel bir kaynak grubunda önerilen işlev zaman aşımı 100 ms veya daha azdır.
-
Araç çubuğundaki
simgesini tıklayarak işlevi kaydedin.
İşlevi oluşturduktan sonra API ön süzgeci veya arka süzgeci olarak kullanmak üzere test edin ve dağıtın.
Sonraki adımlar
İşlevi oluşturduktan sonra test edebilir ve dağıtabilirsiniz. Daha fazla bilgi için bkz. İşlevi test etme, dağıtma ve kullanma ve İşlev dağıtma.
İşlevi dağıttıktan sonra bir API ile ilişkilendirerek istek parametrelerini ve yanıt verilerini işlemek için ön süzgeç veya arka süzgeç olarak kullanabilirsiniz. Daha fazla bilgi için bkz. İşlevi API süzgeci olarak kullanma.