إدارة استخدام الذاكرة المخبئية للاستعلام

يحافظ Oracle Analytics Cloud على ذاكرة مخبئية محلية لمجموعات نتائج الاستعلام في الذاكرة المخبئية للاستعلام.

الموضوعات:

حول الذاكرة المخبئية للاستعلام

تتيح الذاكرة المخبئية لـ Oracle Analytics Cloud بتلبية طلبات العديد من الاستعلامات اللاحقة دون الوصول إلى مصادر البيانات النهائية ويرفع هذا من أداء الاستعلام. لكن، قد تصبح إدخالات الذاكرة المخبئية للاستعلام خاملة عندما تتم تحديثات على مصادر البيانات النهائية.

مزايا استخدام الذاكرة المخبئية

أسرع طريقة لمعالجة استعلام هي تخطي الجزء المجمع من المعالجة واستخدام الإجابات التي تم حسابها مسبقًا.

باستخدام الذاكرة المخبئية للاستعلامات، يخزن Oracle Analytics Cloud النتائج التي تم حسابها مسبقًا للاستعلامات في ذاكرة مخبئية محلية. إذا كان استعلام آخر يستخدم هذه النتائج، فسيتم استبعاد كل عمليات معالجة قاعدة البيانات لهذا الاستعلام. قد يؤدي هذا إلى تحسينات كبيرة في متوسط وقت استجابة الاستعلام.

بالإضافة إلى تحسين الأداء، ستتمكن من الإجابة عن استعلام من ذاكرة مخبئية محلية توفر موارد الشبكة ووقت المعالجة في خادم قاعدة البيانات. يتم توفير موارد الشبكة لأن النتائج الوسيطة لا يتم إرجاعها إلى Oracle Analytics Cloud. يوفر عدم تشغيل الاستعلام على قاعدة البيانات وقت خادم قاعدة البيانات للقيام بأعمال أخرى. إذا كانت قاعدة البيانات تستخدم نظام استعادة نفقات، فقد يؤدي تشغيل استعلامات أقل إلى تقليل النفقات في الموازنة.

ومن المزايا الأخرى لاستخدام ذاكرة مخبئية للإجابة عن استعلام هو توفير وقت المعالجة على Oracle Analytics Cloud، خاصة في حالة استعادة نتائج الاستعلام من عدة قواعد بيانات. تبعًا للاستعلام، قد توجد معالجة ربط وفرز مهمة في الخادم. إذا كان الاستعلام محسوبًا بالفعل، فسيتم تجنب المعالجة، مما يوفر موارد الخادم للمهام الأخرى.

للتلخيص، يمكن أن يحسن استخدام ذاكرة مخبئية للاستعلامات من أداء الاستعلامات بشكل كبير كما يقلل مرور الشبكة الحمل الزائد للمعالجة ومعالجة قاعدة البيانات.

تكلفة استخدام الذاكرة المخبئية

يتمتع استخدام الذاكرة المخبئية بالكثير من المزايا الواضحة، لكن له تكاليف كذلك.

  • احتمالية خمول نتائج الذاكرة المخبئية

  • التكاليف الإدارية لإدارة الذاكرة المخبئية

مع إدارة الذاكرة المخبئية، تفوق المزايا في المعتاد التكاليف.

المهام الإدارية المرتبطة بالتخزين المؤقت

ترتبط بعض المهام الإدارية بالتخزين في الذاكرة المخبئية. يجب تعيين وقت استمرار الذاكرة المخبئية لكل جدول فعلي بما يناسبه، بناءً على مدى تكرار تحديث البيانات في هذا الجدول.

عندما يختلف معدل تكرار تحديث البيانات، يجب أن تتبع وقت حدوث التغييرات ومسح الذاكرة المخبئية يدويًا عند الحاجة.

إبقاء الذاكرة المخبئية محدّثة

إذا لم يتم مسح إدخالات الذاكرة المخبئية عند تغيير البيانات في قواعد البيانات الأساسية، فمن الممكن أن تُرجع الاستعلامات نتائج غير محدّثة.

يجب تقييم إذا ما كان هذا مقبولاً. قد يكون من المقبول السماح بوجود بعض البيانات الخاملة في الذاكرة المخبئية. يجب أن تقرر مستوى البيانات الخاملة المقبول ثم تقوم بتكوين (واتباع) مجموعة من القواعد لتعكس هذه المستويات.

على سبيل المثال، لنفرض أن تطبيقًا يحلل بيانات الشركة من تكتل كبير، وأنت تقوم بإعداد الملخصات السنوية لأقسام مختفة في الشركة. لا تؤثر البيانات الجديدة بشكل كبير على الاستعلامات لأن البيانات الجديدة لا تؤثر إلا على ملخصات السنة القادمة. في هذه الحالة، قد تفضل ترك الإدخالات في الذاكرة المخبئية على مسحها.

لكن لنفرض أنه يتم تحديث قواعد البيانات ثلاث مرات في اليوم وأنت تقوم بتنفيذ الاستعلامات على أنشطة اليوم الحالي. ففي هذه الحالة، يجب مسح الذاكرة المخبئية مرات أكثر، أو ربما التفكير في عدم استخدام الذاكرة المخبئية على الإطلاق.

أحد السيناريوهات الأخرى هو أن تعيد إنشاء مجموعة البيانات منذ البداية على فترات ثابتة (مثل مرة في الأسبوع). في هذا المثال، يمكنك مسح الذاكرة المخبئية بالكامل كجزء من عملية إعادة إنشاء مجموعة البيانات، وبهذا تضمن عدم وجود أي بيانات قديمة في الذاكرة المخبئية.

أيًا كان الموقف، يجب أن تقيم ما هو المقبول فيما يتعلق بالمعلومات غير الحالية التي يتم إرجاعها للمستخدمين.

مشاركة الذاكرة المخبئية عبر المستخدمين

في حالة تمكين تسجيل الدخول المشترك لمجمع اتصالات معين، يمكن مشاركة الذاكرة المخبئية عبر المستخدمين دون الحاجة لإدراجها لكل مستخدم.

في حالة عدم تمكين تسجيل الدخول المشترك واستخدام تسجيل دخول محدد للمستخدم لقاعدة البيانات، يقوم كل مستخدم بإنشاء إدخال الذاكرة المخبئية الخاصة به.

تمكين أو تعطيل استخدام الذاكرة المخبئية للاستعلام

في Oracle Analytics Cloud، يتم تمكين الذاكرة المخبئية للاستعلام افتراضيًا. يمكنك تمكين أو تعطيل الذاكرة المخبئية للاستعلام من صفحة إعدادات النظام المتقدمة.

  1. انقر على وحدة التحكم.
  2. انقر على إعدادات النظام المتقدمة.
  3. انقر على التوافق والأداء.
  4. قم بتعيين تمكين الذاكرة المخبئية على تشغيل أو إيقاف تشغيل.
    • تشغيل — تمكين الذاكرة المخبئية للاستعلام البيانات.
    • إيقاف التشغيل — الذاكرة المخبئية معطلة.
  5. انقر على تطبيق.
    انتظر لبضع لحظات حتى تسري التغييرات عبر تجديد النظام.

مراقبة الذاكرة المخبئية وإدارتها

لإدارة التغييرات في قواعد البيانات الأساسية ولمراقبة إدخالات الذاكرة المخبئية، يجب تطوير استراتيجية إدارة ذاكرة مخبئية.

تحتاج إلى عملية لإلغاء صلاحية إدخالات الذاكرة المخبئية عندما تتغير البيانات في الجداول الأساسية التي تشكل إدخال الذاكرة المخبئية، وعملية لمراقبة إدخالات الذاكرة المخبئية غير المرغوبة وتحديدها وإزالتها.

يحتوي هذا القسم على الموضوعات التالية:

اختيار استراتيجية إدارة الذاكرة المخبئية

يعتمد اختيار استراتيجية إدارة الذاكرة المخبئية على حساسية البيانات في قواعد البيانات الأساسية وقابلية التنبؤ بالتغييرات التي تسبب هذه الحساسية.

كما يعتمد على عدد الاستعلامات التي تشكل الذاكرة المخبئية لديك ونوعها واستخدام هذه الاستعلامات. يقدم هذا القسم نظرة عامة على عدة أساليب لإدارة الذاكرة المخبئية.

تعطيل استخدام الذاكرة المخبئية للنظام

يمكنك تعطيل استخدام الذاكرة المخبئية للنظام بالكامل لإيقاف كل إدخالات الذاكرة الجديدة وإيقاف أي استعلامات من استخدام الذاكرة المخبئية الموجودة. يتيح لك تعطيل استخدام الذاكرة المخبئية تمكينها لاحقًا دون خسارة أي إدخالات تم تخزينها في الذاكرة المخبئية.

يعد تعطيل الذاكرة المخبئية مؤقتًا استراتيجية مفيدة في المواقف حيث تشك في وجود إدخالات خاملة في الذاكرة المخبئية، لكن تريد التأكد من أنها خاملة بالفعل قبل مسحها أو مسح الذاكرة المخبئية بالكامل. إذا وجدت أن البيانات المخزنة في الذاكرة المخبئية لا تزال ذات صلة، أو بعد مسح الإدخالات التي تسبب مشاكل بأمان، يمكنك تمكين الذاكرة المخبئية بأمان. عند الحاجة، امسح الذاكرة المخبئية بالكامل أو الذاكرة المخبئية المرتبطة بنموذج عمل معين قبل تمكين الذاكرة المخبئية مرة أخرى.

الذاكرة المخبئية ووقت استمرار الذاكرة المخبئية لجداول فعلية محددة

يمكنك تعيين سمة قابلة للتخزين في ذاكرة مخبئية، مما يتيح لك تحديد استعلامات هذا الجدول التي تتم إضافتها للذاكرة المخبئية للإجابة عن الاستعلامات المستقبلية.

إذا قمت بتمكين استخدام الذاكرة المخبئية لجدول، فستتم إضافة أي استعلام يتضمن هذا الجدول إلى الذاكرة المخبئية. تسمح كل الجداول باستخدام الذاكرة المخبئية افتراضيًا، لكن بعض الجداول قد لا تكون مثالية لتضمينها في الذاكرة المخبئية ما لم تقم بتعيين إعدادات استمرار الذاكرة المخبئية المناسبة. على سبيل المثال، لنفترض أن لديك جدول يخزن بيانات مؤشر يتم تحديثها كل دقيقة. يمكنك تحديد أنك تريد مسح إدخالات ذلك الجدول كل 59 ثانية.

يمكنك أيضًا استخدام إعدادات استمرار الذاكرة المخبئية لتحديد مدة تخزين الإدخالات لهذا الجدول في الذاكرة المخبئية للاستعلام. ويفيد هذا لمصادر البيانات التي يتم تحديثها كثيرًا.

  1. في Model Administration Tool، وضمن الطبقة الفعلية، انقر نقرًا مزدوجًا على الجدول الفعلي.

    إذا كنت تستخدم Semantic Modeler، فاطلع على ما الخصائص العامة لجدول فعلي؟.

  2. في مربع حوار خصائص الجدول الفعلي، في علامة تبويب عام، حدد واحدًا من الاختيارات التالية:

    • لتمكين استخدام الذاكرة المخبئية، حد قابل للتخزين في الذاكرة المخبئية.

    • لمنع تخزين جدول في الذاكرة المخبئية، قم بإلغاء تحديد قابل للتخزين في الذاكرة المخبئية.

  3. لتعيين وقت انتهاء صلاحية ذاكرة مخبئية، حدد وقت استمرار الذاكرة المخبئية وحدد وحدة قياس (أيام أو ساعات أو دقائق أو ثوانٍ). إذا لم تكن تريد أن تنتهي صلاحية إدخالات الذاكرة المخبئية تلقائيًا، فحدد عدم انتهاء صلاحية الذاكرة المخبئية.

  4. انقر على موافق.

كيف تؤثر تغييرات النماذج الدلالية على الذاكرة المخبئية للاستعلام

عند تعديل النماذج الدلالية باستخدام Semantic Modeler أو Model Administration Tool، قد تؤثر التغييرات على الإدخالات المخزنة في الذاكرة المخبئية. على سبيل المثال، إذا قمت بتغيير تعريف متغير نموذج دلالي ديناميكي أو كائن فعلي، قد لا تظل إدخالات ذاكرة لاتخزين المؤقت التي تشير إلى هذا الكائن أو المتغير صالحة. قد تؤدي هذه التغييرات إلى الحاجة لمسح الذاكرة المخبئية. يوجد سيناريوهان يجب أن تعرفهما: تعديل النموذج الدلالي الحالي، وإنشاء (أو تحميل) نموذج دلالي جديد.

تغييرات النموذج الدلالي

عند تعديل نموذج دلالي أو تحميل ملف .rpd مختلف، تؤدي أي تغييرات تقوم بها وتؤثر على إدخالات الذاكرة المخبئية تلقائيًا إلى مسح كل إدخالات الذاكرة المخبئية التي تشير إلى الكائنات التي تم تغييرها. يتم المسح عندما تقوم بتحميل التغييرات. على سبيل المثال، إذا حذفت جدولاً فعليًا من نموذج دلالي، فسيتم مسح كل إدخالات الذاكرة المخبئية التي تشير إلى هذا الجدول عند الدخول. تؤدي أي تغييرات تتم في نموذج دلالي في الطبقة المنطقية إلى مسح كل إدخالات ذاكرة التخزين المؤقت للنموذج الدلالي.

التغييرات على متغيرات النماذج الدلالية العامة

يتم تجديد قيم متغيرات النموذج الدلالي العام بواسطة البيانات التي تم إرجاعها من الاستعلامات. عند تعريف متغير نموذج دلالي عام، عليك إنشاء كتلة تهيئة أو استخدام كتلة موجودة بالفعل تحتوي على استعلام SQL. يمكنك تكوين جدول زمني لتشغيل الاستعلام وتجديد قيمة المتغير دوريًا.

إذا تغيرت قيمة متغير النموذج الدلالي، فستصبح أي إدخالات ذاكرة التخزين المؤقت تستخدم هذا المتغير في عمود خاملة، ويتم إنشاء إدخال ذاكرة تخزين مؤقت جديد عند الحاجة إلى البيانات في هذا الإدخال مرة أخرى. لا تتم إزالة إدخال الذاكرة المخبئية القديم على الفور، لكنه يبقى حتى تقوم آلية الذاكرة المخبئية المعتادة بالتنظيف.

استراتيجيات استخدام الذاكرة المخبئية

واحدة من المميزات الرئيسية لاستخدام الذاكرة المخبئية للاستعلامات هي التحسن الواضح في أداء الاستعلام.

يساعد استخدام الذاكرة المخبئية مع الاستعلامات في الإدراج بالذاكرة المخبئية عن طريق تشغيل الاستعلامات وإدراج نتائجها في الذاكرة المخبئية خارج ساعات العمل. تتطلب استراتيجية الإدراج الجيدة أن تعرف وقت حدوث مطابقة بالذاكرة المخبئية.

إذا كنت تريد الإدراج في الذاكرة المخبئية لكل المستخدمين، يمكنك استخدام الاستعلام التالي للقيام بهذا:

SELECT User, SRs

وبعد الإدراج في الذاكرة المخبئية باستخدام SELECT User, SRs، تكون الاستعلامات التالية مطابقات الذاكرة المخبئية:

SELECT User, SRs WHERE user = valueof(nq_SESSION.USER) (and the user was USER1)
SELECT User, SRs WHERE user = valueof(nq_SESSION.USER) (and the user was USER2)
SELECT User, SRs WHERE user = valueof(nq_SESSION.USER) (and the user was USER3)

يحتوي هذا القسم على الموضوعات التالية:

حول مطابقات الذاكرة المخبئية

عند تمكين التخزين في الذاكرة المخبئية، يتم تقييم كل استعلام لتحديد إذا ما كان مؤهلاً لمطابقة الذاكرة المخبئية.

تعني مطابقة الذاكرة المخبئية أن Oracle Analytics Cloud تمكن من استخدام الذاكرة المخبئية للإجابة عن الاستعلام ولم يلجأ إلى قاعدة البيانات على الإطلاق. يمكن أن يستخدم Oracle Analytics Cloud الذاكرة المخبئية للاستعلام للإجابة عن الاستعلام بمستوى التجميع ذاته أو مستوى أعلى.

تحدد العديد من العوامل إذا ما كانت الذاكرة المخبئية تحتوي على مطابقة. يصف الجدول أدناه هذه العوامل.

معامل أو قاعدة الوصف

يجب أن تتطابق مجموعة فرعية من الأعمدة في قائمة SELECT

يجب أن تكون كل الأعمدة في قائمة SELECT لاستعلام جديد موجودة في الاستعلام بالذاكرة المخبئية أو للتأهل للمطابقة ذاكرة مخبئية، وإلا يجب أن يكون من الممكن احتسابها من الأعمدة في الاستعلام.

توضح هذه القاعدة الحد الأدنى من المتطلبات لمطابقة الذاكرة المخبئية، لكن لا يضمن الالتزام بهذه القاعدة مطابقة الذاكرة المخبئية. وتنطبق القواعد الأخرى الواردة في هذا الجدول كذلك.

يمكن أن تتكون الأعمدة في قائمة SELECT من التعبيرات الموجودة في الأعمدة للاستعلامات بالذاكرة المخبئية

يمكن أن يحتسب Oracle Analytics Cloud التعبيرات في النتائج بالذاكرة المخبئية للإجابة عن الاستعلام الجديد، لكن يجب أن تكون كل الأعمدة في النتائج بالذاكرة المخبئية. على سبيل المثال، الاستعلام:

SELECT product, month, averageprice FROM sales WHERE year = 2000

مطابقة في الذاكرة المخبئية للاستعلام:

SELECT product, month, dollars, unitsales FROM sales WHERE year = 2000

لأنه يمكن احتساب averageprice من قيمتي dollars وunitsales (averageprice = dollars/unitsales).

ويجب أن تكون عبارة WHERE متطابقة من ناحية الصياغة أو مجموعة فرعية منطقية

ليتأهل الاستعلام كمطابقة ذاكرة مخبئية، يجب أن تكون قيود عبارة WHERE إما مطابقة للنتائج بالذاكرة المخبئية أو مجموعة فرعية من النتائج بالذاكرة المخبئية.

تكون عبارة WHERE وهي مجموعة فرعية منطقية لاستعلامات بنتائج بالذاكرة المخبئية مؤهلة إذا استوفت المجموعة الفرعية واحدة من المعايير التالية:

  • مجموعة فرعية لقيم قائمة IN. تتأهل الاستعلامات التي تتطلب عناصر أقل من الاستعلامات بالذاكرة المخبئية في قائمة IN لتكون مطابقة ذاكرة مخبئية. على سبيل المثال، الاستعلام التالي:

    SELECT employeename, region
    FROM employee, geography
    WHERE region in ('EAST', 'WEST')

    مؤهل كمطابقة في الاستعلام بالذاكرة المخبئية التالية:

    SELECT employeename, region
    FROM employee, geography
    WHERE region in ('NORTH', 'SOUTH', 'EAST', 'WEST')
  • يحتوي على قيود OR أقل (لكن متطابقة) من النتائج بالذاكرة المخبئية.

  • يحتوي على مجموعة فرعية منطقية لمقارنة حرفية. على سبيل المثال، يكون التخمين التالي:

    WHERE revenue < 1000

    مؤهلاً كمطابقة في استعلام قابل للمقارنة مع التخمين:

    WHERE revenue < 5000
  • لا توجد عبارة WHERE. في حالة وجود استعلام بلا عبارة WHERE بالذاكرة المخبئية، فستتأهل الاستعلامات التي تستوفي كل قواعد مطابقة الذاكرة المخبئية الأخرى كمطابقة ذاكرة مخبئية بغض النظر عن عبارة WHERE الخاصة بها.

بالإضافة إلى ذلك، يجب أن تكون الأعمدة المستخدمة في عبارة WHERE في قائمة العرض. على سبيل المثال، الاستعلام التالي:

SELECT employeename
FROM employee, geography
WHERE region in ('EAST', 'WEST')

لا يؤدي إلى ظهور نتيجة مطابقة ذاكرة مخبئية لاستعلام الإدراج في قاعدة البيانات في القائمة السابقة لأن REGION ليست في قائمة العرض.

يجب أن تكون استعلامات الأبعاد فقط تطابقًا تامًا

إذا كان الاستعلام أبعادًا فقط، فإن هذا يعني أنه لا يتضمن بيانات فعلية أو قياسات، وبالتالي لا تظهر إلا المطابقة التامة بالذاكرة المخبئية في أعمدة العرض بالاستعلامات بالذاكرة المخبئية. يمنع هذا السلوك النتائج الإيجابية الخاطئة عند وجود عدة مصادر منطقية لجدول أبعاد.

يجب أن تكون الاستعلامات ذات وظائف خاصة مطابقة تامة

يجب أن تكون الاستعلامات الأخرى التي تحتوي على وظائف خاصة مثل وظائف السلسلة الزمنية (AGO وTODATE وPERIODROLLING)، ووظائف الحدود والإزاحة مثل (OFFSET وFETCH)، ووظائف العلاقات (ISANCESTOR وISLEAF وISROOT وISSIBLING)، ووظائف التجميع الخارجي، ويجب أن تكون قياسات المرشحات بشكل عام مطابقة تامة مع أعمدة العرض في الاستعلام بالذاكرة المخبئية. في هذه الحالات، يجب أن يكون المرشح أيضًا مطابقًا تمامًا. لقياسات المرشح، إذا كان من الممكن استبدال قياس المرشح كعبارة WHERE، فمن الممكن استخدام الذاكرة المخبئية للمجموعة الفرعية.

يجب أن تتطابق مجموعات الجداول المنطقية

للتأهل كمطابقة ذاكرة مخبئية، يجب أن تحتوي كل الاستعلامات الواردة على الجداول المنطقية نفسها مثل إدخال الذاكرة المخبئية. تتجنب هذه القاعدة حدوث مطابقات خاطئة من الذاكرة المخبئية. على سبيل المثال، منتج SELECT * FROM لا يطابق مبيعات، منتج SELECT * FROM.

يجب أن تطابق قيم متغير الجلسة، بما في ذلك، متغيرات جلسة الأمن

إذا كانت عبارة SQL المنطقية أو عبارة SQL الفعلية تشير إلى أي متغير جلسة، يجب أن تتطابق قيم متغير الجلسة. بخلاف ذلك، لا تكون الذاكرة المخبئية مطابقة.

بالإضافة إلى ذلك، يجب أن تتطابق قيم متغيرات الجلسة الحساسة أمنيًا مع قيم متغيرات الجلسة التي تم تحديدها في النموذج الدلالي، حتى بالرغم من أن عبارة SQL المنطقية نفسها لا تشير إلى متغيرات الجلسة. يرجى الاطلاع على التأكد من صحة النتائج عند استخدام أمن قاعدة بيانات على مستوى الصف.

شروط الربط المقابلة

يجب أن تكون نتيجة الجدول المنطقي الذي تم ربطه بطلب استعلام جديد نفس نتائج الذاكرة المخبئية (أو مجموعة فرعية) للتأهل كمطابقة ذاكرة مخبئية.

يجب أن تكون سمة DISTINCT بنفس القيمة

إذا كان الاستعلام بالذاكرة المخبئية يزيل السجلات المكررة من خلال معالجة DISTINCT (على سبيل المثال، SELECT DISTINCT...)، يجب أن تتضمن طلبات الأعمدة بالذاكرة المخبئية كذلك معالجة DISTINCT، ويعد الطلب للعمود نفسه دون معالجة DISTINCT فرصة فائتة للذاكرة المخبئية.

يجب أن تحتوي الاستعلامات على مستويات تجميع متوافقة

يمكن أن تستخدم الاستعلامات التي تطلب مستوى مجمعًا من المعلومات النتائج بالذاكرة المخبئية على مستوى تجميع أقل. على سبيل المثال، يطلب الاستعلام التالي الكمية التي تم بيعها على مستوى المورد والمدينة:

SELECT supplier, region, city, qtysold
FROM suppliercity

يطلب الاستعلام التالي الكمية التي تم بيعها على مستوى المدينة:

SELECT city, qtysold
FROM suppliercity

ينتج عن الاستعلام الثاني نتائج في مطابقة ذاكرة مخبئية في الاستعلام الأول.

تجميع إضافي محدود

على سبيل المثال، في حالة إضافة استعلام بالعمود qtysold للذاكرة المخبئية، فسيؤدي طلب RANK(qtysold) إلى عدم مطابقة الذاكرة المخبئية. بالإضافة إلى ذلك، يمكن أن يؤدي استعلام يطلب qtysold على مستوى الدولة إلى مطابقة ذاكرة مخبئية من استعلام يطلب qtysold على مستوى الدولة والمنطقة.

يجب أن تتكون عبارة ORDER BY من الأعمدة في قائمة "تحديد"

في الاستعلامات حيث لا توجد أعمدة "الطلب حسب" في قائمة "تحديد" تحدث أخطاء بالذاكرة المخبئية.

تشخيص مطابقة ذاكرة مخبئية

لتشخيص سلوك مطابقة ذاكرة مخبئية بشكل أفضل، قم بتعيين متغير الجلسة ENABLE_CACHE_DIAGNOSTICS على القيمة 4، كما هو موضح في المثال التالي:

ENABLE_CACHE_DIAGNOSTICS=4

التأكد من صحة النتائج عند استخدام أمن قاعدة بيانات على مستوى الصف

عند استخدام استراتيجية أمان لقاعدة بيانات على مستوى الصف، مثل قاعدة بيانات خاصة آمنة (VPD)، تتوقف نتائج البيانات التي يتم إرجاعها على صلاحيات مصادقة المستخدم.

ولهذا، يجب أن يعرف Oracle Analytics Cloud إذا ما كان مصدر البيانات يستخدم أمان قاعدة البيانات على مستوى الصف وما المتغيرات المتعلقة بالأمان.

لضمان أن يكون الوصول إلى الذاكرة المخبئية متعلقًا بإدخالات الذاكرة المخبئية التي تتضمن كل المتغيرات الحساسة للأمان ومطابقة لها، يحب تكوين كائن قاعدة البيانات وكائنات متغير الجلسة بشكل صحيح في Model Administration Tool كما يلي:

  • كائن قاعدة البيانات. في الطبقة الفعلية، في علامة تبويب "عام" في مربع حوار "قاعدة البيانات"، حدد قاعدة بيانات خاصة افتراضية لتحديد إذا ما كان مصدر البيانات يستخدم أمان قاعدة البيانات على مستوى الصف.

    إذا كنت تستخدم إعداد أمان لقاعدة البيانات على مستوى الصف مع تخزين مشترك في الذاكرة المخبئية، فيجب تحديد هذا الخيار لمنع مشاركة إدخالات الذاكرة المخبئية المشتملة على متغيرات حساسة للأمان غير متطابقة.

  • كائن متغير جلسة العمل. بالنسبة للمتغيرات المتعلقة بالأمان، في مربع حوار متغير الجلسة، حدد حساسة للأمان لتحديد أنها حساسة للأمان عند استخدام استراتيجية أمان قاعدة البيانات على مستوى الصف. يضمن هذا الخيار وضع علامة متغيرات حساسة للأمان على إدخالات الذاكرة المخبئية، مما يتيح مطابقة المتغيرات الحساسة للأمان في كل الاستعلامات الواردة.

تشغيل مجموعة من الاستعلامات لملء الذاكرة المخبئية

لزيادة مطابقات الذاكرة المخبئية المحتملة للحد الأقصى، إحدى الاستراتيجيات هي تشغيل مجموعة من الاستعلامات لملء الذاكرة المخبئية.

فيما يلي التوصيات حول أنواع الاستعلامات التي ينبغي استخدامها عند إنشاء مجموعة من الاستعلامات للإدراج في الذاكرة المخبئية.

  • استعلامات النسخ المسبقة الشائعة. الاستعلامات التي يتم تشغيلها بشكل شائع، خاصة تلك التي تستخدم الكثير من الموارد للمعالجة، مثالية كاستعلامات الإدراج في الذاكرة المخبئية. تعد الاستعلامات التي يتم تضمين نتائجها في لوحات المعلومات أمثلة جيدة للاستعلامات الشائعة.

  • قوائم SELECT بلا عبارات. تؤدي إزالة التعبيرات من أعمدة قوائم SELECT إلى زيادة احتمالية مطابقات الذاكرة المخبئية. يمكن أن يجيب عمود بالذاكرة المخبئية له تعبير فقط على استعلام جديد بالتعبير ذاته، ويمكن أن يجيب عمود بالذاكرة المخبئية بلا تعبير على طلب لذلك العمود بأي تعبير. على سبيل المثال، طلب بالذاكرة المخبئية مثل:

    SELECT QUANTITY, REVENUE...
    

    يمكنه أن يجيب عن استعلام جديد مثل:

    SELECT QUANTITY/REVENUE... 
    

    لكن ليس العكس.

  • بلا عبارة WHERE. في حالة عدم وجود عبارة WHERE في نتيجة بالذاكرة المخبئية، يمكن استخدامه للإجابة عن الاستعلامات التي تستوفي قواعد مطابقات الذاكرة المخبئية لقائمة التحديد حيث توجد أي عبارة WHERE التي تتضمن أعمدة في قائمة العرض.

بشكل عام، الاستعلامات الأفضل للإدراج في الذاكرة المخبئية هي الاستعلامات التي تستخدم الكثير من موارد قاعدة البيانات عند المعالجة والتي تزيد احتمالية إعادة إصدارها انتبه كي لا تملأ الذاكرة المخبئية بالاستعلامات البسيطة التي تنتج الكثير من الصفوف. تتطلب هذه الاستعلامات (على سبيل المثال، SELECT * FROM PRODUCTS، حيث يتم تخطيط PRODUCTS مباشرة إلى جدول قاعدة بيانات واحد) معالجة قليلة بقاعدة البيانات. لكنها تشكل حملاً زائدًا على القرص والشبكة وهي عوامل لا تقللها الذاكرة المخبئية.

عندما يقوم Oracle Analytics Cloud بتجديد متغير نموذج دلالي، فهو يفحص نماذج الأعمال لتحديد إذا كانت تشير إلى متغيرات النموذج الدلالي هذه. وإن كانت، فسيقوم Oracle Analytics Cloud بمسح كل الذاكرة المخبئية لنماذج الأعمال هذه. يرجى الاطلاع على كيف تؤثر تغييرات النماذج الدلالية على الذاكرة المخبئية للاستعلام.

استخدام الوكلاء لإدراج الاستعلام في الذاكرة المخبئية

يمكنك تكوين الوكلاء لإدراج استعلام Oracle Analytics Cloud بالذاكرة المخبئية.

يمكن أن يحسن الإدراج في الذاكرة المخبئية أوقات الاستجابة للمستخدمين عند تشغيل التحليلات أو عرض التحليلات المضمنة في لوحات المعلومات الخاصة بهم. يمكنك القيام بهذا من خلال جدولة الوكلاء لتشغيل الطلبات التي تقوم بتجديد هذه البيانات.

  1. في Oracle Analytics Cloud، افتح الصفحة الرئيسية الكلاسيكية، وحدد الوكيل (قسم الإنشاء).
  2. في علامة تبويب عام، حدد المستلم لخيار تشغيل كـ. يستخدم الإدراج المخصص بالذاكرة المخبئية إمكانية رؤية البيانات لكل مستلم لتخصيص محتوى التسليم إلى الوكيل لكل مستلم.
  3. في علامة تبويب الجدولة، حدد ما تريد إدراجه بالذاكرة المخبئية.
  4. اختياري: حدد الشرط وقم بإنشاء طلب شرطي أو تحديده. على سبيل المثال، قد يكون لديك نموذج أعمال يحدد متى تنتهي عملية الاستخراج والتحويل والتحميل. يمكنك استخدام تقرير تبعًا لنموذج الأعمال هذا كي يكون المشغل الشرطي للإدراج في الذاكرة المخبئية للبدء.
  5. في علامة تبويب محتوى التسليم، حدد طلبًا فرديًا أو صفحة لوحة معلومات كاملة تريد الإدراج بالذاكرة المخبئية لها. يمكن أن يوفر تحديد صفحة لوحة المعلومات الوقت.
  6. في علامة تبويب المستلمون، حدد مستخدمين أو مجموعات فردية ليكونوا مستلمين.
  7. في علامة تبويب الوجهات، امسح كل وجهات المستخدم وحدد الذاكرة المخبئية لخادم Oracle Analytics.
  8. احفظ الوكيل من خلال تحديد زر حفظ في الركن الأيمن العلوي.

الفرق الوحيد بين وكلاء الإدراج بالذاكرة المخبئية وغيرهم من الوكلاء هو قيامهم بمسح الذاكرة المخبئية السابقة تلقائيًا ولا يظهرون في لوحات المعلومات كتحذيرات.

ملاحظة:

أما وكلاء الإدراج بالذاكرة المخبئية فيمسحون فقط استعلامات المطابق التامة، كي يمكن أن تظل البيانات الخاملة. تأكد دائمًا من أن تتضمن استراتيجية الذاكرة المخبئية مسح الذاكرة المخبئية، لأن استعلامات الوكيل لا تتعامل مع الاستعلامات المخصصة أو التنقلات.

استخدم Model Administration Tool للتمكن تلقائيًا من حذف الذاكرة المخبئية لجداول بعينها

يؤدي مسح الذاكرة المخبئية إلى حذف الإدخالات من الذاكرة المخبئية للاستعلام والحفاظ على المحتوى جديدًا. يمكنك مسح إدخالات الذاكرة المخبئية لجداول معينة تلقائيًا، عن طريق تعيين حقل وقت استمرار الذاكرة المخبئية لكل جدول في Model Administration Tool.

ملاحظة:

إذا كنت تستخدم Semantic Modeler، فاطلع على ما الخصائص العامة لجدول فعلي؟

ويفيد هذا لمصادر البيانات التي يتم تحديثها كثيرًا. على سبيل المثال، إذا كان لديك جدول يخزن بيانات مؤشر سهم يتم تحديثه كل دقيقة، يمكنك استخدام إعداد وقت استمرار الذاكرة المخبئية لمسح إدخالات هذا الجدول كل 59 ثانية. يرجى الاطلاع على الذاكرة المخبئية ووقت استمرار الذاكرة المخبئية لجداول فعلية محددة.