استعلام الطاقة

واجهة مستخدم Power Query، كما هو موضح في تجربة Power Query Online.

Power Query هي أداة ETL طورتها مايكروسوفت لاستخراج البيانات وتحميلها وتحويلها ، وتُستخدم لاسترجاع البيانات من مصادرها ومعالجتها وتحميلها إلى نظام أو أكثر من الأنظمة المستهدفة. تتوفر Power Query بأشكال متعددة ضمن منصة مايكروسوفت باور ، وتُستخدم في ذكاء الأعمال على منصات الخدمة الذاتية الكاملة أو الجزئية. وهي موجودة في برامج مثل Excel و Power BI و Analysis Services و Dataverse [ 1 ] و Power Apps و Azure Data Factory و SSIS و Dynamics 365 ، وفي خدمات سحابية مثل Microsoft Dataflow [ 2 ] ، بما في ذلك Power BI Dataflow المستخدم مع خدمة Power BI عبر الإنترنت، أو الإصدار الأكثر عمومية من Microsoft Dataflow المستخدم مع Power Automate .

ترتبط عملية ETL ارتباطًا وثيقًا بنمذجة البيانات ، [ 3 ] وبالنسبة للتحويل، يمكن استخدام Power Query لتطوير نموذج بيانات منطقي في الحالات التي لا تحتوي فيها البيانات على نموذج بالفعل، أو عندما تكون هناك حاجة إلى تطوير نموذج البيانات بشكل أكبر .

تاريخ

أُعلن عن Power Query لأول مرة عام 2011 تحت الاسم الرمزي "Data Explorer" كجزء من Azure SQL Labs. وفي عام 2013، بهدف توسيع إمكانيات ذكاء الأعمال ذاتية الخدمة في Microsoft Excel، أُعيد تصميم المشروع ليُقدّم كإضافة لبرنامج Excel، وأُعيد تسميته إلى "Data Explorer Preview for Excel" [ 4 ] ، وأُتيح لإصداري Excel 2010 وExcel 2013 [ 5 ]. وفي يوليو 2013، أُزيلت الإضافة من مرحلة المعاينة وأُعيد تسميتها إلى "Power Query" [ 6 ] [ 7 ] . واستمر إصدار تحديثات شهرية للإضافة حتى عام 2016، حين أُدمجت Power Query في Excel بشكل أساسي. وفي Excel 2016، أُعيد تسمية الوظيفة إلى "Get & Transform" [ 8 ] لفترة وجيزة، ثم أُعيدت تسميتها لاحقًا إلى Power Query.

في أبريل 2017، أُتيحت خدمة Power Query ضمن خدمات تحليل Microsoft . ومع إطلاق خدمة البيانات المشتركة في مارس 2018، أُدرجت Power Query كأداة استيراد البيانات الرئيسية فيها.

لغة الصيغ M

تعتمد Power Query على لغة استعلام جديدة آنذاك تُسمى M. وهي لغة دمج (ومن هنا جاء الحرف M) مصممة لإنشاء استعلامات تجمع بين البيانات. وهي تشبه لغة البرمجة F# ، ووفقًا لمايكروسوفت، فهي "لغة وظيفية نقية في معظمها، ذات ترتيب عالٍ، وكتابة ديناميكية، وجزئية كسولة". لغة M حساسة لحالة الأحرف.

يمكن إجراء معظم تفاعل المستخدم مع Power Query عبر واجهات المستخدم الرسومية باستخدام المعالجات ، ويمكن استخدام ذلك للعديد من المهام الشائعة أو الأساسية. كما يُمكن استخدام وضع التحرير المتقدم حيث يستطيع المطور الكتابة بلغة صيغ M؛ مما يمنحه قدرة تعبيرية أكبر، وإمكانيات أوسع، كما يُمكن استخدامه لتعديل الكود الذي تُنشئه المعالجات الرسومية.

ليكن التعبير

تُكتب استعلامات المستخدم عادةً باستخدام تعبير let رئيسي . يحتوي تعبير let على قائمة من روابط المراجع المسماة (المتغيرات) مفصولة بفواصل، بالإضافة إلى تعبير in الذي يُقيّمه تعبير let . يمكن لتعبير in الإشارة إلى المتغيرات، ويمكن للمتغيرات بدورها الإشارة إلى بعضها البعض. يُسمح بالإشارة إلى المتغيرات من الأمام والخلف، كما يُسمح بالإشارة الذاتية عن طريق إضافة الرمز @ قبل اسم المتغير. تُقيّم المتغيرات بشكل متكرر حسب الحاجة لتقييم تعبير in ، ولا يُقيّم أي متغير أكثر من مرة.

أمثلة

ليكن a = "Hello" ، و b = "World" ، و result = a & " " & b in result
ليكن result = Fib ( 5 وFib = ( iteration ) => إذا كان iteration = 0 أو iteration = 1 ، فإن 1 ، وإلا فليكن a = @Fib ( iteration - 1 وb = @Fib ( iteration - 2 ) في a + b في result

التأكيدات وأنواع البيانات

لا تُحدد أنواع المتغيرات في Power Query. بدلاً من ذلك، يمكن أن يحتوي التعبير على تأكيد نوع يُقيّم إلى خطأ عندما لا يُقيّم التعبير إلى قيمة متوافقة مع التأكيد. يمكن أن تسبق التأكيدات كلمة nullable لتضمين القيمة null ضمن القيم المسموح بها.

أنواع البيانات/التأكيدات
اسموصفنوع البياناتالتأكيد
رقمتأكيد للأعداد الصحيحة والأعداد العشريةلانعم
عدد صحيحعدد صحيح موقع 32 بتنعملا
طويلعدد صحيح موقع 64 بتنعملا
مزدوجمعيار IEEE 754 للعوامةنعملا
عشريعدد عشري ذو 128 بت. وهو نفس عدد عشري في لغة C#.نعملا
وقتوقت اليومنعمنعم
تاريختاريخ تقويمي يتراوح من 1 م إلى 9999 م في التقويم الجورجينعمنعم
التاريخ والوقتمجموعة من أنواع بيانات التاريخ والوقتنعمنعم
مدةقياس الوقت المنقضي (قد يكون سالباً)نعمنعم
منطقييمثل قيمة منطقية صحيحة أو خاطئةنعمنعم
نصسلسلة يونيكودنعمنعم
المعرفمعرّف فريد عالميًا (يتم تحويله إلى نص تلقائيًا عند الحاجة)نعملا
قائمةقائمة مرتبة من القيمنعمنعم
سِجِلّخريطة مرتبة من النص إلى أي قيمةنعمنعم
طاولةمصفوفة ثنائية الأبعاد حيث يحتوي كل عمود على اسم ونوع فريدين (لم يتم التحقق من النوع في محتويات الجدول)نعمنعم
وظيفةوظيفة الاستعلام القوينعمنعم
يكتبيمثل نوع بيانات وقد يحتوي على معلومات تأكيدنعمنعم
فعلنوع بيانات مستخدم داخليًانعمنعم
باطلالكائن الوحيد الفارغنعمنعم
أييمثل جميع القيملانعم
أينون نوليمثل جميع القيم باستثناء القيمة الفارغة (null).لانعم
لا أحدلا يمثل أي قيم، ويفشل دائمًا كتأكيد.لانعم
خطأقيمة زائفة تمثل خطأًلالا

تعليقات

يدعم Power Query التعليقات من نوع C block ( /* ... */ ) و C line ( // ... ).

الاستعلام المباشر

في برنامج Power BI، يُعدّ استخدام لغة M-code محدودًا نوعًا ما في DirectQuery، على عكس الاستيراد الذي يتمتع بكافة الإمكانيات. ويعود ذلك إلى ضرورة ترجمة لغة M-code في DirectQuery من DAX إلى SQL، ثم إلى لغة الاستعلام الأصلية لمصدر البيانات (إن لم تكن SQL) عند تفاعل المستخدم مع البيانات.

طي الاستعلام

تُتيح ميزة طي الاستعلامات تحويل خطوات Power Query إلى استعلام واحد في مصدر البيانات (على سبيل المثال، في لغة Transact SQL). وبذلك، تعمل هذه الميزة كعملية ETL تقليدية، وتُمكّن من معالجة البيانات قبل تحميلها. مع ذلك، لا تُدعم هذه الميزة دائمًا. فبينما تُدعم خطوات مثل التصفية، واختيار الأعمدة، والعمليات الحسابية البسيطة في SQL، لا تُدعم خطوات مثل إنشاء الفهرس، أو إلحاق أو دمج مصادر غير قابلة للطي مع مصادر قابلة للطي. قد تُشير مؤشرات الطي (مثل: قابل للطي، غير قابل للطي، قابل للطي، غير شفاف، غير معروف) إلى الخطوة التي قد يُطوى عندها الاستعلام. أما الاستعلامات غير القابلة للطي، فيجب تنفيذها على جانب العميل. ويُمكن لترتيب الاستعلامات تحديد عدد الخطوات التي يتم طيها.

الموصلات

الموصل في Power Query عبارة عن مكتبة تُمكّن الاستعلامات من الاتصال بمصدر بيانات. يستطيع مستخدمو Power BI كتابة موصلات مخصصة بلغة Power Query. إذا كان المستخدم مالكًا/مسؤولًا عن صيانة تقنية مصدر البيانات، فيمكنه طلب اعتماد موصله من Microsoft وإدراجه في الإصدارات المستقبلية من Power BI بعد مراجعة الكود. أما الموصلات غير المعتمدة، فيمكن مشاركتها مع الآخرين الذين يُفعّلون وضع المطور في Power BI، أو مع مسؤولي نطاق Power BI Online.

انظر أيضاً

مراجع

  1. دوغ كلوبنستين. "وثائق باور كويري - باور كويري" . تم الاطلاع عليه بتاريخ 27-10-2022 .
  2. ptyx507x. "ما هو Power Query؟ - Power Query" . تم الاطلاع عليه بتاريخ 27-10-2022 .{{cite web}}: صيانة CS1: الأسماء الرقمية: قائمة المؤلفين ( رابط )
  3. ديرمر، آبي. "لماذا يُعدّ نمذجة بيانات ETL أمرًا بالغ الأهمية في عام 2021" . تم الاطلاع عليه بتاريخ 27-10-2022 .
  4. رافيف، جيل (2019). جمع البيانات ودمجها وتحويلها باستخدام Power Query في Excel وPower BI . الولايات المتحدة: نُشر بإذن من شركة مايكروسوفت بواسطة Pearson Education, Inc. رقم ISBN 978-1-5093-0795-1. OCLC 1006311144 . 
  5. ويب، كريس (27 فبراير 2013). "معاينة عامة لمستكشف البيانات" . مدونة كريس ويب لذكاء الأعمال . تم الاطلاع عليه بتاريخ 27 يناير 2025 .
  6. kexugit (2013-07-06). "أصبح "مستكشف البيانات" الآن "Microsoft Power Query for Excel" . learn.microsoft.com . تاريخ الاطلاع: 15 مايو 2024 .
  7. جاكسون، جواب (2013-07-08). "مايكروسوفت تضيف أدوات ذكاء الأعمال إلى أوفيس 365" . بي سي وورلد . تم الاطلاع عليه بتاريخ 27-01-2025 .
  8. "دمج تقنية Power Query في Excel 2016" . مدونة Microsoft 365. 10 سبتمبر 2015. تاريخ الاطلاع: 17 مايو 2024 .