빠른 시작: Azure Portal을 사용하여 Azure Databricks에서 Spark 작업 실행Quickstart: Run a Spark job on Azure Databricks using the Azure portal

이 빠른 시작에서는 Azure Portal을 사용하여 Apache Spark 클러스터가 있는 Azure Databricks 작업 영역을 만듭니다.In this quickstart, you use the Azure portal to create an Azure Databricks workspace with an Apache Spark cluster. 클러스터에서 작업을 실행하고 사용자 지정 차트를 사용하여 보스턴 안전 데이터로 실시간 보고서를 작성합니다.You run a job on the cluster and use custom charts to produce real-time reports from Boston safety data.

필수 조건Prerequisites

Azure Portal에 로그인Sign in to the Azure portal

Azure Portal에 로그인합니다.Sign in to the Azure portal.

참고

이 자습서는 Azure 평가판 구독을 사용하여 수행할 수 없습니다.This tutorial cannot be carried out using Azure Free Trial Subscription. 무료 계정이 있는 경우 프로필로 이동하고 구독을 종량제로 변경합니다.If you have a free account, go to your profile and change your subscription to pay-as-you-go. 자세한 내용은 Azure 체험 계정을 참조하세요.For more information, see Azure free account. 그런 다음 지출 한도를 제거하고 해당 지역의 vCPU에 대한 할당량 증가를 요청합니다.Then, remove the spending limit, and request a quota increase for vCPUs in your region. Azure Databricks 작업 영역을 만드는 경우 평가판(프리미엄-14일 무료 DBU) 가격 책정 계층을 선택하여 14일간 무료 프리미엄 Azure Databricks DBU를 위한 작업 영역 액세스 권한을 부여할 수 있습니다.When you create your Azure Databricks workspace, you can select the Trial (Premium - 14-Days Free DBUs) pricing tier to give the workspace access to free Premium Azure Databricks DBUs for 14 days.

Azure Databricks 작업 영역 만들기Create an Azure Databricks workspace

이 섹션에서는 Azure Portal을 사용하여 Azure Databricks 작업 영역을 만듭니다.In this section, you create an Azure Databricks workspace using the Azure portal.

  1. Azure Portal에서 리소스 만들기 > 분석 > Azure Databricks를 차례로 선택합니다.In the Azure portal, select Create a resource > Analytics > Azure Databricks.

    Azure Portal의 DatabricksDatabricks on Azure portal

  2. Azure Databricks 서비스 아래에서 Databricks 작업 영역을 만들기 위한 값을 제공합니다.Under Azure Databricks Service, provide the values to create a Databricks workspace.

    Azure Databricks 작업 영역 만들기Create an Azure Databricks workspace

    다음 값을 제공합니다.Provide the following values:

    자산Property 설명Description
    작업 영역 이름Workspace name Databricks 작업 영역의 이름을 제공합니다.Provide a name for your Databricks workspace
    구독Subscription 드롭다운에서 Azure 구독을 선택합니다.From the drop-down, select your Azure subscription.
    리소스 그룹Resource group 새 리소스 그룹을 만들지, 아니면 기존 그룹을 사용할지 여부를 지정합니다.Specify whether you want to create a new resource group or use an existing one. 리소스 그룹은 Azure 솔루션에 관련된 리소스를 보유하는 컨테이너입니다.A resource group is a container that holds related resources for an Azure solution. 자세한 내용은 Azure Resource Manager 개요를 참조하세요.For more information, see Azure Resource Group overview.
    위치Location 미국 서부 2를 선택합니다.Select West US 2. 사용 가능한 다른 영역은 지역별 사용 가능한 Azure 서비스를 참조하세요.For other available regions, see Azure services available by region.
    가격 책정 계층Pricing Tier 표준, 프리미엄 또는 평가판 중에서 선택합니다.Choose between Standard, Premium, or Trial. 이러한 계층에 대한 자세한 내용은 Databricks 가격 페이지를 참조하세요.For more information on these tiers, see Databricks pricing page.
    Virtual NetworkVirtual Network 사용자 고유의 VNet(Virtual Network)에 Azure Databricks 작업 영역을 배포하도록 선택합니다.Choose to deploy an Azure Databricks workspace in your own Virtual Network (VNet). 자세한 내용은 Azure Virtual Network(VNet 삽입)에서 Azure Databricks 배포를 참조하세요.For more information, see Deploy Azure Databricks in your Azure Virtual Network (VNet Injection).

    만들기를 선택합니다.Select Create.

  3. 작업 영역 생성에는 몇 분 정도가 소요됩니다.The workspace creation takes a few minutes. 작업 영역을 만드는 동안 알림에서 배포 상태를 볼 수 있습니다.During workspace creation, you can view the deployment status in Notifications.

    Databricks 배포 타일Databricks deployment tile

Databricks에서 Spark 클러스터 만들기Create a Spark cluster in Databricks

참고

무료 계정을 사용하여 Azure Databricks 클러스터를 만들려면 클러스터를 만들기 전에 프로필로 이동하고 구독을 종량제로 변경합니다.To use a free account to create the Azure Databricks cluster, before creating the cluster, go to your profile and change your subscription to pay-as-you-go. 자세한 내용은 Azure 체험 계정을 참조하세요.For more information, see Azure free account.

  1. Azure Portal에서 사용자가 만든 Databricks 작업 영역으로 이동한 다음, 작업 영역 시작을 클릭합니다.In the Azure portal, go to the Databricks workspace that you created, and then click Launch Workspace.

  2. Azure Databricks 포털로 리디렉션됩니다.You are redirected to the Azure Databricks portal. 포털에서 새 클러스터를 클릭합니다.From the portal, click New Cluster.

    Azure의 DatabricksDatabricks on Azure

  3. 새 클러스터 페이지에서 값을 제공하여 클러스터를 만듭니다.In the New cluster page, provide the values to create a cluster.

    Azure에서 Databricks Spark 클러스터 만들기Create Databricks Spark cluster on Azure

    다음 항목 이외의 다른 모든 기본값을 허용합니다.Accept all other default values other than the following:

    • 클러스터의 이름을 입력합니다.Enter a name for the cluster.

    • 이 문서에서는 5.3 런타임을 사용하여 클러스터를 만듭니다.For this article, create a cluster with 5.3 runtime.

    • 비활성 __분 후 종료 확인란을 선택했는지 확인합니다.Make sure you select the Terminate after __ minutes of inactivity checkbox. 클러스터를 사용하지 않는 경우 클러스터를 종료하는 기간(분)을 제공합니다.Provide a duration (in minutes) to terminate the cluster, if the cluster is not being used.

      클러스터 만들기를 선택합니다.Select Create cluster. 클러스터가 실행되면 노트북을 클러스터에 첨부하고 Spark 작업을 실행할 수 있습니다.Once the cluster is running, you can attach notebooks to the cluster and run Spark jobs.

클러스터를 만드는 방법에 대한 자세한 내용은 Azure Databricks에서 Spark 클러스터 만들기를 참조하세요.For more information on creating clusters, see Create a Spark cluster in Azure Databricks.

Spark SQL 작업 실행Run a Spark SQL job

다음 작업을 수행하여 Databricks에서 Notebook을 만들고, Azure Open Datasets에서 데이터를 읽도록 Notebook을 구성한 다음, 해당 데이터에 대해 Spark SQL 작업을 실행합니다.Perform the following tasks to create a notebook in Databricks, configure the notebook to read data from an Azure Open Datasets, and then run a Spark SQL job on the data.

  1. 왼쪽 창에서 Azure Databricks를 선택합니다.In the left pane, select Azure Databricks. 일반 작업에서 새 Notebook을 선택합니다.From the Common Tasks, select New Notebook.

    Databricks에서 Notebook 만들기Create notebook in Databricks

  2. Notebook 만들기 대화 상자에서 이름을 입력하고 언어로 Python을 선택한 다음, 이전에 만든 Spark 클러스터를 선택합니다.In the Create Notebook dialog box, enter a name, select Python as the language, and select the Spark cluster that you created earlier.

    Databricks에서 Notebook 만들기Create notebook in Databricks

    만들기를 선택합니다.Select Create.

  3. 이 단계에서는 Azure Open Datasets의 Boston 안전 데이터를 사용하여 Spark DataFrame을 만들고 SQL을 사용하여 데이터를 쿼리합니다.In this step, create a Spark DataFrame with Boston Safety Data from Azure Open Datasets, and use SQL to query the data.

    다음 명령은 Azure Storage 액세스 정보를 설정합니다.The following command sets the Azure storage access information. 이 PySpark 코드를 첫 번째 셀에 붙여넣고 Shift+Enter를 사용하여 해당 코드를 실행합니다.Paste this PySpark code into the first cell and use Shift+Enter to run the code.

    blob_account_name = "azureopendatastorage"
    blob_container_name = "citydatacontainer"
    blob_relative_path = "Safety/Release/city=Boston"
    blob_sas_token = r"?st=2019-02-26T02%3A34%3A32Z&se=2119-02-27T02%3A34%3A00Z&sp=rl&sv=2018-03-28&sr=c&sig=XlJVWA7fMXCSxCKqJm8psMOh0W4h7cSYO28coRqF2fs%3D"
    

    다음 명령은 Spark가 BLOB 스토리지에서 원격으로 읽을 수 있도록 합니다.The following command allows Spark to read from Blob storage remotely. 이 PySpark 코드를 다음 셀에 붙여넣고 Shift+Enter를 사용하여 해당 코드를 실행합니다.Paste this PySpark code into the next cell and use Shift+Enter to run the code.

    wasbs_path = 'wasbs://%s@%s.blob.core.windows.net/%s' % (blob_container_name, blob_account_name, blob_relative_path)
    spark.conf.set('fs.azure.sas.%s.%s.blob.core.windows.net' % (blob_container_name, blob_account_name), blob_sas_token)
    print('Remote blob path: ' + wasbs_path)
    

    다음 명령은 DataFrame을 만듭니다.The following command creates a DataFrame. 이 PySpark 코드를 다음 셀에 붙여넣고 Shift+Enter를 사용하여 해당 코드를 실행합니다.Paste this PySpark code into the next cell and use Shift+Enter to run the code.

    df = spark.read.parquet(wasbs_path)
    print('Register the DataFrame as a SQL temporary view: source')
    df.createOrReplaceTempView('source')
    
  4. 원본이라는 임시 보기에서 데이터의 위쪽 10행을 반환하는 SQL 명령문을 실행합니다.Run a SQL statement return the top 10 rows of data from the temporary view called source. 이 PySpark 코드를 다음 셀에 붙여넣고 Shift+Enter를 사용하여 해당 코드를 실행합니다.Paste this PySpark code into the next cell and use Shift+Enter to run the code.

    print('Displaying top 10 rows: ')
    display(spark.sql('SELECT * FROM source LIMIT 10'))
    
  5. 다음 스크린샷과 같이 테이블 형식으로 출력됩니다(일부 열만 표시됨).You see a tabular output like shown in the following screenshot (only some columns are shown):

    샘플 데이터Sample data

  6. 이제 다른 원본 대신에 시민 연결 앱 및 도시 근로자 앱을 사용하여 보고되는 안전 이벤트 수를 표시하는 데이터의 시각적 표시를 만듭니다.You now create a visual representation of this data to show how many safety events are reported using the Citizens Connect App and City Worker App instead of other sources. 테이블 형식 출력의 아래쪽에서 가로 막대형 차트 아이콘을 선택한 다음, 출력 옵션을 클릭합니다.From the bottom of the tabular output, select the Bar chart icon, and then click Plot Options.

    가로 막대형 차트 만들기Create bar chart

  7. 사용자 지정 플롯에서 스크린샷에 표시된 것과 같이 값을 끌어서 놓습니다.In Customize Plot, drag-and-drop values as shown in the screenshot.

    원형 차트 사용자 지정Customize pie chart

    • 원본으로 설정합니다.Set Keys to source.

    • <\id> 로 설정합니다.Set Values to <\id>.

    • 집계COUNT로 설정합니다.Set Aggregation to COUNT.

    • 표시 형식파이차트로 설정합니다.Set Display type to Pie chart.

      적용을 클릭합니다.Click Apply.

리소스 정리Clean up resources

이 문서가 완료되면 클러스터를 종료할 수 있습니다.After you have finished the article, you can terminate the cluster. 이렇게 하려면 왼쪽 창의 Azure Databricks 작업 영역에서 클러스터를 선택합니다.To do so, from the Azure Databricks workspace, from the left pane, select Clusters. 종료하려는 클러스터에서 작업 열 아래의 줄임표 위로 커서를 이동한 다음, 종료 아이콘을 선택합니다.For the cluster you want to terminate, move the cursor over the ellipsis under Actions column, and select the Terminate icon.

Databricks 클러스터 중지Stop a Databricks cluster

클러스터를 수동으로 종료하지 않은 경우 클러스터를 만드는 중에 비활성 __분 후 종료 확인란을 선택하면 자동으로 중지됩니다.If you do not manually terminate the cluster it will automatically stop, provided you selected the Terminate after __ minutes of inactivity checkbox while creating the cluster. 이 경우 지정한 시간 동안 클러스터가 비활성 상태이면 클러스터가 자동으로 중지됩니다.In such a case, the cluster automatically stops, if it has been inactive for the specified time.

다음 단계Next steps

이 문서에서는 Azure Databricks에서 Spark 클러스터를 만들고 Azure Open Datasets의 데이터를 사용하여 Spark 작업을 실행했습니다.In this article, you created a Spark cluster in Azure Databricks and ran a Spark job using data from Azure Open Datasets. 또한 Spark 데이터 소스를 보고 다른 데이터 소스의 데이터를 Azure Databricks로 가져오는 방법을 배울 수 있습니다.You can also look at Spark data sources to learn how to import data from other data sources into Azure Databricks. Azure Databricks를 사용하여 ETL 작업(데이터 추출, 변환 및 로드)을 수행하는 방법을 알아보려면 다음 문서로 이동합니다.Advance to the next article to learn how to perform an ETL operation (extract, transform, and load data) using Azure Databricks.