البرنامج التعليمي: إنشاء دفتر ملاحظات Jupyter لتحليل البيانات في حساب Azure Cosmos DB ل NoSQL باستخدام دفاتر ملاحظات Visual Studio Code Jupyter

ينطبق على: NoSQL

يتعرف هذا البرنامج التعليمي على كيفية استخدام دفاتر ملاحظات Jupyter لتعليمة Visual Studio البرمجية للتفاعل مع حساب Azure Cosmos DB ل NoSQL. سترى كيفية الاتصال بحسابك واستيراد البيانات وتشغيل الاستعلامات.

المتطلبات الأساسية

قم بإنشاء دفتر ملاحظات جديد

في هذا القسم، ستقوم بإنشاء قاعدة بيانات Azure Cosmos وحاوية واستيراد بيانات البيع بالتجزئة إلى الحاوية.

  1. فتح Visual Studio Code.
  2. قم بتشغيل الأمر Create: New Jupyter Notebook من لوحة الأوامر (Ctrl+Shift+P) أو قم بإنشاء ملف .ipynb جديد في مساحة العمل الخاصة بك.

تلميح

الآن بعد إنشاء دفتر الملاحظات الجديد، يمكنك حفظه وتسميه شيئا مثل AnalyzeRetailData.ipynb.

إنشاء قاعدة بيانات وحاوية باستخدام SDK

  1. ابدأ في خلية التعليمات البرمجية الافتراضية.

  2. تثبيت حزمة Azure.cosmos. قم بتشغيل هذه الخلية قبل المتابعة.

    %pip install azure.cosmos
    
  3. قم باستيراد أي حزم تحتاجها لهذا البرنامج التعليمي.

    import azure.cosmos
    from azure.cosmos.partition_key import PartitionKey
    from azure.cosmos import CosmosClient
    
  4. إنشاء مثيل جديد من CosmosClient.

    endpoint = "<FILL ME>"
    key = "<FILL ME>"
    cosmos_client = CosmosClient(url=endpoint, credential=key)
    
  5. إنشاء قاعدة بيانات باسم RetailIngest باستخدام SDK المضمنة.

    database = cosmos_client.create_database_if_not_exists('RetailIngest')
    
  6. قم بإنشاء حاوية باسم WebsiteMetrics باستخدام مفتاح قسم ل /CartID.

    container = database.create_container_if_not_exists(id='WebsiteMetrics', partition_key=PartitionKey(path='/CartID'))
    
  7. حدد Run لإنشاء قاعدة البيانات ومورد الحاوية.

    لقطة شاشة لخلية Execute في دفتر ملاحظات Visual Studio Code Jupyter.

استيراد البيانات إلى الحاوية

  1. إضافة خلية تعليمات برمجية جديدة

  2. ضمن خلية التعليمات البرمجية، أضف التعليمات البرمجية التالية لتحميل البيانات من عنوان url هذا: <https://cosmosnotebooksdata.blob.core.windows.net/notebookdata/websiteData.json>.

        import urllib.request
        import json
    
        with urllib.request.urlopen("https://cosmosnotebooksdata.blob.core.windows.net/notebookdata/websiteData.json") as url:
            docs = json.loads(url.read().decode())
    
        for doc in docs:
            container.upsert_item(doc)
    
  3. قم بتشغيل الخلية. سيستغرق هذا 45 ثانية إلى دقيقة واحدة للتشغيل.

تحليل بياناتك

  1. إنشاء خلية تعليمات برمجية جديدة أخرى.

  2. في خلية التعليمات البرمجية، استخدم استعلام SQL لتعبئة Pandas DataFrame. قم بتشغيل هذه الخلية.

    import pandas as pd
    from pandas import DataFrame
    
    QUERY = "SELECT c.Action, c.Price as ItemRevenue, c.Country, c.Item FROM c"
    results = container.query_items(
        query=QUERY, enable_cross_partition_query=True
    )
    
    df_cosmos = pd.DataFrame(results)
    
  3. إنشاء خلية تعليمات برمجية جديدة أخرى.

  4. في خلية التعليمات البرمجية، قم إخراج أهم 10 عناصر من إطار البيانات. قم بتشغيل هذه الخلية.

    df_cosmos.head(10)
    
  5. لاحظ إخراج تشغيل الأمر.

    الإجراء إعادة ترتيب العناصر الدولة العنصر
    0 المشترى 19.99 مقدونيا الشمالية قميص ذو زر لأعلى
    1 معروض 12.00 بابوا غينيا الجديدة قلادة
    2 معروض 25.00 سلوفاكيا (جمهورية سلوفاكيا) سترة كارديغان
    3 المشترى 14.00 السنغال Flip Flop Shoes
    4 معروض 50.00 بنما السراويل الدنيم
    5 معروض 14.00 السنغال Flip Flop Shoes
    6 Added 14.00 السنغال Flip Flop Shoes
    7 Added 50.00 بنما السراويل الدنيم
    8 المشترى 33.00 الفلسطينيه أعلى أحمر
    9 معروض 30.00 مالطا سترة خضراء
  6. إنشاء خلية تعليمات برمجية جديدة أخرى.

  7. في خلية التعليمات البرمجية، قم باستيراد حزمة pandas لتخصيص إخراج إطار البيانات. قم بتشغيل هذه الخلية.

    import pandas as pd    
    df_cosmos.groupby("Item").size().reset_index()
    
  8. لاحظ إخراج تشغيل الأمر.

    العنصر اختبار
    0 Flip Flop Shoes 66
    1 قلادة 55
    2 أحذية رياضية 111
    ... ... ...
    45 سترة مكسرة الرياح 56

الخطوات التالية