يتكامل Oracle Analytics مع وظائف Oracle Cloud Infrastructure (OCI) لتتمكن من استخدامها في تدفقات البيانات لتحويل البيانات.
يمكنك تحويل البيانات في Oracle Analytics باستخدام الدوال التي تم تكوينها في OCI. على سبيل المثال، يمكنك استخدام دالة تحويل لغة لتحويل النص باللغة الإنجليزية إلى الإسبانية أو الألمانية.
يمكنك تسجيل دوال OCI في Oracle Analytics أولاً، ثم يمكن لأي مستخدم Oracle Analytics بدور مسؤول BI Service أو امتيازات مؤلف محتوى DV استخدامها في تدفقات البيانات.
تكوين الدوال في وحدة تحكم OCI كي تتمكن من استخدامها لتحويل البيانات في تدفقات بيانات Oracle Analytics.
حول تسجيل دوال OCI في Oracle Analytics
عند تسجيل دالة OCI في Oracle Analytics، إذا ظهرت باللون الرمادي في مربع حوار تحديد دالة، تأكد من أنها تم تكوينها بعلامة oac-compatible
واستدعاؤها بقيمة funcMode
الصحيحة.
.png
حول تكوين دوال OCI لاستخدامها في Oracle Analytics
يجب أن تكون دوال OCI التي تريد استخدامها في Oracle Analytics العلامة oac-compatible
ويجب أن يتضمن رمز الدالة المتغير funcMode
. تكوين هذه الإعدادات في وحدة تحكم OCI:
oac-compatible
وتعيين القيمة إلى true
.funcMode
في رمز الدالة. يرسل Oracle Analytics
طلبًا لتسجيل دالة OCI بـ funcMode=describeFunction
وطلبًا لاستدعاء دالة OCI بـ funcMode=executeFunction
. يجب أن تعمل دالة المعالج في func.py في وضعdescribeFunction أو وضع executeFunction. يمكن القيام بهذا بناءً على قيمة متغير الإدخال funcMode
من الطلب كما هو معروض أدناه.
إليك الطلب وتنسيق رد دوال OCI لمثال عدد الكلمات بلغة python.
funcMode = describeFunction
{ "funcMode": "describeFunction"}
عندما يكون funcMode في الطلب هو 'describeFunction'، ينبغي أن تقوم الدالة بإرجاع تعريف الدالة بالحالة (returnCode وerrorMessage)، والمخرجات (الاسم ونوع بيانات عمود المخرجات)، والمعلمات (الاسم والوصف والنوع وغيرها من معلمات الإدخال)، وbucketName وغير ذلك ككائن JSON بالتنسيق التالي (مثال عدد الكلمات):
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 } }
إضافة الرمز التالي في func.py لإرجاع funcDefinition عندما يكون funcMode في الطلب هو 'describeFunction'.
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'، ينبغي تنفيذ منطق الدالة الفعلية وإرسال الرد إلى Oracle Analytics بالمخرجات. عند استدعاء دالة مسجلة من تدفق البيانات في Oracle Analytics، سيكون كائن الطلب بالتنسيق التالي واسم العمود في الوسيطات، والإدخالات (bucketName وfileName وfileExtension وfileName وmethod وrowID) والمخرجات (bucketName وfileName وfileExtension).
{ "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" } }
حول تكوين الدوال في OCI
يمكنك تكوين الدوال باستخدام وحدة تحكم OCI، سطر الأوامر (واجهة سطر أوامر مشروع Fn)، أو API. على سبيل المثال، في وحدة تحكم OCI، انقر على خدمات المطور، ثم الدوال واتبع التعليمات الظاهرة على الشاشة لتكوين التطبيقات ودالة واحدة أو أكثر. لمزيد من التفاصيل، يرجى الاطلاع على وثائق تكوين الدوال في OCI. إذا كنت تقوم بتكوين الدوال للمرة الأولى، فاتبع الخطوات في المثال الشامل تكوين دالة Helloworld ونشرها واستدعاؤها. يجب أن تتضمن أي دوال تريد استخدامها في Oracle Analytics علامة النموذج الحر oac-compatible=true
(اطلع على حول تكوين دوال OCI لاستخدامها في Oracle Analytics أعلاه).
نصائح حول تكوين الدوال في وحدة تحكم OCI
لتكامل Oracle Analytics مع وظائف OCI، تأكد من وجود سياسات الأمان اللازمة لديك.
يجب أن يمتلك مستخدم OCI الذي تحدده في الاتصال بين Oracle Analytics Cloud وإيجار OCI أذونات القراءة والكتابة والحذف للحاوية التي تحتوي على موارد OCI التي تريد استخدامها. تأكد أن مستخدم OCI ينتمي إلى مجموعة المستخدمين بالحد الأدنى التالي من سياسات أمان OCI. عند الاتصال بمثيل قاعدة بياناتOCI مؤجر من Oracle Analytics، يمكنك استخدام مفتاح واجهة API لـ OCI أو المسؤول الرئيسي للموارد.
ملاحظة:
بالنسبة إلى المسؤول الرئيسي للموارد، لتضمين كل مثيلات Analytics ضمن حاوية، حدد{request.principal.type='analyticsinstance', request.principal.compartment.id='<compartmentA_ocid>'}
بدلاً من {request.principal.id='<analytics_instance_ocid>'}
.سياسات مفتاح واجهة API | سياسات المسؤول الرئيسي للموارد |
---|---|
السماح لمجموعة <group_name> باستخدام functions-family في الحاوية <compartment_name> |
السماح لأي مستخدم باستخدام functions-family في الحاوية <compartment_name> حيث كل {request.principal.id='<analytics_instance_ocid>'} |
السماح لمجموعة <group_name> بقراءة الفئات في الحاوية <compartment_name> |
السماح لأي مستخدم بقراءة الفئات في الحاوية <compartment_name> حيث كل {request.principal.id='<analytics_instance_ocid>'} |
السماح لمجموعة <group_name> بإدارة الكائنات في الحاوية <compartment_name> حيث target.bucket.name='<staging_bucket_name>' |
السماح لأي مستخدم بإدارة الكائنات في الحاوية <compartment_name> حيث كل {request.principal.id='<analytics_instance_ocid>', target.bucket.name='<staging_bucket_name>'} |
السماح لمجموعة <group_name> بقراءة objectstorage-namespaces في مثيل قاعدة البيانات المؤجر |
السماح لأي مستخدم بقراءة objectstorage-namespaces في مثيل قاعدة البيانات المؤجر حيث كل {request.principal.id='<analytics_instance_ocid>'} |
سياسة المجموعة الديناميكية | الوصف |
---|---|
السماح للمجموعة الديناميكية <dynamic_group> بإدارة الكائنات في compartment <compartment_name> حيث target.bucket.name='<staging_bucket_name>' |
تقديم الوصول إلى الفئة المرحلية للمجموعة الديناميكية |
مثال قاعدة المطابقة: <dynamic_group>.{resource.type = 'fnfunc', resource.compartment.id = '<compartment_ocid>'}
, where <compartment_ocid>
هو معرف Oracle Cloud ID للوعاء الذي يحتوي على الوظائف.
اتبع هذه المهام عالية المستوى بالترتيب الموضح أدناه لتحويل البيانات في Oracle Analytics باستخدام دوال OCI.
المهمة | الوصف | مزيد من المعلومات |
---|---|---|
تكوين الدوال في OCI (يتطلب امتيازات مطور الدوال) |
في إيجار OCI، قم بتكوين الدوال، وتأكد من امتثالها للمتطلبات المسبقة المحددة للاستخدام مع Oracle Analytics. |
|
تعيين سياسات OCI | تأكد من أن لديك سياسات OCI المطلوبة للاتصال باستخدام مفتاح واجهة API أو المسؤول الرئيسي للموارد. | السياسات اللازمة لتكامل وظائف OCI Functions مع Oracle Analytics |
توصيل Oracle Analytics بإيجار OCI الخاص بك (يتطلب امتيازات المسؤول أو مؤلف DV) | في Oracle Analytics، تكوين اتصال بإيجار OCI الخاص بك. |
تكوين اتصال بمثيل قاعدة بيانات Oracle Cloud Infrastructure لديك |
تسجيل دوال OCI في Oracle Analytics (يتطلب امتيازات المسؤول أو مؤلفDV) | في Oracle Analytics، تسجيل دوال OCI الخاصة بك كي تتمكن من استدعائها من تدفقات البيانات. | |
تحويل البيانات باستخدام دوال OCI (يتطلب امتيازات المسؤول أو مؤلف DV) | قم بتكوين تدفق بيانات، ثم استخدم خطوة تطبيق اسكربت مخصص لاستدعاء دالة OCI. |
تسجيل دوال OCI في Oracle Analytics كي تتمكن من استخدامها في تدفقات البيانات لتحويل البيانات. على سبيل المثال، يمكنك تسجيل دالة تحويل لغة كي يتمكن محللو البيانات من تحويل النص باللغة الإنجليزية إلى الإسبانية أو الألمانية.