빅 데이터 클러스터에서 Apache Spark 및 Apache Hadoop 구성

Important

Microsoft SQL Server 2019 빅 데이터 클러스터 추가 기능이 사용 중지됩니다. SQL Server 2019 빅 데이터 클러스터에 대한 지원은 2025년 2월 28일에 종료됩니다. Software Assurance를 사용하는 SQL Server 2019의 모든 기존 사용자는 플랫폼에서 완전히 지원되며, 소프트웨어는 지원 종료 시점까지 SQL Server 누적 업데이트를 통해 계속 유지 관리됩니다. 자세한 내용은 공지 블로그 게시물Microsoft SQL Server 플랫폼의 빅 데이터 옵션을 참조하세요.

빅 데이터 클러스터에서 Apache Spark 및 Apache Hadoop을 구성하려면 배포 시 클러스터 프로필을 수정해야 합니다.

빅 데이터 클러스터에는 다음 네 가지 구성 범주가 있습니다.

  • sql
  • hdfs
  • spark
  • gateway

sql, hdfs, spark, sql은 서비스입니다. 각 서비스는 동일한 명명된 구성 범주에 매핑됩니다. 모든 게이트웨이 구성은 범주 gateway로 이동합니다.

예를 들어 서비스 hdfs의 모든 구성은 범주 hdfs에 속합니다. 모든 Hadoop(코어 사이트), HDFS 및 Zookeeper 구성은 범주 hdfs에 속합니다. 모든 Livy, Spark, Yarn, Hive, Metastore 구성은 범주 spark에 속합니다.

지원되는 구성에는 SQL Server 빅 데이터 클러스터를 배포할 때 구성할 수 있는 Apache Spark 및 Hadoop 속성이 나열되어 있습니다.

다음 섹션에는 클러스터에서 수정할 수 없는 속성이 나열되어 있습니다.

클러스터 프로필을 통한 구성

클러스터 프로필에는 리소스 및 서비스가 있습니다. 배포 시 다음 두 가지 방법 중 하나로 구성을 지정할 수 있습니다.

  • 리소스 수준:

    다음 예제는 프로필에 대한 패치 파일입니다.

    { 
           "op": "add", 
           "path": "spec.resources.zookeeper.spec.settings", 
           "value": { 
             "hdfs": { 
               "zoo-cfg.syncLimit": "6" 
             } 
           } 
    }
    

    또는

    { 
           "op": "add", 
           "path": "spec.resources.gateway.spec.settings", 
           "value": { 
             "gateway": { 
               "gateway-site.gateway.httpclient.socketTimeout": "95s" 
             } 
           } 
    } 
    
  • 서비스 수준: 서비스에 여러 리소스를 할당하고 서비스에 대한 구성을 지정합니다.

HDFS 블록 크기를 설정하는 데 있어 프로필에 대한 패치 파일의 예제는 다음과 같습니다.

{ 
      "op": "add", 
      "path": "spec.services.hdfs.settings", 
      "value": { 
        "hdfs-site.dfs.block.size": "268435456" 
     } 
} 

hdfs 서비스는 다음과 같이 정의됩니다.

{ 
  "spec": { 
   "services": { 
     "hdfs": { 
        "resources": [ 
          "nmnode-0", 
          "zookeeper", 
          "storage-0", 
          "sparkhead" 
        ], 
        "settings":{ 
          "hdfs-site.dfs.block.size": "268435456" 
        } 
      } 
    } 
  } 
} 

참고 항목

리소스 수준 구성은 서비스 수준 구성을 재정의합니다. 하나의 리소스는 여러 서비스에 할당할 수 있습니다.

스토리지 풀에서 Spark 사용 설정

지원되는 Apache 구성 외에도 Spark 작업을 스토리지 풀에서 실행할 수 있는지 여부를 구성하는 기능도 제공합니다. 이 부울 값 includeSparkspec.resources.storage-0.spec.settings.sparkbdc.json 구성 파일에 있습니다.

bdc.json의 스토리지 풀 정의 예제는 다음과 같습니다.

...
"storage-0": {
                "metadata": {
                    "kind": "Pool",
                    "name": "default"
                },
                "spec": {
                    "type": "Storage",
                    "replicas": 2,
                    "settings": {
                        "spark": {
                            "includeSpark": "true"
                        }
                    }
                }
            }

제한 사항

구성은 범주 수준에서만 지정할 수 있습니다. 동일한 하위 범주를 사용하여 여러 구성을 지정하기 위해 클러스터 프로필에서 공통 접두사를 추출할 수 없습니다.

{ 
      "op": "add", 
      "path": "spec.services.hdfs.settings.core-site.hadoop", 
      "value": { 
        "proxyuser.xyz.users": "*", 
        "proxyuser.abc.users": "*" 
     } 
} 

다음 단계