سؤال

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

هذه هي وجهات النظر البسيطة الميتة التي لديها فقط

SELECT old_column_1 AS new_column_1, old_column_2 AS new_column_2 FROM table_name;

بعض الجداول كبيرة حقا ، مثل 22 مليون صف (2 جيجابايت).جميع الجداول هي MYISAM.أيضا هناك واحد MEMORY الجدول مع 2 مليون الصفوف (~350 ميغابايت)

والسؤال الرئيسي هو كم من النفقات العامة لا أحصل مع هذه الآراء ويفعل ذلك بأي شكل من الأشكال تأثير ROW LOCK أو TABLE LOCK خلال INSERTق أو JOINس?

هل كانت مفيدة؟

المحلول

يمف.المشاهدات أحيانا تفشل في القيام بنفس التحسينات ، مما يؤدي إلى تنفيذ أبطأ من أداء SELECT مباشرة.منذ قضيتك على التوالي إلى الأمام ، وربما سوف تتحمل أي النفقات العامة ملحوظ.

INSERTs من خلال VIEW لديك قيود;يبدو أنك لن تضربهم.اقرأ الدليل.

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

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى dba.stackexchange
scroll top