تحليل باستخدام Apache Spark
في هذا البرنامج التعليمي، سوف تتعلم الخطوات الأساسية لتحميل وتحليل البيانات باستخدام Apache Spark لـ Azure Synapse
إنشاء تجمع Apache Spark بلا خادم
- في Synapse Studio، في الجزء الأيسر، حدد Manage>Apache Spark pools.
- حدد New
- لحقل Apache Spark pool name، أدخل Spark1.
- لحقل Node size، أدخل Small.
- لحقل Number of nodes، قم بتعيين الحد الأدنى إلى 3 والحد الأقصى إلى 3
- حدد «استعراض + إنشاء»>و«إنشاء». سيكون تجمع Apache Spark جاهزاً في غضون ثوان قليلة.
فهم تجمعات Apache Spark بلا خادم
تجمع Spark بدون خادم هو طريقة للإشارة إلى كيفية رغبة المستخدم في العمل مع Spark. عند بدء استخدام تجمع، يتم إنشاء جلسة عمل Spark إذا لزم الأمر. يتحكم التجمع في عدد موارد Spark التي سيتم استخدامها من قبل جلسة العمل هذه والمدة التي ستستمر فيها جلسة العمل قبل أن تتوقف مؤقتاً تلقائياً. تدفع مقابل موارد spark المستخدمة أثناء جلسة العمل هذه وليس للتجمع نفسه. بهذه الطريقة يتيح لك تجمع Spark استخدام Apache Spark دون إدارة المجموعات. يشبه هذا كيفية عمل تجمع SQL بلا خادم.
تحليل بيانات سيارة أجرة مدينة نيويورك مع تجمع Spark
ملاحظة
في استوديو Synapse، انتقل إلى مركز تطوير.
إنشاء دفتر ملاحظات جديد.
إنشاء خلية تعليمات برمجية جديدة ولصق التعليمات البرمجية التالية في تلك الخلية:
%%pyspark df = spark.read.load('abfss://users@contosolake.dfs.core.windows.net/NYCTripSmall.parquet', format='parquet') display(df.limit(10))
قم بتعديل URI التحميل، بحيث يشير إلى نموذج الملف في حساب التخزين الخاص بك وفقا لنظام abfss URI.
في دفتر الملاحظات، في القائمة Attach to، اختر تجمع Spark بلا خادم Spark1 الذي تم إنشاؤه سابقاً.
حدد Run في الخلية. سيبدأ Synapse جلسة عمل Spark جديدة لتشغيل هذه الخلية إذا لزم الأمر. إذا كانت هناك حاجة إلى جلسة Spark جديدة، فستستغرق في البداية حوالي 2 إلى 5 دقائق ليتم إنشاؤها. بمجرد إنشاء جلسة عمل، سيستغرق تنفيذ الخلية حوالي ثانيتين.
إذا كنت تريد فقط عرض مخطط إطار البيانات، قم بتشغيل خلية باستخدام التعليمات البرمجية التالية:
%%pyspark df.printSchema()
تحميل بيانات سيارة أجرة مدينة نيويورك في قاعدة بيانات Spark nyctaxi
تتوفر البيانات عبر إطار البيانات المسمى df. قم بتحميلها في قاعدة بيانات Spark المسماة nyctaxi.
إضافة خلية تعليمات برمجية جديدة إلى دفتر الملاحظات ثم قم بإدخال التعليمات البرمجية التالية:
%%pyspark spark.sql("CREATE DATABASE IF NOT EXISTS nyctaxi") df.write.mode("overwrite").saveAsTable("nyctaxi.trip")
تحليل بيانات سيارة أجرة مدينة نيويورك باستخدام Spark ودفاتر الملاحظات
قم بإنشاء خلية تعليمات برمجية جديدة وإدخال التعليمات البرمجية التالية.
%%pyspark df = spark.sql("SELECT * FROM nyctaxi.trip") display(df)
يمكنك تشغيل الخلية لإظهار بيانات سيارة أجرة مدينة نيويورك التي تم تحميلها في قاعدة بيانات Spark المسماة nyctaxi.
قم بإنشاء خلية تعليمات برمجية جديدة وإدخال التعليمات البرمجية التالية. سنقوم بتحليل هذه البيانات وحفظ النتائج في جدول يسمى nyctaxi.passengercountstats.
%%pyspark df = spark.sql(""" SELECT passenger_count, SUM(trip_distance) as SumTripDistance, AVG(trip_distance) as AvgTripDistance FROM nyctaxi.trip WHERE trip_distance > 0 AND passenger_count > 0 GROUP BY passenger_count ORDER BY passenger_count """) display(df) df.write.saveAsTable("nyctaxi.passengercountstats")
في نتائج الخلية، حدد Chart لعرض البيانات المرئية.