Verileri dönüştürmek üzere veri akışlarında kullanabilmek için Oracle Analitik'i Oracle Bulut Altyapısı fonksiyonları ile entegre edin.
Oracle Analitik'te Oracle Bulut Altyapısı Fonksiyonlarını Kullanma Hakkında
Oracle Bulut Altyapısı Fonksiyonlarını Kullanarak Veri Dönüştürme İşlemi İçin Genel İş Akışı
Oracle Bulut Altyapısı Geçici Kullanım Alanınıza Bağlantı Oluşturma
Oracle Analitik'te Oracle Bulut Altyapısı Fonksiyonlarını Kaydetme
Oracle Bulut Altyapısı'nda oluşturulan fonksiyonları kullanarak Oracle Analitik'teki verileri dönüştürebilirsiniz. Örneğin, İngilizce metni İspanyolca veya Almancaya dönüştürmek için bir dil dönüştürme fonksiyonu kullanabilirsiniz.
Oracle Bulut Altyapısı fonksiyonlarını önce Oracle Analitik'e kaydedersiniz ve ardından İş Zekası Hizmet Yöneticisi veya Veri Görselleştirme İçerik Yazarı yetkilerine sahip herhangi bir Oracle Analitik kullanıcısı bunları veri akışlarında kullanabilir.
Oracle Analitik veri akışlarındaki verileri dönüştürmek üzere kullanabilmeniz için Oracle Bulut Altyapısı Konsolunda fonksiyonlar oluşturun.
Oracle Analitik'te Oracle Bulut Altyapısı Fonksiyonlarını Kaydetme Hakkında
Oracle Analitik'te bir Oracle Bulut Altyapısı fonksiyonu kaydettiğinizde, fonksiyonun Fonksiyon Seçin iletişim kutusunda gri olması durumunda, oac-compatible
etiketiyle konfigüre edildiğini ve doğru funcMode
değeriyle çağrıldığını kontrol edin.
.png'' çiziminin açıklaması
Oracle Analitik'te kullanmak için Oracle Bulut Altyapısı Fonksiyonlarını Konfigüre Etme Hakkında
Oracle Analitik'te kullanmak istediğiniz Oracle Bulut Altyapısı fonksiyonlarının oac compatible
etiketine sahip olması ve fonksiyon kodunun funcMode
değişkenini içermesi gerekir. Oracle Bulut Altyapısı Konsolunda bu ayarları konfigüre edin:
oac-compatible
adında serbest formlu bir etiket ekleyin ve true
değerini ayarlayın.funcMode
değişkenini ekleyin. Oracle Analytics
, funcMode=describeFunction
ile bir Oracle Bulut Altyapısı fonksiyonunu kaydetmek için bir istek ve funcMode=executeFunction
ile bir Oracle Bulut Altyapısı fonksiyonunu çağırmak için bir istek gönderir. func.py içindeki işleyici fonksiyonu, describeFunction modunda veya executeFunction modunda çalışmalıdır. Bu, aşağıda gösterildiği gibi istekten gelen funcMode
girdi değişkeninin değerine göre yapılabilir.
Python'da Sözcük Sayısı için Oracle Bulut Altyapısı Fonksiyonları örneğinin istek ve yanıt formatı aşağıdadır.
funcMode = describeFunction
{ "funcMode": "describeFunction"}
İstekteki funcMode 'describeFunction' olduğunda fonksiyon; durum (returnCode ve errorMessage), çıktılar (ad, çıktı sütununun dataType), parametreler (girdi parametresinin adı, açıklaması, tipi vb.), bucketName vb. ile birlikte fonksiyon tanımını JSON nesnesi olarak şu formatta döndürmelidir (sözcük sayısı örneği):
funcDefinition = { "status": { "returnCode": 0, "errorMessage": "" }, "funcDescription": { "outputs": [ {"name": "word_count", "dataType": "integer"} ], "parameters": [ {"name": "textColumn", "displayName": "Text Column", "description": "Choose column to count words", "required": True, "value": {"type": "column"}} ], "bucketName": "bucket-OCI-FAAS", "isOutputJoinableWithInput": True } }
İstekte funcMode 'describeFunction' olduğunda funcDefinition'ı döndürmek için func.py'ye aşağıdaki kodu ekleyin.
def handler(ctx, data: io.BytesIO = None): response_data = "" try: body = json.loads(data.getvalue()) funcMode = body.get("funcMode") if funcMode == 'describeFunction': response_data = json.dumps(funcDefinition) except (Exception, ValueError) as ex: response_data = json.dumps( {"error": "{0}".format(str(ex))}) return response.Response( ctx, response_data, headers={"Content-Type": "application/json"} )
funcMode = executeFunction - funcMode 'executeFunction' olduğunda, gerçek fonksiyon mantığı yürütülmeli ve yanıt çıktıyla birlikte Oracle Analitik'e geri gönderilmelidir. Kayıtlı fonksiyon Oracle Analitik'teki veri akışından çağrıldığında, istek nesnesi bağımsız değişkenlerde, girdide (bucketName, fileName, fileExtension, fileName, method & rowID) ve çıktıdaki (bucketName, fileName & fileExtension) sütun adıyla aşağıdaki formatta olacaktır.
{ "args": { "textColumn": "REVIEW" }, "funcMode": "executeFunction", "input": { "bucketName": "bucket-OCI-FAAS", "fileExtension": ".csv", "fileName": "oac-fn-e99cd4fddb3844be89c7af6ea4bbeb76-input", "method": "csv", "rowID": "row_id" }, "output": { "bucketName": "bucket-OCI-FAAS", "fileExtension": ".csv", "fileName": "oac-fn-e99cd4fddb3844be89c7af6ea4bbeb76-output" } }
Oracle Bulut Altyapısı'nda Fonksiyon Oluşturma Hakkında
Oracle Bulut Altyapısı Konsolunu, komut satırını (Fn Project Komut Satırı Arayüzü) veya Uygulama Programı Arabirimini kullanarak fonksiyonlar oluşturabilirsiniz. Örneğin, Oracle Bulut Altyapısı Konsolunda Geliştirici Hizmetleri'ne ve Fonksiyonlar'a tıklayın, ardından uygulama ve bir veya daha fazla fonksiyon oluşturmak için ekrandaki talimatı izleyin. Detaylar için bkz. Oracle Bulut Altyapısı Dokümantasyonunda Fonksiyon Oluşturma. Fonksiyonları ilk kez oluşturuyorsanız, Helloworld Fonksiyonu Oluşturma, Devreye Alma ve Çağırma uçtan uca örneğindeki adımları izleyin. Oracle Analitik'te kullanmak istediğiniz tüm fonksiyonlar, oac-compatible=true
serbest form etiketini içermelidir (yukarıdaki Oracle Bulut Altyapısı Fonksiyonlarını Oracle Analitikte kullanmak için Konfigüre Etme hakkında bölümüne bakın).
Oracle Bulut Altyapısı'nda Fonksiyon Oluşturma Hakkında İpuçları
Oracle Bulut Altyapısı fonksiyonları ile Oracle Analitik entegrasyonu için gerekli güvenlik ilkelerine sahip olduğunuza emin olun.
Oracle Analitik Bulutu ve Oracle Bulut Altyapısı geçici kullanım alanınız arasında belirttiğiniz bağlantı kullanmak istediğiniz Oracle Bulut Altyapısı kaynaklarını içeren bölmede okuma, yazma ve silme izinlerine sahip olmalıdır. Oracle Bulut Altyapısı kullanıcısının şu minimum Oracle Bulut Altyapısı güvenlik ilkeleri ile bir kullanıcı grubuna ait olduğuna emin olun. Oracle Analitik'ten bir Oracle Bulut Altyapısı geçici kullanım alanına bağlandığınızda bir Oracle Bulut Altyapısı Uygulama Programı Arabirimi anahtarını veya bir kaynak esasını kullanabilirsiniz.
Not:
Kaynak esası için tüm Analitik anlarını dahil etmek üzere bölmede{request.principal.id='<analytics_instance_ocid>'}
yerine {request.principal.type='analyticsinstance', request.principal.compartment.id='<compartmentA_ocid>'}
belirtin.Uygulama Programı Arabirimi Anahtarı İlkeleri | Kaynak Esası İlkeleri |
---|---|
<group_name> grubunun <compartment_name> bölmesinde functions-family kullanmasına izin ver |
<compartment_name> bölmesinde where all {request.principal.id='<analytics_instance_ocid>'} koşulu sağlandığında any-user tarafından functions-family kullanılmasına izin ver |
<group_name> grubunun <compartment_name> bölmesinde buckets okumasına izin ver |
<compartment_name> bölmesinde where all {request.principal.id='<analytics_instance_ocid>'} koşulu sağlandığında any-user tarafından işletim alanlarının okunmasına izin ver |
<group_name> grubunun <compartment_name> bölmesinde where target.bucket.name='<staging_bucket_name koşulu sağlandığında nesneleri yönetmesine izin ver |
<compartment_name> bölmesinde where all {request.principal.id='<analytics_instance_ocid>', target.bucket.name='<staging_bucket_name>'} koşulu sağlandığında any-user tarafından nesnelerin yönetilmesine izin ver |
<group_name> grubunun geçici kullanım alanında objectstorage-namespaces okumasına izin ver |
geçici kullanım alanında where all {request.principal.id='<analytics_instance_ocid>'} koşulu sağlandığında any-user tarafından objectstorage-namespaces okunmasına izin ver |
Dinamik Grup İlkesi | Açıklama |
---|---|
dynamic-group <dynamic_group> dinamik grubunun <compartment_name> bölmesinde where target.bucket.name='<staging_bucket_name koşulu sağlandığında nesneleri yönetmesine izin ver |
Dinamik grup için geçici işletim alanı erişimi sağlar. |
Örnek eşleşen kural: <dynamic_group>.{resource.type = 'fnfunc', resource.compartment.id = '<compartment_ocid>'}
. <compartment_id>
fonksiyonları içeren bölmenin Oracle Bulut Tanımlayıcısıdır (OCID).
Oracle Bulut Altyapısı fonksiyonlarını kullanarak Oracle Analitik'te verileri dönüştürmek için bu üst düzey görevleri aşağıda listelenen sırayla izleyin.
Görev | Açıklama | Daha Fazla Bilgi |
---|---|---|
Oracle Bulut Altyapısı'nda fonksiyonlar oluşturun (fonksiyon geliştirici yetkileri gerektirir) |
Oracle Bulut Altyapısı geçici kullanım alanınızda fonksiyonlarınızı oluşturun ve bunların Oracle Analitik ile kullanım için belirtilen ön koşullara uyduklarına emin olun. |
|
Oracle Bulut Altyapısı İlkelerini Atama | Uygulama Programı Arabirimi veya kaynak esası kullanarak bağlanmak üzere gerekli Oracle Bulut Altyapısı ilkelerine sahip olduğunuza emin olun. | Oracle Bulut Altyapısı Fonksiyonları ile Oracle Analitik Entegrasyonu İçin Gereken İlkeler |
Oracle Analitik'i Oracle Bulut Altyapısı geçici kullanım alanınıza bağlayın (yönetici veya veri görselleştirme yazarı yetkileri gerektirir) | Oracle Analitik'te, Oracle Bulut Altyapısı geçici kullanım alanınızın bağlantısını oluşturun. |
Oracle Bulut Altyapısı Geçici Kullanım Alanınıza Bağlantı Oluşturma |
Oracle Bulut Altyapısı fonksiyonlarını Oracle Analitik'e kaydedin (yönetici veya veri görselleştirme yazarı yetkileri gerektirir) | Oracle Analitik'te, veri akışlarından çağırabilmeniz için Oracle Bulut Altyapısı fonksiyonlarınızı kaydedin. |
Oracle Analitik'te Oracle Bulut Altyapısı Fonksiyonlarını Kaydetme |
Oracle Bulut Altyapısı fonksiyonlarınızı kullanarak verilerinizi dönüştürün (yönetici veya veri görselleştirme yazarı yetkileri gerektirir) | Bir veri akışı oluşturun ve Özel Komut Listesini Uygula adımını kullanarak bir Oracle Bulut Altyapısı fonksiyonunu çağırın. |
Oracle Bulut Altyapısı Fonksiyonlarını Kullanarak Verileri Dönüştürme |
Verileri dönüştürmek üzere veri akışlarında kullanabilmek için Oracle Bulut Altyapısı fonksiyonlarını Oracle Analitik'te kaydedin. Örneğin, veri analistlerinin İngilizce metni İspanyolca veya Almancaya dönüştürebilmeleri için bir dil dönüştürme fonksiyonu kaydedebilirsiniz.