티스토리 뷰

반응형

안녕하세요. 이 강의에서는 Microsoft Azure에서의 데이터 저장 및 처리에 대해 알아봅니다. 데이터는 조직 내 여러 위치에 있습니다. 클라우드 데이터 솔루션을 설계할 때는 분석을 위해 원시 데이터를 데이터 저장소에 수집해야 합니다. Azure Synapse Analytics에서 사용할 수 있는 일반적인 접근 방식은 현재 저장된 위치에서 데이터를 추출하는 것입니다. 이 데이터를 분석 데이터 저장소에 로드한 다음, 데이터를 변환하여 분석에 사용할 수 있도록 구성하세요. 이 접근 방식을 추출 로드 및 변환을 위한 ELT라고 합니다. Azure Synapse Analytics는 아파치 스파크와 자동화된 파이프라인을 사용하는 이 접근 방식에 특히 적합합니다. Synapse Analytics는 대규모 데이터 집합에서 병렬 처리 작업을 실행하고 빅데이터 분석을 수행할 수 있습니다. 빅데이터라는 용어는 기존 데이터베이스 시스템에 비해 너무 크거나 복잡한 데이터를 말합니다. 빅데이터를 처리하는 시스템은 빠른 데이터 수집 및 처리를 수행해야 합니다.결과를 저장할 수 있는 용량과 이러한 결과에 대한 분석을 수행할 수 있는 충분한 컴퓨팅 파워가 있어야 합니다. 또 다른 옵션은 원래 위치에서 운영 데이터를 분석하는 것입니다. 이 전략을 하이브리드 트랜잭션 분석 처리 또는 HTAP라고 합니다.Azure Synapse 링크를 사용하여 Azure Cosmos DB와 같은 리포지토리에 있는 데이터에 대해 이러한 스타일의 분석을 수행할 수 있습니다. 이 단원에서는 Azure에서 분석을 수행하기 위한 데이터 처리 옵션을 설명하고 Azure Synapse Analytics에 대해 살펴봅니다.

 

조직은 비즈니스 전반에 걸쳐 데이터를 생성합니다. 분석을 위해 이 데이터를 원시 수집 형식으로 유지하거나 데이터를 처리하여 특수 설계된 데이터 저장소 또는 데이터 웨어하우스에 저장할 수 있습니다. 기업은 Microsoft Azure를 사용하여 이러한 시나리오 중 하나를 구현할 수 있습니다. Azure에서 데이터를 처리하는 가장 일반적인 옵션으로는 Azure 데이터 브릭, Azure 데이터 팩토리, Azure 시냅스 분석 및 Azure 데이터 레이크가 있습니다. 이 강의에서는 이러한 옵션을 더 자세히 살펴보겠습니다. Azure 시냅스 분석부터 시작하겠습니다. Azure 시냅스 분석은 일반화된 분석 서비스입니다. 이를 사용하여 다양한 소스에서 데이터를 읽고, 이 데이터를 처리하고, 다양한 분석 및 모델을 생성하고, 결과를 저장할 수 있습니다. Transact-SQL이라고도 하는 Transact-SQL과 Apache spark라는 두 가지 기술 중 하나를 선택하여 데이터를 처리할 수 있습니다. Transact-SQL은 Azure Sequel 데이터베이스에서 사용하는 것과 동일한 SQL 언어이며 데이터베이스, 파일 및 Azure Data Lake 저장소와 같은 외부 소스에서 데이터를 읽을 수 있는 확장도 있습니다. 이러한 확장을 사용하여 데이터를 빠르게 로드하고, 집계 및 기타 분석을 생성하고, 테이블과 뷰를 만들고, 이러한 테이블과 뷰를 사용하여 정보를 저장할 수 있습니다. 결과를 나중에 보고 및 처리하는 데 사용할 수 있습니다. Spark는 Azure 데이터 브릭을 지원하는 데 사용되는 것과 동일한 오픈 소스 기술입니다. C Sharp, Scala, Python 또는 SQL과 같은 프로그래밍 언어로 된 노트북을 사용하여 분석 코드를 작성합니다. 추가 분석을 위해 결과를 저장해야 하는 경우 Azure 시냅스 분석과 함께 제공되는 Spark 라이브러리를 사용하면 외부 소스에서 데이터를 읽고 다양한 형식으로 데이터를 추출할 수 있습니다. Azure 시냅스 분석은 클러스터형 아키텍처를 사용합니다. 각 클러스터에는 시스템의 진입점으로 사용되는 제어 노드가 있습니다. Transact-SQL 문을 실행하거나 노트북에서 스파크 작업을 시작하면 요청이 제어 노드로 전송됩니다. 제어 노드는 작업을 동시에 실행할 수 있는 작업 집합으로 분할하는 병렬 처리 엔진을 실행합니다. 각 작업은 소스 데이터의 하위 집합에서 워크로드의 일부를 수행하고 각 작업은 컴퓨팅 노드로 전송되어 실제로 처리를 수행합니다. 마지막으로 컨트롤 노트는 컴퓨팅 노드의 결과를 수집하여 전체 결과로 결합합니다. 이 강의 뒷부분에서 Azure 시냅스 분석의 구성 요소에 대해 더 자세히 설명하겠습니다. 자세한 내용은 Microsoft 웹 사이트의 Azure 시냅스 분석이란 무엇인지 읽어보세요. 이 강의의 끝부분에 있는 추가 자료에서 이 리소스로 연결되는 링크가 있습니다.이제 Azure 데이터 브릭을 살펴보겠습니다. Azure Data Breaks는 Microsoft Azure 클라우드 서비스 플랫폼에 최적화된 분석 플랫폼으로, Apache spark의 창립자와 함께 설계되었습니다. 데이터 브릭은 Azure와 통합되어 원클릭 설정, 간소화된 워크플로 및 대화형 작업 영역을 제공합니다. 이를 통해 데이터 과학자, 데이터 엔지니어 및 비즈니스 분석가 간의 협업이 가능합니다. 데이터 브릭은 Azure Blob Storage를 비롯한 다양한 유형의 스토리지에 보관된 데이터를 처리할 수 있습니다. Azure Data Lake 스토리지, 하둡 스토리지, 플랫 파일, 데이터베이스 및 데이터 웨어하우스. 또한 데이터 브릭은 스트리밍 데이터를 처리할 수 있으며 드라이버 기반의 확장 가능한 아키텍처를 사용합니다. 중요한 점은 드라이버는 특정 데이터 소스에 연결하여 해당 소스를 읽고 쓸 수 있게 해주는 코드라는 점입니다. 드라이버는 일반적으로 라이브러리의 일부로 제공됩니다. 데이터 브릭 환경으로 로드할 수 있습니다.Azure SQL 데이터베이스, Azure Cosmos DB, Azure Blob 스토리지 및 Azure Data Lake 스토리지를 비롯한 많은 Azure 서비스뿐만 아니라 MySQL 및 PostgreSQL과 같은 타사에서 만든 많은 서비스 및 데이터베이스에서 드라이버를 사용할 수 있습니다. 처리 엔진은 아파치 스파크에서 제공합니다. Spark는 대규모 분석을 지원하는 병렬 처리 엔진을 제공합니다. 하나 이상의 소스에서 가져온 데이터를 사용하는 애플리케이션 코드를 작성하고 이 데이터를 병합, 형식 변경, 필터링 및 재모델링한 다음 결과를 저장합니다. Spark는 컴퓨터 클러스터에 작업을 분산합니다. 각 컴퓨터는 다른 컴퓨터와 병렬로 데이터를 처리할 수 있으며 이 전략을 사용하면 작업 수행에 필요한 시간을 줄일 수 있습니다. Spark는 대량의 데이터를 처리하도록 설계되었습니다. Python, Scalia, Java 및 SQL과 같은 여러 언어를 사용하여 Spark 애플리케이션 코드를 작성할 수 있습니다. Spark에는 이러한 언어를 위한 여러 라이브러리가 있어 클러스터 환경에 최적화된 복잡한 분석 루틴을 제공합니다. 이러한 라이브러리에는 기계 학습, 통계 분석, 선형 및 비선형 모델링, 예측 분석 및 그래픽용 모듈이 포함되어 있습니다. 노트북을 사용하여 데이터 브레이크 애플리케이션을 작성합니다. 노트북에는 일련의 단계 또는 셀이 포함되며 각 단계나 셀에는 코드 블록이 들어 있습니다. 예를 들어, 한 셀에 데이터 소스에 연결되는 코드가 들어 있을 수 있습니다. 다음 셀은 해당 소스에서 데이터를 읽고 메모리의 모델로 변환합니다. 다음 셀은 그래프를 플로팅하고 마지막 셀은 인메모리 모델의 데이터를 리포지토리에 저장합니다. 셀의 첫 번째 줄은 백분율 기호 앞에 사용할 언어를 정의합니다 (예: %Scala). 자세한 내용은 Microsoft 웹 사이트의 Azure 데이터 브릭이란 무엇인지 읽어보세요. 이 강의의 마지막 부분에 있는 추가 자료에서 이 리소스로 연결되는 링크가 있습니다. 이제 Azure HDInsight로 전환해 보겠습니다. Azure HDInsight는 클라우드의 관리형 분석 서비스입니다. 이는 대량의 데이터에 대한 처리 작업을 실행할 수 있는 오픈 소스 도구 및 유틸리티 모음인 Apache Hadoop을 기반으로 합니다. HDInsight는 시냅스 분석과 유사한 클러스터형 모델을 사용합니다. HDInsight는 Azure 데이터 레이크 스토리지를 사용하여 데이터를 저장합니다. HDInsight를 사용하여 프레임워크를 사용하여 데이터를 분석할 수 있습니다. 이러한 프레임워크에는 하둡 맵-리듀스, 아파치 스파크, 아파치 하이브, 아파치 카프카, 아파치 스톰, R 등이 포함될 수 있습니다. 이제 각 프레임워크를 좀 더 자세히 살펴보겠습니다. Hadoop Map/Reduce는 간단한 프레임워크를 사용하여 대규모 데이터 세트에 대한 작업을 일련의 작은 작업으로 분할합니다. 이렇게 작은 작업이나 데이터의 하위 집합을 병렬로 실행한 다음 결과를 결합할 수 있습니다 . Java와 같은 언어로 Map Reduce 코드를 작성한 다음 이 코드를 하둡 클러스터에 작업으로 제출합니다. Hadoop Map Produce는 고급 작업 세트와 더 간단한 인터페이스를 제공하는 스파크로 대부분 대체되었습니다. 맵 생성 작업과 마찬가지로 Spark 작업은 클러스터에서 실행되는 일련의 하위 작업으로 병렬화됩니다. 스파크 작업은 애플리케이션의 일부로 작성하거나 대화형 노트북을 사용할 수 있습니다. 이러한 노트북은 Azure Databricks에서 실행할 수 있는 노트북과 동일합니다. Spark에는 HDFS뿐만 아니라 다양한 데이터 저장소에서 데이터를 읽고 쓰는 데 사용할 수 있는 라이브러리가 포함되어 있습니다. 예를 들어 Azure SQL 데이터베이스와 같은 관계형 데이터베이스 및 Azure Cosmos DB와 같은 기타 서비스에 연결할 수 있습니다. Apache Hive는 데이터를 쿼리, 집계 및 요약하는 기능과 같은 대화형 기능을 제공합니다. 데이터는 다양한 소스에서 가져올 수 있습니다. 쿼리는 작업으로 변환되어 병렬화됩니다. 각 작업은 HD Insight 클러스터의 개별 노트에서 실행할 수 있으며 결과는 사용자에게 반환되기 전에 결합됩니다. Apache Kafka는 실시간으로 데이터를 수집할 수 있는 클러스터 스트리밍 서비스입니다. 게시 및 구독 기능을 제공하는 확장성이 뛰어난 솔루션입니다. Apache Storm은 실시간 데이터 처리 애플리케이션을 실행하기 위한 확장 가능한 내결함성 플랫폼입니다. Storm은 비교적 적당한 컴퓨팅 요구 사항을 사용하여 대량의 스트리밍 데이터를 처리할 수 있습니다. Storm은 안정성을 고려하여 설계되었으므로 이벤트가 손실되지 않습니다. 또한 Storm 솔루션은 처음에 성공적으로 처리되지 않은 데이터를 재생할 수 있는 기능과 함께 보장된 데이터 처리를 제공할 수 있습니다. Apache에서 제공하는 API를 사용하여 Storm 애플리케이션을 작성합니다. Storm은 Azure 이벤트 허브, Azure IOT 허브, Apache Kafka, 메시지 대기열 서비스인 RabbitMQ를 비롯한 다양한 이벤트 소스와 상호 운용할 수 있습니다. 또한 스톰은 HDFS, 하이브, HBase, Redis 및 SQL 데이터베이스와 같은 두 개의 데이터 저장소를 작성할 수 있습니다. 요약하면 Azure HDInsight를 사용하면 다양한 프레임워크 및 클러스터를 활용하여 다양한 소스의 데이터를 처리할 수 있습니다. Kafka와 Storm Stream이 노트북을 사용한 Hive 스파크 작업 또는 하둡을 사용하여 맵 생성 작업을 통해 대화형 쿼리를 처리하는 경우를 예로 들 수 있습니다. 자세한 내용은 Microsoft 웹 사이트에 있는 Azure HDInsight가 무엇인지 읽으면 확인할 수 있습니다. 이 리소스에 대한 링크는 이 강의 마지막 부분에 있는 추가 자료에서 확인할 수 있습니다.

 

Azure Data Factory는 관계형 및 비관계형 시스템에서 대량의 구성되지 않은 원시 데이터를 수집하여 이 데이터를 의미 있는 정보로 변환할 수 있는 서비스입니다. Data Factory는 확장 가능하고 프로그래밍 가능한 수집 엔진을 제공합니다 . Data Factory는 ETL, 추출, 변환, 로드 및 ELT, 추출, 로드, 변환과 같은 프로세스를 지원하며 데이터 통합 프로젝트를 구현하는 데 사용할 수 있습니다. Azure 데이터 팩토리는 데이터 통합 서비스로 설명됩니다. Azure Data Factory의 목적은 하나 이상의 데이터 원본에서 데이터를 검색하여 처리하는 형식으로 변환하는 것입니다. 데이터 원본은 다양한 방식으로 데이터를 표시할 수 있으며 필터링해야 하는 노이즈를 포함할 수 있습니다. 예를 들어 게임에서 생성되는 페타바이트 규모의 게임 로그를 코드에 수집하는 게임 회사를 예로 들어 보겠습니다.이 회사는 이러한 로그를 분석하여 고객 선호도, 인구 통계, 사용 행동에 대한 통찰력을 얻으려고 합니다. 또한 상향 판매 및 교차 판매 기회를 파악하고, 매력적인 새 기능을 개발하고, 비즈니스 성장을 촉진하고, 고객에게 더 나은 경험을 제공하고자 합니다. 이러한 로그를 분석하려면 회사는 온프레미스 데이터 스토어에 있는 고객 정보, 게임 정보, 마케팅 캠페인 정보와 같은 참조 데이터를 사용해야 합니다. 회사는 온프레미스 데이터 저장소의 이 데이터를 클라우드 데이터 저장소에 있는 추가 로그 데이터와 결합하여 활용하고자 합니다. 통찰력을 추출하기 위해 회사는 Azure HDInsight를 사용하여 클라우드의 Spark 클러스터를 사용하여 결합된 데이터를 처리하고 변환된 데이터를 Azure Synapse Analytics와 같은 클라우드 데이터 웨어하우스에 게시하려고 합니다. 회사는 데이터 웨어하우스의 정보를 사용하여 보고서를 생성하고 게시할 수 있습니다. 그들은 이 워크플로우를 자동화하고 일일 일정에 따라 모니터링 및 관리하기를 원합니다. 또한 파일이 Blob store 컨테이너에 도착했을 때 이를 실행하려고 합니다. Azure Data Factory를 사용하면 게임 회사에서 사용하는 다양한 데이터 저장소의 데이터를 수집할 수 있는 파이프라인이라는 데이터 기반 워크플로를 만들고 예약할 수 있습니다. 데이터 흐름을 사용하거나 Azure HDInsight, Azure Databricks, Azure SQL Databricks 등의 컴퓨팅 서비스를 사용하여 데이터를 시각적으로 변환하는 복잡한 ETL 프로세스를 구축할 수 있습니다. 그런 다음 변환된 데이터를 Azure Synapse Analytics에 게시하여 비즈니스 인텔리전스 애플리케이션이 사용할 수 있도록 할 수 있습니다. 파이프라인은 작업 단위를 수행하는 활동을 논리적으로 그룹화한 것입니다. 파이프라인의 활동은 함께 작업을 수행합니다. 예를 들어 파이프라인에는 Azure Blob Storage에서 원시 데이터를 수집한 다음 HDInsight 클러스터에서 Hive 쿼리를 실행하여 데이터를 분할하고 결과를 Cosmos DB 데이터베이스에 저장하는 일련의 활동이 포함될 수 있습니다. Azure Data Lake는 빅 데이터 솔루션을 구현하기 위해 결합할 수 있는 분석 및 스토리지 서비스 모음입니다. 데이터 레이크 스토어, 데이터 레이크 분석, HDInsight라는 세 가지 주요 요소로 구성되어 있습니다. 데이터 레이크 스토어는 거의 무제한의 데이터를 저장할 수 있는 파일 시스템을 제공합니다. Windows 및 Linux 파일 시스템과 같은 계층적 구조를 사용하지만 대량의 원시 데이터, 블롭, 정형 데이터를 보관할 수 있습니다.분석 워크로드에 최적화되어 있습니다. Azure 데이터 레이크 스토어는 하둡 분산 파일 시스템인 HDFS와 호환됩니다. Azure HDInsight를 사용하여 데이터 레이크 스토어에서 데이터를 효율적으로 읽고 쓸 수 있는 하둡 작업을 실행할 수 있습니다. Azure Data Lake Store는 액세스 제어 목록을 사용하여 데이터에 대한 세분화된 보안을 제공합니다. 액세스 제어 목록은 저장소의 파일 및 폴더에 액세스할 수 있는 계정을 지정합니다. Linux에 더 익숙하다면 POSIX 스타일 권한을 사용하여 파일 소유권 및 사용자의 그룹 구성원을 기반으로 읽기/쓰기 및 검색 액세스 권한을 부여할 수 있습니다. Azure Data Factory, Azure Databricks, Azure HDInsight, Azure Data Lake Analytics 및 Azure Stream Analytics와 같은 서비스는 데이터 레이크 스토어를 직접 읽고 쓸 수 있습니다. Azure Data Lake Analytics는 빅 데이터를 처리하는 데 사용할 수 있는 온디맨드 분석 작업 서비스입니다. Microsoft Azure Data Lake Store 및 기타 리포지토리에 보관된 데이터를 분석하는 데 사용하는 프레임워크와 도구 세트를 제공합니다. 데이터를 변환하고 통찰력을 추출하기 위한 쿼리가 포함된 작업을 작성합니다. U-SQL이라는 언어를 사용하여 작업을 정의합니다. 이 언어는 SQL과 C #의 기능을 모두 가져와서 데이터를 처리하는 데 사용할 수 있는 장식 및 절차 기능을 제공하는 하이브리드 언어입니다. CSV 파일에서 각 줄은 하나 이상의 필드로 구성되고 각 필드는 쉼표로 구분된다는 점에 유의하세요. 일반적으로 파일의 첫 번째 줄에는 필드 이름이 포함됩니다. 예를 들어, U-SQL 블록은 데이터 레이크 스토리지의 StockMarket이라는 폴더에 있는 StockPrices.csv 파일에서 데이터를 읽을 수 있습니다. StockPrices.csv 는 주식 시장 정보 ( 예: 시세, 가격) 는 물론 쉼표로 구분된 형식으로 저장된 기타 데이터 (일반적으로 CSV라고도 함) 를 포함하는 텍스트 파일입니다. 추출 명령문을 사용하여 파일을 한 줄씩 읽고 티커 및 가격 필드의 데이터를 가져올 수 있습니다. CSV 파일의 첫 번째 줄은 생략합니다. CSV 파일에는 일반적으로 데이터가 아닌 필드명 정보가 들어 있기 때문입니다. 그런 다음 SELECT 문을 사용하여 각 티커의 최고 가격을 계산할 수 있습니다. 마지막으로 OUTPUT 문을 사용하여 결과를 Data Lake Storage의 다른 파일에 저장할 수 있습니다. U-SQL 코드는 수행할 작업에 대한 설명만 제공한다는 점을 이해하는 것이 중요합니다. Azure 데이터 레이크 애널리틱스는 이 작업을 실제로 수행하는 최선의 방법을 결정합니다. 작업에 대한 U-SQL 설명을 가져와 구문 분석하여 구문이 올바른지 확인한 다음 내부 표현으로 컴파일합니다. 그런 다음 이 내부 표현을 실행 단계로 분류합니다. 각 단계는 지정된 원본에서 데이터를 추출하고, 데이터를 파티션으로 나누고, 각 파티션에서 데이터를 처리하고, 결과를 파티션으로 집계한 다음, 모든 파티션의 결과를 결합하는 등의 작업을 수행합니다. 분할은 병렬화를 개선하는 데 사용되며 여러 파티션에 대한 처리는 서로 다른 처리 노드에서 동시에 수행됩니다. 각 파티션의 데이터는 작업에서 데이터를 검색하고 처리하는 방식에 따라 U-SQL 컴파일러에 의해 결정됩니다. U-SQL 작업은 결과를 단일 CSV 파일로 출력하거나 결과를 여러 파일로 분할하거나 다른 대상에 쓸 수 있습니다. 예를 들어 XML 또는 HTML과 같은 특정 형식으로 데이터를 저장하려는 경우 Data Lake Analytics를 사용하면 사용자 지정 출력기를 만들 수 있습니다.Data Lake 카탈로그에 데이터를 쓸 수도 있습니다. 카탈로그는 Data Lake Storage에 SQL과 유사한 인터페이스를 제공하므로 테이블과 뷰를 생성하고 이러한 테이블과 뷰에 대해 INSERT, UPDATE 및 DELETE 문을 실행할 수 있습니다.

Azure synapse 분석은 조직 데이터를 분석하고 처리하기 위한 도구 모음을 제공합니다. 여기에는 SQL 기술, 트랜잭션 시퀄 쿼리 기능 및 오픈 소스 스파크 도구가 통합되어 있어 매우 많은 양의 데이터를 빠르게 처리할 수 있습니다. 이제 시냅스 분석의 기능을 좀 더 자세히 살펴보고 언제 시냅스 분석 사용을 고려해야 하는지 살펴보겠습니다. Azure Synapse Analytics는 조직이 데이터 웨어하우스와 빅데이터 분석 시스템 모두에서 모든 대규모 데이터에서 신속하게 통찰력을 얻을 수 있도록 하는 통합 분석 서비스입니다.시냅스는 시냅스 SQL 풀, 시냅스 스파크 풀, 시냅스 파이프라인, 시냅스 링크, 시냅스 스튜디오 등의 요소로 구성되어 있기 때문입니다. Synapse SQL Pool은 Azure SQL 데이터베이스와 Microsoft Sequel 서버에서 사용하는 SQL 언어인 Transact sequel을 실행하는 서버 모음입니다. Transact Sequel을 사용하여 데이터 처리 로직을 작성합니다. 시냅스 스파크 풀은 데이터를 처리하기 위해 아파치 스파크를 실행하는 서버 클러스터입니다. 지원되는 네 가지 언어, 즉 파이썬 스칼라, SQL, 아파치용 닷넷을 통한 C 샤프, 스파크를 사용하여 데이터 처리 로직을 작성합니다. 스파크 풀은 Spark ml 및 Azure Ml 패키지와의 통합을 통해 Azure 머신 러닝을 지원합니다. 시냅스 파이프라인은 함께 작업을 수행하는 활동을 논리적으로 그룹화한 것으로 , 파이프라인의 활동은 데이터에 대해 수행할 작업을 정의합니다. 예를 들어 복사 활동을 사용하여 원본 데이터 세트에서 대상 데이터 세트로 데이터를 변환하거나, 전송되는 데이터를 변환하는 활동을 포함하거나, 여러 원본의 데이터를 함께 결합할 수 있습니다. Synapse 링크는 cosmos DB에 연결할 수 있는 구성 요소이며, 이를 사용하여 Cosmos dB 데이터베이스에 저장된 운영 데이터를 거의 실시간으로 분석할 수 있습니다. Synapse Studio는 데이터 엔지니어가 모든 시냅스 분석 도구에 액세스할 수 있는 웹 사용자 인터페이스입니다. Synapse Studio를 사용하여 SQL 및 Spark 풀을 생성하고, 파이프라인을 정의 및 실행하고, 외부 데이터 소스에 대한 링크를 구성할 수 있습니다. Azure Synapse 분석에 저장된 모든 데이터를 사용하여 Azure 기계 학습으로 모델을 빌드하고 학습할 수 있다는 점에 유의하세요. 다음 섹션에서는 이러한 각 요소에 대해 자세히 설명합니다. synapse equal을 사용하면 분석 워크로드가 SQL 풀을 사용하여 실행되고, 시퀄 풀에서는 클러스터의 제어 및 컴퓨팅 노드가 분산 쿼리를 지원하는 Azure SQL 데이터베이스 버전을 실행합니다.트랜잭션 SQL 문을 사용하여 로직을 정의하고 트랜잭션 SQL 문을 제어 노트로 전송하면 제어 노트가 작업을 데이터 하위 집합에서 작동하는 쿼리로 분할한 다음 이러한 작은 쿼리를 컴퓨팅 노드로 보냅니다. 데이터는 배포라는 청크로 분할되며, 배포는 분산 데이터에서 실행되는 병렬 쿼리를 저장하고 처리하는 기본 단위입니다. 작은 쿼리는 각각 데이터 배포 중 하나에서 실행되며, 제어 및 계산 노드는 DMS를 사용하여 필요에 따라 데이터 이동 서비스 (Data Movement Service) 또는 DMS를 사용하여 노드 간에 데이터를 이동하고 쿼리를 병렬로 실행하고 정확한 결과를 반환합니다. Synapse Analytics는 Polybase라는 기술을 사용하여 외부 데이터를 SQL 테이블처럼 보이게 만듭니다. 이러한 테이블에 대해 직접 쿼리를 실행하거나 나중에 쿼리를 위해 시냅스 분석으로 관리되는 일련의 SQL 테이블로 데이터를 전송할 수 있습니다. Synapse는 데이터가 처리되는 동안 Azure 스토리지를 사용하여 데이터를 관리합니다. 기본적으로 각 Azure 시냅스 분석 작업 영역에 온디맨드 SQL 풀이 생성됩니다. 그런 다음 필요에 따라 또는 프로비저닝하여 추가 풀을 프로비전할 수 있습니다. 단, 온디맨드 풀은 외부 파일에 보관된 데이터만 쿼리할 수 있다는 점에 유의하세요. 데이터를 수집하여 시냅스 분석에 로드하려면 자체 SQL 풀을 만들어야 합니다. Azure synapse Analytics는 대규모 데이터 집합에서 쿼리를 실행하도록 설계되었습니다. SQL 풀을 최대 60개 노드까지 수동으로 확장할 수 있으며, 한동안 필요하지 않은 경우 SQL 풀을 일시 중지하고, 일시 중지하고 풀과 관련된 리소스를 해제할 수도 있습니다. 이러한 리소스에 대해서는 풀을 수동으로 재개하기 전까지는 요금이 부과되지 않지만, 풀이 재개될 때까지는 쿼리를 실행할 수 없으며 풀을 재개하는 데 몇 분이 걸릴 수 있습니다. 다음과 같은 시나리오에서는 시냅스 분석의 시퀄 풀을 사용하십시오. 복합 보고를 사용하면 트랜잭션 SQL의 모든 기능을 사용하여 데이터를 요약하고 집계하는 복잡한 SQL 문을 실행할 수 있습니다. 데이터 통합 폴리 베이스를 사용하면 여러 외부 소스에서 데이터를 검색하여 표 형식으로 변환할 수 있습니다. 이 데이터를 다시 포맷하고 Azure Synapse에서 테이블 및 구체화된 뷰로 저장할 수 있습니다. Synapse Spark는 Azure SQL 데이터베이스가 아닌 Apache Spark를 기반으로 클러스터를 실행합니다. T sequel과는 다른 방언인 파이썬 스칼라 C Sharp 또는 Spark sequel로 작성된 코드를 사용하여 분석 작업을 노트북으로 작성합니다. 여러 언어로 작성된 코드를 동일한 노트북에 결합할 수 있으며, 노트북을 사용하면 그래프를 통해 데이터를 시각화하고 로드되는 대로 데이터를 변환할 수도 있습니다. 그런 다음 스파크 머신 러닝, 스파크 ML 및 Azure 머신 러닝 (Azure ml) 에서 이 데이터를 사용하여 인공 지능을 지원하는 머신 러닝 모델을 트레이닝할 수 있습니다. Spark 풀과 SQL 풀은 Synapse 분석 인스턴스와 동일하게 공존할 수 있다는 점에 유의하세요. Spark 풀을 사용하면 CSV, JSON, XML PARQUET ORC 및 Avro와 같은 다양한 형식으로 보관된 데이터를 처리할 수 있습니다. 또한 Spark는 외부 데이터 소스를 사용하여 더 많은 형식을 지원하도록 확장할 수 있습니다. Spark 풀은 메모리 클러스터 컴퓨팅을 수행하기 위한 기본 구성 요소를 제공합니다. 스파크 작업은 데이터를 메모리에 로드하고 캐시한 다음 반복적으로 쿼리할 수 있습니다. 메모리 컴퓨팅은 디스크 기반 애플리케이션보다 훨씬 빠르며, Azure synapse의 Spark 풀은 Azure Storage 및 Azure 데이터 레이크 스토리지와 호환됩니다. 따라서 Spark 풀을 사용하여 Azure에 저장된 데이터를 처리할 수 있으므로 Spark 풀은 Auto Scaling을 활성화하여 필요에 따라 노드를 추가하거나 제거하여 규모를 확장할 수 있습니다. 또한 모든 데이터가 Azure 스토리지 또는 데이터 레이크 스토리지에 저장되므로 Spark 풀을 데이터 손실 없이 종료할 수 있습니다. 시냅스 분석의 스파크 풀은 데이터 엔지니어링 또는 데이터 준비 및 기계 학습과 같은 시나리오에 특히 적합합니다. Apache spark에는 대용량 데이터의 준비 및 처리를 지원하는 다양한 언어 기능이 포함되어 있습니다. Apache Spark는 이를 더욱 가치있게 만들어 시냅스 분석 내의 다른 서비스에서 사용할 수 있습니다. 이는 처리 및 연결을 지원하는 Spark 라이브러리를 통해 가능합니다. Apache Spark에는 Spark 위에 구축된 기계 학습 라이브러리인 MLlib가 함께 제공되므로 Spark 풀에서 시냅스 분석에 사용할 수 있습니다. 시냅스 분석의 스파크 풀에는 기계 학습을 비롯한 다양한 데이터 과학 패키지가 포함된 Python 배포판인 아나콘다도 포함되어 있습니다. 노트북 지원 기능이 내장되어 있으면 기계 학습 애플리케이션을 만들 수 있는 환경을 구축할 수 있습니다. 다음 편에서는 시냅스 파이프라인, 시냅스 링크, 시냅스 스튜디오의 구성요소를 살펴보겠습니다.

 

Azure Synapse 분석의 구성 요소를 계속 살펴보고 시냅스 파이프라인부터 시작하겠습니다. 파이프라인은 작업을 함께 수행하는 활동을 논리적으로 그룹화한 것입니다. 예를 들어, 파이프라인에는 로그 데이터를 수집 및 정리한 다음 매핑 데이터 흐름을 시작하여 로그 데이터를 분석하는 일련의 활동이 포함될 수 있습니다. 파이프라인을 사용하면 각 활동을 개별적으로 관리하는 대신 세트로 관리할 수 있습니다. 활동을 독립적으로 수행하는 대신 파이프라인을 배포하고 일정을 잡습니다. 파이프라인의 활동은 데이터에 대해 수행할 작업을 정의합니다. 예를 들어 복사 활동을 사용하여 Azure Blob 스토리지의 데이터를 시퀄 풀을 사용하여 Azure synapse로 복사할 수 있습니다. 그런 다음 스파크 풀을 사용하는 데이터 흐름 활동이나 노트북 활동을 사용하여 기계 학습 모델을 처리하고 생성합니다. Synapse 파이프라인은 Azure 데이터 팩토리에서 사용하는 것과 동일한 데이터 통합 엔진을 사용합니다. 이를 통해 Synapse Studio에서 플랫 파일, 데이터베이스 또는 온라인 서비스의 90개 이상의 소스에 연결할 수 있는 파이프라인을 만들 수 있습니다. 데이터가 분석 솔루션으로 전송될 때 복잡한 매핑 및 변환을 수행할 수 있는 코드 없는 데이터 흐름을 만들 수 있습니다. 예를 들어, 세 가지 활동이 포함된 파이프라인을 만들 수 있습니다. 파이프라인은 먼저 데이터를 수집한 다음 스파크 노트북을 사용하여 기계 학습 모델을 생성합니다. 마지막으로, 파이프라인 끝에 머신 러닝 모델을 테스트하고 검증하기 위한 Azure 함수가 포함되어 있습니다. 자세한 내용은 Microsoft 웹 사이트의 Azure 데이터 팩토리 페이지에서 파이프라인 및 활동을 읽을 수 있습니다. 이 리소스로 연결되는 링크는 이 강의 마지막 부분에 있는 추가 자료에서 찾을 수 있습니다. 자, 이제 Azure 시냅스 링크에 대해 이야기해 보겠습니다. Azure cosmos DB용 Azure Synapse 링크는 클라우드 네이티브 하이브리드 트랜잭션 및 분석 처리입니다. 또는 Azure Cosmos DB에 저장된 운영 데이터에 대해 거의 실시간으로 분석을 실행할 수 있는 HTAP 기능도 있습니다. 시냅스 링크는 코스모스 DB 분석 저장소라는 코스모스 DB 기능을 사용합니다. Cosmos DB 분석 저장소는 Cosmos DB 컨테이너에 데이터 사본을 포함하지만 열 저장소로 구성되어 있습니다. 열 저장소는 데이터를 행이 아닌 열별로 그룹화하기 때문에 열 저장소가 더 최적의 형식입니다. 데이터를 한 행이 아닌 열 단위로 집계해야 하는 분석 워크로드를 실행하는 데 적합합니다. 일부 합계 생성, 열의 평균 최대값 또는 최소값 생성 등 Cosmos DB는 컨테이너의 데이터를 열 저장소의 사본과 동기화하여 자동으로 유지합니다. Azure Synapse 링크를 사용하면 Cosmos DB에서 직접 데이터를 검색하는 워크로드를 실행하고 Azure 시냅스 분석을 사용하여 분석 워크로드를 실행할 수 있습니다. 데이터는 시냅스 분석에 복사되지 않으므로 ETL 추출, 변환 및 로드 프로세스를 거치지 않아도 됩니다. 데이터는 Cosmos DB 분석 저장소에 남아 있습니다. 비즈니스 분석가, 데이터 엔지니어, 데이터 과학자는 이제 시냅스 스파크 풀을 사용할 수 있습니다. 또는 SQL 풀을 시냅스하여 실시간에 가까운 비즈니스 인텔리전스 분석과 머신 러닝 파이프라인을 실행할 수도 있습니다. Azure Cosmos DB의 트랜잭션 워크로드 성능에 영향을 주지 않으면서 이를 달성할 수 있습니다. Synapse 링크는 공급망 분석 및 예측을 비롯한 다양한 용도로 사용됩니다. 운영 보고, 배치 데이터 통합 및 오케스트레이션, 실시간 개인화 및 IOT 유지 관리. 이제 공급망 분석 및 예측 각각에 대해 자세히 살펴보겠습니다. 운영 데이터를 직접 쿼리하고 이를 사용하여 기계 학습 모델을 구축할 수 있습니다. 이러한 모델에서 생성된 결과를 Cosmos DB로 바로 가져와 거의 실시간으로 점수를 매길 수 있습니다. 이러한 평가를 사용하여 모델을 연속적으로 수정하고 더 정확한 예측을 생성할 수 있습니다. 운영 보고: 시냅스 분석을 사용하면 SQL 풀에서 실행되는 트랜잭션 SQL을 사용하여 운영 데이터를 쿼리할 수 있습니다. Microsoft Power BI와 같은 친숙한 도구에 제공되는 지원을 사용하여 결과를 대시보드에 게시할 수 있습니다. 공급망과의 배치 데이터 통합 및 오케스트레이션은 점점 더 복잡해지고 있습니다. 공급망 데이터 플랫폼은 다양한 데이터 소스 및 형식과 통합되어야 합니다. 주소 시냅스 데이터 통합 엔진을 사용하면 데이터 엔지니어가 별도의 오케스트레이션 엔진 없이도 풍부한 데이터 파이프라인을 만들 수 있습니다. 실시간 개인화를 통해 소매업체가 사용할 수 있는 매력적인 전자 상거래 솔루션을 구축할 수 있습니다. 고객을 위한 맞춤형 추천 및 특별 제안을 실시간으로 생성합니다. IOT 유지 관리, 산업용 IOT 혁신은 기계 가동 중지 시간을 크게 줄이고 모든 산업 분야에서 전반적인 효율성을 높였습니다. 이러한 혁신 중 하나는 클라우드 엣지에 있는 기계류에 대한 예측 유지보수 분석입니다. IOT 디바이스 센서의 과거 운영 데이터를 사용하여 이상 감지기와 같은 예측 모델을 학습할 수 있습니다. 그런 다음 이러한 이상 감지기를 에지에 다시 배포하여 실시간 모니터링을 수행합니다. 루프백하면 예측 모델을 지속적으로 재학습할 수 있습니다. 마지막으로 시냅스 스튜디오를 살펴보겠습니다. Synapse Studio는 풀과 파이프라인을 대화형 방식으로 생성할 수 있는 웹 인터페이스입니다. Synapse Studio를 사용하면 스파크 노트북을 개발, 테스트 및 디버깅하고 SQL 작업을 처리할 수 있습니다. 현재 실행 중인 작업의 성능을 모니터링하고 서버리스 또는 프로비저닝된 리소스를 관리할 수 있습니다. 모델 관리, 모니터링, 코딩 및 보안이 가능한 웹 네이티브 Synapse Studio를 통해 이러한 모든 기능에 액세스할 수 있습니다.Azure 포털에서 바로 시냅스 스튜디오에 액세스할 수 있습니다.

반응형

'aws, ms-azure' 카테고리의 다른 글

Power BI  (0) 2024.03.16
ms-azure data factory, Lake  (0) 2024.03.16
데이터 수집  (0) 2024.03.16
최신 데이터 웨어하우징을 위한 Azure 데이터 수집 구성 요소  (0) 2024.03.16
Azure Blob 스토리지 관리  (0) 2024.03.16
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함