إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
ترشدك هذه المقالة خلال استخدام دفتر ملاحظات Azure Databricks لاستيراد البيانات من ملف CSV يحتوي على بيانات اسم الطفل من health.data.ny.gov إلى وحدة تخزين كتالوج Unity باستخدام Python وSc scala وR. ستتعلم أيضا تعديل اسم عمود، وتصور البيانات، والحفظ في جدول.
المتطلبات
لإكمال المهام في هذه المقالة، يجب أن تفي بالمتطلبات التالية:
- يجب تمكين كتالوج Unity لمساحة العمل الخاصة بك. للحصول على معلومات حول بدء استخدام كتالوج Unity، راجع إعداد كتالوج Unity وإدارته.
- يجب أن يكون لديك الامتياز على
WRITE VOLUMEوحدة تخزين،USE SCHEMAوالامتياز على المخطط الأصل، والامتيازUSE CATALOGعلى الكتالوج الأصل. - يجب أن يكون لديك إذن لاستخدام مورد حساب موجود أو إنشاء مورد حساب جديد. راجع بدء الاستخدام: إعداد الحساب ومساحة العمل أو راجع مسؤول Databricks.
تلميح
للحصول على دفتر ملاحظات مكتمل لهذه المقالة، راجع استيراد دفاتر ملاحظات البيانات وتصورها.
الخطوة 1: إنشاء دفتر ملاحظات جديد
لإنشاء دفتر ملاحظات في مساحة العمل، انقر فوق
جديد في الشريط الجانبي، ثم انقر فوق دفتر الملاحظات. يتم فتح دفتر ملاحظات فارغ في مساحة العمل.
لمعرفة المزيد حول إنشاء دفاتر الملاحظات وإدارتها، راجع إدارة دفاتر الملاحظات.
الخطوة 2: تحديد المتغيرات
في هذه الخطوة، يمكنك تعريف المتغيرات لاستخدامها في مثال دفتر الملاحظات الذي تقوم بإنشائه في هذه المقالة.
انسخ التعليمات البرمجية التالية والصقها في خلية دفتر الملاحظات الفارغة الجديدة. استبدل
<catalog-name>و<schema-name>و<volume-name>بأسماء الكتالوج والمخطط ووحدات التخزين لوحدة تخزين كتالوج Unity. استبدلtable_nameالقيمة اختياريا باسم جدول من اختيارك. ستحفظ بيانات اسم الطفل في هذا الجدول لاحقا في هذه المقالة.اضغط
Shift+Enterلتشغيل الخلية وإنشاء خلية فارغة جديدة.Python
catalog = "<catalog_name>" schema = "<schema_name>" volume = "<volume_name>" download_url = "https://health.data.ny.gov/api/views/jxy9-yhdk/rows.csv" file_name = "baby_names.csv" table_name = "baby_names" path_volume = "/Volumes/" + catalog + "/" + schema + "/" + volume path_table = catalog + "." + schema print(path_table) # Show the complete path print(path_volume) # Show the complete pathScala
val catalog = "<catalog_name>" val schema = "<schema_name>" val volume = "<volume_name>" val downloadUrl = "https://health.data.ny.gov/api/views/jxy9-yhdk/rows.csv" val fileName = "baby_names.csv" val tableName = "baby_names" val pathVolume = s"/Volumes/${catalog}/${schema}/${volume}" val pathTable = s"${catalog}.${schema}" print(pathVolume) // Show the complete path print(pathTable) // Show the complete pathR
catalog <- "<catalog_name>" schema <- "<schema_name>" volume <- "<volume_name>" download_url <- "https://health.data.ny.gov/api/views/jxy9-yhdk/rows.csv" file_name <- "baby_names.csv" table_name <- "baby_names" path_volume <- paste("/Volumes/", catalog, "/", schema, "/", volume, sep = "") path_table <- paste(catalog, ".", schema, sep = "") print(path_volume) # Show the complete path print(path_table) # Show the complete path
الخطوة 3: استيراد ملف CSV
في هذه الخطوة، يمكنك استيراد ملف CSV يحتوي على بيانات اسم الطفل من health.data.ny.gov إلى وحدة تخزين كتالوج Unity.
انسخ التعليمات البرمجية التالية والصقها في خلية دفتر الملاحظات الفارغة الجديدة. تنسخ هذه التعليمة البرمجية
rows.csvالملف من health.data.ny.gov إلى وحدة تخزين كتالوج Unity باستخدام الأمر Databricks dbutuils .اضغط
Shift+Enterلتشغيل الخلية ثم انتقل إلى الخلية التالية.Python
dbutils.fs.cp(f"{download_url}", f"{path_volume}" + "/" + f"{file_name}")Scala
dbutils.fs.cp(downloadUrl, s"${pathVolume}/${fileName}")R
dbutils.fs.cp(download_url, paste(path_volume, "/", file_name, sep = ""))
الخطوة 4: تحميل بيانات CSV في DataFrame
في هذه الخطوة، يمكنك إنشاء DataFrame باسم df من ملف CSV الذي قمت بتحميله مسبقا في وحدة تخزين كتالوج Unity باستخدام أسلوب spark.read.csv .
انسخ التعليمات البرمجية التالية والصقها في خلية دفتر الملاحظات الفارغة الجديدة. تحمل هذه التعليمة البرمجية بيانات اسم الطفل في DataFrame
dfمن ملف CSV.اضغط
Shift+Enterلتشغيل الخلية ثم انتقل إلى الخلية التالية.Python
df = spark.read.csv(f"{path_volume}/{file_name}", header=True, inferSchema=True, sep=",")Scala
val df = spark.read .option("header", "true") .option("inferSchema", "true") .option("delimiter", ",") .csv(s"${pathVolume}/${fileName}")R
# Load the SparkR package that is already preinstalled on the cluster. library(SparkR) df <- read.df(paste(path_volume, "/", file_name, sep=""), source="csv", header = TRUE, inferSchema = TRUE, delimiter = ",")
يمكنك تحميل البيانات من العديد من تنسيقات الملفات المدعومة.
الخطوة 5: تصور البيانات من دفتر الملاحظات
في هذه الخطوة، يمكنك استخدام display() الأسلوب لعرض محتويات DataFrame في جدول في دفتر الملاحظات، ثم تصور البيانات في مخطط سحابي للكلمة في دفتر الملاحظات.
انسخ التعليمات البرمجية التالية والصقها في خلية دفتر الملاحظات الفارغة الجديدة، ثم انقر فوق تشغيل الخلية لعرض البيانات في جدول.
Python
display(df)Scala
display(df)R
display(df)راجع النتائج في الجدول.
إلى جانب علامة التبويب جدول، انقر فوق + مرئيات ثم انقر فوقها.
في محرر المرئيات، انقر فوق نوع المرئيات، وتحقق من تحديد سحابة Word.
في العمود كلمات، تحقق من
First Nameتحديده.في حد الترددات، انقر فوق
35.
انقر فوق حفظ.
الخطوة 6: حفظ DataFrame إلى جدول
هام
لحفظ DataFrame في كتالوج Unity، يجب أن يكون لديك CREATE امتيازات الجدول على الكتالوج والمخطط. للحصول على معلومات حول الأذونات في كتالوج Unity، راجع الامتيازات والكائنات القابلة للتأمين في كتالوج Unity وإدارة الامتيازات في كتالوج Unity.
انسخ التعليمات البرمجية التالية والصقها في خلية دفتر ملاحظات فارغة. تحل هذه التعليمة البرمجية محل مسافة في اسم العمود. الأحرف الخاصة، مثل المسافات غير مسموح بها في أسماء الأعمدة. تستخدم هذه التعليمة البرمجية أسلوب Apache Spark
withColumnRenamed().Python
df = df.withColumnRenamed("First Name", "First_Name") df.printSchemaScala
val dfRenamedColumn = df.withColumnRenamed("First Name", "First_Name") // when modifying a DataFrame in Scala, you must assign it to a new variable dfRenamedColumn.printSchema()R
df <- withColumnRenamed(df, "First Name", "First_Name") printSchema(df)انسخ التعليمات البرمجية التالية والصقها في خلية دفتر ملاحظات فارغة. تحفظ هذه التعليمة البرمجية محتويات DataFrame إلى جدول في كتالوج Unity باستخدام متغير اسم الجدول الذي قمت بتعريفه في بداية هذه المقالة.
Python
df.write.mode("overwrite").saveAsTable(f"{path_table}" + "." + f"{table_name}")Scala
dfRenamedColumn.write.mode("overwrite").saveAsTable(s"${pathTable}.${tableName}")R
saveAsTable(df, paste(path_table, ".", table_name), mode = "overwrite")للتحقق من حفظ الجدول، انقر فوق كتالوج في الشريط الجانبي الأيسر لفتح واجهة مستخدم مستكشف الكتالوج. افتح الكتالوج ثم المخطط للتحقق من ظهور الجدول.
انقر فوق الجدول لعرض مخطط الجدول على علامة التبويب نظرة عامة .
انقر فوق نموذج البيانات لعرض 100 صف من البيانات من الجدول.
استيراد دفاتر ملاحظات البيانات وتصورها
استخدم أحد دفاتر الملاحظات التالية لتنفيذ الخطوات الواردة في هذه المقالة. استبدل <catalog-name>و <schema-name>و <volume-name> بأسماء الكتالوج والمخطط ووحدات التخزين لوحدة تخزين كتالوج Unity. استبدل table_name القيمة اختياريا باسم جدول من اختيارك.
Python
استيراد البيانات من CSV باستخدام Python
Scala
استيراد البيانات من CSV باستخدام Scala
R
استيراد البيانات من CSV باستخدام R
الخطوات التالية
- للتعرف على إضافة بيانات إضافية إلى جدول موجود من ملف CSV، راجع بدء الاستخدام: استيعاب بيانات إضافية وإدراجها.
- للتعرف على تنقية البيانات وتحسينها، راجع البدء: تحسين البيانات وتطهيرها.