فهرسة البيانات في Vertipaq: مخزن الصف مقابل مخزن الأعمدة

فهرسة البيانات في Vertipaq: مخزن الصف مقابل مخزن الأعمدة

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

تقوم قواعد البيانات العلائقية بتخزين البيانات على أساس صف بصف. من ناحية أخرى ، يقوم Vertipaq بذلك عمودًا بعد عمود.

دعونا نرى كيف يمكن أن تؤثر هاتان الطريقتان لتخزين البيانات وفهرستها على عملية تطوير التقرير خاصة عند تشغيل استعلاماتك.

جدول المحتويات

فهرسة البيانات لكل صف

يعد تخزين البيانات صفًا تلو الآخر الطريقة التقليدية لتخزين البيانات. ومع ذلك ، تستغرق هذه العملية مزيدًا من الوقت ، مما سيؤثر على أداء استعلامك.

لنفترض أن لدينا جدولًا يحتوي على العلامة التجارية واللون والجن�� والكمية والسعر الصافي.

فهرسة البيانات في Vertipaq: مخزن الصف مقابل مخزن الأعمدة

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

أولاً ، في نفس السطر ، سيتم تخزين رؤوس الأعمدة الموجودة في الصف الأول - العلامة التجارية ، واللون ، والجنس ، والكمية ، والسعر الصافي. ثم ينتقل إلى السطر التالي لتخزين العناصر الأولى تحت كل عمود - A. Datum و Azure و فارغ و 1 و 103.2. يستمر هذا صفا بعد صف.

فهرسة البيانات في Vertipaq: مخزن الصف مقابل مخزن الأعمدة

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

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

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

ربما يمكنك تخيل مدى مملة العملية إذا كنت تقوم بإعداد تقرير LuckyTemplates يستخدم اتصال DirectQuery بمصدر بيانات SQL. في هذه الحالة ، ستقوم خدمات التحليل بتحويل كود DAX إلى لغة SQL ، ثم البدء في تصفح بنية البيانات صفًا تلو الآخر.

فهرسة البيانات لكل عمود

لتجنب العملية الطويلة المتضمنة ، لديك خيار تخزين البيانات على أساس عمود بعمود من خلال Vertipaq عندما تختار وضع الاستيراد.

عند استخدام مخزن الأعمدة بدلاً من مخزن الصفوف ، سيتم تخزين كل من العلامة التجارية واللون والجنس والكمية والسعر الصافي في هياكل بيانات مختلفة.

فهرسة البيانات في Vertipaq: مخزن الصف مقابل مخزن الأعمدة

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

فهرسة البيانات في Vertipaq: مخزن الصف مقابل مخزن الأعمدة

لهذا السبب ، سيتم تنفيذ الاستعلامات بشكل أسرع مقارنة بالقيام بذلك من اليسار إلى اليمين.

مقارنة وقت التنفيذ في استعلامات بسيطة

لمعرفة الفرق الكبير بين مخزن الصفوف ومخزن الأعمدة ، دعنا نجري بعض استعلامات الاختبار في كل من SQL و Vertipaq. يجب أن يخبرنا وقت التنفيذ عن مدى سرعة إحدى العمليات مقارنة بالآخر.

لنبدأ باستعلام بسيط في SQL. سنقوم بحساب مجموع عمود الكمية في جدول المبيعات.

فهرسة البيانات في Vertipaq: مخزن الصف مقابل مخزن الأعمدة

كما ترى ، فإن إجمالي وقت التنفيذ هو 2.2 ثانية.

الآن ، دعنا نذهب إلى DAX Studio ونستخدم وظيفة EVALUATE لتنفيذ نفس الاستعلام. نحتاج إلى تشغيل توقيت الخادم وانتظار اكتمال التتبع.

فهرسة البيانات في Vertipaq: مخزن الصف مقابل مخزن الأعمدة

نحتاج أيضًا إلى التأكد من تحديد الخيار "مسح ذاكرة التخزين المؤقت ثم تشغيل" عند تشغيل الاستعلام.

فهرسة البيانات في Vertipaq: مخزن الصف مقابل مخزن الأعمدة

بمجرد تنفيذ الاستعلام ، ستلاحظ أن الأمر لا يستغرق سوى 3 مللي ثانية لإكمال الاستعلام نفسه الذي أجريناه في SQL سابقًا.

فهرسة البيانات في Vertipaq: مخزن الصف مقابل مخزن الأعمدة

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

فهرسة البيانات في Vertipaq: مخزن الصف مقابل مخزن الأعمدة

يمكنك محاولة تشغيل الاستعلام عدة مرات لمعرفة مدى اتساق وقت التنفيذ.

مقارنة وقت التنفيذ في استعلامات أكثر تعقيدًا

هذه المرة ، دعنا نقارن وقت التنفيذ عندما نجري استعلامات أكثر تعقيدًا.

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

فهرسة البيانات في Vertipaq: مخزن الصف مقابل مخزن الأعمدة

إذا قمنا بتشغيل هذا الرمز ، يمكنك أن ترى أن إجمالي وقت التنفيذ هو 7 مللي ثانية.

فهرسة البيانات في Vertipaq: مخزن الصف مقابل مخزن الأعمدة

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

فهرسة البيانات في Vertipaq: مخزن الصف مقابل مخزن الأعمدة

يقوم الاستعلام الثاني ببساطة باسترداد عمود العلامة التجارية من جدول المنتجات.

فهرسة البيانات في Vertipaq: مخزن الصف مقابل مخزن الأعمدة

إذا انتقلت إلى شاشة النتائج ، يمكنك أن ترى أن مقياس إجمالي الكمية قد تم تقسيمه بناءً على كل علامة تجارية.

فهرسة البيانات في Vertipaq: مخزن الصف مقابل مخزن الأعمدة

الآن دعنا نذهب إلى خادم SQL ونكتب نفس الاستعلام.

سنقوم بدفع جدول DaxStudio Sales إلى السطر التالي ، مع الإشارة إلى جدول المبيعات AS S. بعد ذلك ، سنقوم أيضًا بتنفيذ LEFT JOIN في جدول منتجات DaxStudio المشار إليه بـ AS P ، مع وجود مفتاح المنتج S. مفتاح المنتج P. سنستخدم أيضًا علامة P مع مجموع الكمية والكمية الإجمالية في عبارة SELECT . أخيرًا ، سنستخدم لـ P.brand.

فهرسة البيانات في Vertipaq: مخزن الصف مقابل مخزن الأعمدة

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

فهرسة البيانات في Vertipaq: مخزن الصف مقابل مخزن الأعمدة

بالنسبة إلى إجمالي وقت التنفيذ ، فإنه يظل أبطأ بكثير عند 2.5 ثانية.

فهرسة البيانات في Vertipaq: مخزن الصف مقابل مخزن الأعمدة


DAX لـ LuckyTemplates: تحسين استخدام محركات الصيغة في
تقنيات تحسين استعلام DAX Studio DAX والدروس
أداء الاستعلام وإعداد استوديو DAX

خاتمة

من الواضح مدى سرعة تخزين العمود من خلال Vertipaq حقًا مقارنة بمتجر الصفوف في قاعدة بيانات SQL. يوضح هذا أهمية التعرف حقًا على الطريقة التي تعمل بها فهرسة البيانات من خلال الأنظمة الأساسية المختلفة.

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


ما هي الذات في بايثون: أمثلة من العالم الحقيقي

ما هي الذات في بايثون: أمثلة من العالم الحقيقي

ما هي الذات في بايثون: أمثلة من العالم الحقيقي

كيفية حفظ وتحميل ملف RDS في R.

كيفية حفظ وتحميل ملف RDS في R.

ستتعلم كيفية حفظ وتحميل الكائنات من ملف .rds في R. ستغطي هذه المدونة أيضًا كيفية استيراد الكائنات من R إلى LuckyTemplates.

تمت إعادة النظر في أول N أيام عمل - حل لغة ترميز DAX

تمت إعادة النظر في أول N أيام عمل - حل لغة ترميز DAX

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

اعرض الرؤى باستخدام تقنية المرئيات الديناميكية المتعددة الخيوط في LuckyTemplates

اعرض الرؤى باستخدام تقنية المرئيات الديناميكية المتعددة الخيوط في LuckyTemplates

سيغطي هذا البرنامج التعليمي كيفية استخدام تقنية Multi Threaded Dynamic Visuals لإنشاء رؤى من تصورات البيانات الديناميكية في تقاريرك.

مقدمة لتصفية السياق في LuckyTemplates

مقدمة لتصفية السياق في LuckyTemplates

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

أفضل النصائح في استخدام التطبيقات في خدمة LuckyTemplates عبر الإنترنت

أفضل النصائح في استخدام التطبيقات في خدمة LuckyTemplates عبر الإنترنت

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

تحليل تغييرات هامش الربح بمرور الوقت - التحليلات باستخدام LuckyTemplates و DAX

تحليل تغييرات هامش الربح بمرور الوقت - التحليلات باستخدام LuckyTemplates و DAX

تعرف على كيفية إجراء تغييرات في هامش الربح باستخدام تقنيات مثل قياس التفرع والجمع بين صيغ DAX في LuckyTemplates.

أفكار التجسيد لذاكرة التخزين المؤقت للبيانات في DAX Studio

أفكار التجسيد لذاكرة التخزين المؤقت للبيانات في DAX Studio

سيناقش هذا البرنامج التعليمي أفكار تجسيد مخازن البيانات وكيفية تأثيرها على أداء DAX ​​في توفير النتائج.

إعداد تقارير الأعمال باستخدام LuckyTemplates

إعداد تقارير الأعمال باستخدام LuckyTemplates

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

ما هي بوابة LuckyTemplates؟ كل شيئ ترغب بمعرفته

ما هي بوابة LuckyTemplates؟ كل شيئ ترغب بمعرفته

ما هي بوابة LuckyTemplates؟ كل شيئ ترغب بمعرفته