Руководство. Создание записной книжки Jupyter в Azure Cosmos DB для NoSQL для анализа и визуализации данных (предварительная версия)

ОБЛАСТЬ ПРИМЕНЕНИЯ: NoSQL

Предупреждение

Функция Jupyter Notebook в Azure Cosmos DB будет прекращена 30 марта 2024 г.; Вы не сможете использовать встроенные записные книжки Jupyter из учетной записи Azure Cosmos DB. Мы рекомендуем использовать поддержку Visual Studio Code для записных книжек Jupyter или предпочитаемого клиента записных книжек.

В этом руководстве описывается, как использовать функцию Jupyter Notebook в Azure Cosmos DB для импорта примеров розничных данных в учетную запись Azure Cosmos DB для NoSQL. Вы увидите, как использовать магические команды Azure Cosmos DB для выполнения запросов, анализа данных и визуализации результатов.

Необходимые компоненты

Создание записной книжки

В этом разделе описано, как создать базу данных Azure Cosmos, контейнер и импортировать данные розничной торговли в контейнер.

  1. Перейдите к учетной записи Azure Cosmos DB и откройте Обозреватель данных.

  2. Щелкните Создать записную книжку.

    Screenshot of the Data Explorer with the 'New Notebook' option highlighted.

  3. В появившемся диалоговом окне подтверждения нажмите кнопку "Создать".

    Примечание.

    Временная рабочая область будет создана, чтобы вы могли работать с Jupyter Notebook. По истечении срока действия сеанса все записные книжки в рабочей области будут удалены.

  4. Выберите ядро, которое вы хотите использовать для записной книжки.

Совет

Теперь, когда была создана новая записная книжка, ее можно переименовать в что-то подобное VisualizeRetailData.ipynb.

Создание базы данных и контейнера с помощью пакета SDK

  1. Начните с ячейки кода по умолчанию.

  2. Импортируйте все пакеты, необходимые для этого руководства.

    import azure.cosmos
    from azure.cosmos.partition_key import PartitionKey
    
  3. Создайте базу данных с именем RetailIngest с помощью встроенного пакета SDK.

    database = cosmos_client.create_database_if_not_exists('RetailIngest')
    
  4. Создайте контейнер с именем WebsiteMetrics с ключом секции /CartID.

    container = database.create_container_if_not_exists(id='WebsiteMetrics', partition_key=PartitionKey(path='/CartID'))
    
  5. Выберите "Выполнить" , чтобы создать базу данных и ресурс контейнера.

    Screenshot of the 'Run' option in the menu.

Импорт данных с помощью магических команд

  1. Добавьте новую ячейку кода.

  2. В ячейке кода добавьте следующую магическую команду для отправки в существующий контейнер данных JSON из этого URL-адреса: https://cosmosnotebooksdata.blob.core.windows.net/notebookdata/websiteData.json

    %%upload --databaseName RetailIngest --containerName WebsiteMetrics --url https://cosmosnotebooksdata.blob.core.windows.net/notebookdata/websiteData.json
    
  3. Выберите "Запустить активную ячейку ", чтобы выполнить команду только в этой конкретной ячейке.

    Screenshot of the 'Run Active Cell' option in the menu.

    Примечание.

    Команда импорта должна занять 5–10 секунд.

  4. Просмотрите выходные данные команды выполнения. Убедитесь, что импортированы 2654 документа.

    Documents successfully uploaded to WebsiteMetrics
    Total number of documents imported:
      Success: 2654
      Failure: 0
    Total time taken : 00:00:04 hours
    Total RUs consumed : 27309.660000001593
    

Визуализация данных

  1. Создайте другую ячейку кода.

  2. В ячейке кода используйте SQL-запрос для заполнения кадра данных Pandas.

    %%sql --database RetailIngest --container WebsiteMetrics --output df_cosmos
    SELECT c.Action, c.Price as ItemRevenue, c.Country, c.Item FROM c
    
  3. Выберите "Запустить активную ячейку ", чтобы выполнить команду только в этой конкретной ячейке.

  4. Создайте другую ячейку кода.

  5. В ячейке кода выводится 10 элементов из кадра данных.

    df_cosmos.head(10)
    
  6. Выберите "Запустить активную ячейку ", чтобы выполнить команду только в этой конкретной ячейке.

  7. Просмотрите выходные данные выполнения команды.

    Действие ItemRevenue Страна/регион Позиция
    0 Куплено £9,99 Македония Кнопка вверх рубашка
    1 Просмотрено 12,00 Папуа — Новая Гвинея Ожерелье
    2 Просмотрено 25,00 Словакия (Словацкая Республика) Кардиган Свитер
    3 Куплено 14.00 Сенегал Шлепанцы
    4 Просмотрено 50.00 Панама Деним Шорты
    5 Просмотрено 14.00 Сенегал Шлепанцы
    6 Добавлено 14.00 Сенегал Шлепанцы
    7 Добавлено 50.00 Панама Деним Шорты
    8 Куплено 33,00 Палестинские территории Красный топ
    9 Просмотрено 30.00 Мальта Зеленый свитер
  8. Создайте другую ячейку кода.

  9. В ячейке кода импортируйте пакет Pandas , чтобы настроить выходные данные кадра данных.

    import pandas as pd
    pd.options.display.html.table_schema = True
    pd.options.display.max_rows = None
    
    df_cosmos.groupby("Item").size()
    
  10. Выберите "Запустить активную ячейку ", чтобы выполнить команду только в этой конкретной ячейке.

  11. В выходных данных выберите параметр "График диаграммы ", чтобы просмотреть другую визуализацию данных.

    Screenshot of the Pandas dataframe visualization for the data as a line chart.

Сохранение записной книжки

  1. В разделе "Записные книжки" откройте контекстное меню для записной книжки, созданной для этого руководства, и выберите "Скачать".

    Screenshot of the notebook context menu with the 'Download' option.

    Совет

    Чтобы окончательно сохранить работу, сохраните записные книжки в репозитории GitHub или скачайте записные книжки на локальный компьютер до окончания сеанса.

Следующие шаги