오늘날 디지털 시대에 데이터는 모든 조직의 성공의 핵심입니다. 데이터 교환에 가장 일반적으로 사용되는 형식 중 하나는 XML입니다. XML 파일을 분석하는 것은 여러 가지 이유로 중요합니다. 첫째, XML 파일은 금융, 의료, 정부 등 다양한 산업 분야에서 사용됩니다. XML 파일을 분석하면 조직이 데이터에 대한 통찰력을 얻을 수 있어 더 나은 결정을 내리고 운영을 개선할 수 있습니다. 많은 응용 프로그램과 시스템이 XML을 표준 데이터 형식으로 사용하기 때문에 XML 파일을 분석하면 데이터 통합에도 도움이 될 수 있습니다. XML 파일을 분석함으로써 조직은 다양한 소스의 데이터를 쉽게 통합하고 시스템 전반에 걸쳐 일관성을 보장할 수 있습니다. 그러나 XML 파일에는 반구조적이고 고도로 중첩된 데이터가 포함되어 있어 정보에 액세스하고 분석하기가 어렵습니다. 특히 파일이 크고 데이터가 많은 경우에는 더욱 그렇습니다. 복잡하고 고도로 중첩된 스키마.
XML 파일은 애플리케이션에 적합하지만 분석 엔진에는 적합하지 않을 수 있습니다. 쿼리 성능을 향상하고 다음과 같은 다운스트림 분석 엔진에 쉽게 액세스할 수 있도록 하기 위해 아마존 아테나, XML 파일을 Parquet와 같은 열 형식으로 전처리하는 것이 중요합니다. 이러한 변화를 통해 분석 워크플로의 효율성과 유용성이 향상됩니다. 이번 포스팅에서는 XML 데이터를 처리하는 방법을 보여드리겠습니다. AWS 접착제 그리고 아테나.
솔루션 개요
XML 파일 처리 워크플로를 간소화할 수 있는 두 가지 고유한 기술을 살펴보겠습니다.
- 기술 1: AWS Glue 크롤러 및 AWS Glue 비주얼 편집기 사용 – 크롤러와 함께 AWS Glue 사용자 인터페이스를 사용하여 XML 파일의 테이블 구조를 정의할 수 있습니다. 이 접근 방식은 사용자 친화적인 인터페이스를 제공하며 특히 데이터 관리에 그래픽 접근 방식을 선호하는 개인에게 적합합니다.
- 기술 2: 추론 및 고정 스키마와 함께 AWS Glue DynamicFrames 사용 – 크롤러는 다음보다 큰 XML 파일의 단일 행을 처리하는 데 제한이 있습니다. 1 MB. 이러한 제한을 극복하기 위해 AWS Glue 노트북을 사용하여 AWS Glue를 구성합니다.
DynamicFrames
, 추론된 스키마와 고정된 스키마를 모두 활용합니다. 이 방법을 사용하면 크기가 1MB를 초과하는 행이 있는 XML 파일을 효율적으로 처리할 수 있습니다.
두 접근 방식 모두에서 우리의 궁극적인 목표는 XML 파일을 Apache Parquet 형식으로 변환하여 Athena를 사용하여 쉽게 쿼리할 수 있도록 하는 것입니다. 이러한 기술을 사용하면 XML 데이터의 처리 속도와 접근성을 향상시켜 귀중한 통찰력을 쉽게 얻을 수 있습니다.
사전 조건
이 튜토리얼을 시작하기 전에 다음 필수 구성 요소를 완료하세요(두 기술 모두에 적용됨).
- XML 파일 다운로드 기술1.xml 및 기술2.xml.
- 파일을 다음 위치에 업로드하세요. 아마존 단순 스토리지 서비스 (Amazon S3) 버킷. 다른 폴더의 동일한 S3 버킷이나 다른 S3 버킷에 업로드할 수 있습니다.
- 를 생성 AWS 자격 증명 및 액세스 관리 (IAM)의 지침에 따라 ETL 작업 또는 노트북에 대한 역할 AWS Glue Studio에 대한 IAM 권한 설정.
- 다음을 사용하여 역할에 인라인 정책을 추가합니다. 이미: PassRole action :
- S3 버킷에 대한 액세스 권한이 있는 역할에 권한 정책을 추가합니다.
이제 전제 조건이 완료되었으므로 첫 번째 기술을 구현해 보겠습니다.
기술 1: AWS Glue 크롤러 및 비주얼 편집기 사용
다음 다이어그램은 솔루션을 구현하는 데 사용할 수 있는 간단한 아키텍처를 보여줍니다.
AWS Glue 및 Athena를 사용하여 Amazon S3에 저장된 XML 파일을 분석하기 위해 다음과 같은 상위 수준 단계를 완료합니다.
- AWS Glue 크롤러를 생성하여 XML 메타데이터를 추출하고 AWS Glue 데이터 카탈로그에 테이블을 생성합니다.
- AWS Glue ETL(추출, 변환 및 로드) 작업을 사용하여 XML 데이터를 Athena에 적합한 형식(예: Parquet)으로 처리하고 변환합니다.
- AWS Glue 콘솔 또는 다음을 통해 AWS Glue 작업을 설정하고 실행합니다. AWS 명령 줄 인터페이스 (AWS CLI).
- Athena 테이블과 함께 처리된 데이터(Parquet 형식)를 사용하여 SQL 쿼리를 활성화합니다.
- Athena의 사용자 친화적인 인터페이스를 사용하여 Amazon S3에 저장된 데이터에 대한 SQL 쿼리로 XML 데이터를 분석하세요.
이 아키텍처는 AWS Glue 및 Athena를 사용하여 Amazon S3에서 XML 데이터를 분석하기 위한 확장 가능하고 비용 효율적인 솔루션입니다. 복잡한 인프라 관리 없이 대규모 데이터 세트를 분석할 수 있습니다.
우리는 AWS Glue 크롤러를 사용하여 XML 파일 메타데이터를 추출합니다. 범용 XML 분류를 위해 기본 AWS Glue 분류자를 선택할 수 있습니다. 일반적인 형식에 유용한 XML 데이터 구조와 스키마를 자동으로 감지합니다.
또한 이 솔루션에서는 사용자 정의 XML 분류자를 사용합니다. 특정 XML 스키마 또는 형식용으로 설계되어 정확한 메타데이터 추출이 가능합니다. 이는 비표준 XML 형식이나 분류에 대한 세부적인 제어가 필요한 경우에 이상적입니다. 맞춤형 분류자는 필요한 메타데이터만 추출되도록 보장하여 다운스트림 처리 및 분석 작업을 단순화합니다. 이 접근 방식은 XML 파일 사용을 최적화합니다.
다음 스크린샷은 태그가 포함된 XML 파일의 예를 보여줍니다.
사용자 지정 분류자 만들기
이 단계에서는 사용자 지정 AWS Glue 분류자를 생성하여 XML 파일에서 메타데이터를 추출합니다. 다음 단계를 완료하세요.
- AWS Glue 콘솔의 겉옷 탐색 창에서 분류 자.
- 왼쪽 메뉴에서 분류 자 추가.
- 선택 XML 분류자 유형으로.
- 다음과 같이 분류자의 이름을 입력합니다.
blog-glue-xml-contact
. - 럭셔리 행 태그, 메타데이터가 포함된 루트 태그의 이름을 입력합니다(예:
metadata
). - 왼쪽 메뉴에서 만들기.
xml 파일을 크롤링하기 위한 AWS Glue 크롤러 생성
이 섹션에서는 이전 단계에서 생성된 고객 분류자를 사용하여 XML 파일에서 메타데이터를 추출하는 Glue Crawler를 생성합니다.
데이터베이스 만들기
- 로 이동 AWS Glue 콘솔선택한다. 데이터베이스 탐색 창에서
- 를 클릭하십시오 데이터베이스를 추가합니다.
- 다음과 같은 이름을 제공하십시오.
blog_glue_xml
- 왼쪽 메뉴에서 만들기 데이터베이스
크롤러 생성
첫 번째 크롤러를 생성하려면 다음 단계를 완료하세요.
- AWS Glue 콘솔에서 겉옷 탐색 창에서
- 왼쪽 메뉴에서 크롤러 생성.
- 에 크롤러 속성 설정 페이지에서 새 크롤러의 이름(예:
blog-glue-parquet
)를 선택한 다음 다음 보기. - 에 데이터 소스 및 분류자를 선택하세요. 페이지, 선택 아직 아래에 데이터 소스 구성.
- 왼쪽 메뉴에서 데이터 저장소 추가.
- 럭셔리 S3 경로, 찾아보기
s3://${BUCKET_NAME}/input/geologicalsurvey/
.
폴더 내부의 파일이 아닌 XML 폴더를 선택했는지 확인하세요.
- 나머지 옵션은 기본값으로 두고 다음을 선택하세요. S3 데이터 소스 추가.
- 펼치기 사용자 정의 분류자 – 선택 사항, blog-glue-xml-contact를 선택한 다음 다음 보기 나머지 옵션은 기본값으로 유지하세요.
- IAM 역할을 선택하거나 새 IAM 역할 생성, 접미사를 추가하세요
glue-xml-contact
(예 :AWSGlueServiceNotebookRoleBlog
)를 선택하고 다음 보기. - 에 출력 및 일정 설정 페이지, 아래 출력 구성선택한다.
blog_glue_xml
for 대상 데이터베이스. - 엔터 버튼
console_
테이블에 추가된 접두사(선택 사항) 및 아래 크롤러 일정, 주파수를 다음으로 설정해 두세요. 주문형. - 왼쪽 메뉴에서 다음 보기.
- 모든 매개변수를 검토하고 선택하세요. 크롤러 생성.
크롤러 실행
크롤러를 생성한 후 다음 단계를 완료하여 실행하세요.
- AWS Glue 콘솔에서 겉옷 탐색 창에서
- 생성한 크롤러를 열고 다음을 선택하세요. 달리기.
크롤러를 완료하는 데 1~2분 정도 걸립니다.
- 크롤러가 완료되면 다음을 선택합니다. 데이터베이스 탐색 창에서
- 크롤러가 추출한 스키마를 보려면 생성한 데이터베이스를 선택하고 테이블 이름을 선택하세요.
XML을 Parquet 형식으로 변환하는 AWS Glue 작업 생성
이 단계에서는 XML 파일을 Parquet 파일로 변환하는 AWS Glue Studio 작업을 생성합니다. 다음 단계를 완료하세요.
- AWS Glue 콘솔에서 작업 탐색 창에서
- $XNUMX Million 미만 직업 만들기, 고르다 빈 캔버스가 있는 시각적 개체.
- 왼쪽 메뉴에서 만들기.
- 작업 이름을 다음으로 바꿉니다.
blog_glue_xml_job
.
이제 빈 AWS Glue Studio 시각적 작업 편집기가 생겼습니다. 편집기 상단에는 다양한 보기에 대한 탭이 있습니다.
- 선택 스크립트 탭을 클릭하면 AWS Glue ETL 스크립트의 빈 셸이 표시됩니다.
시각적 편집기에 새 단계를 추가하면 스크립트가 자동으로 업데이트됩니다.
- 선택 직업 세부 정보 탭을 클릭하면 모든 작업 구성을 볼 수 있습니다.
- 럭셔리 IAM 역할선택한다.
AWSGlueServiceNotebookRoleBlog
. - 럭셔리 접착제 버전선택한다. Glue 4.0 – Spark 3.3, Scala 2, Python 3 지원.
- 세트 요청된 작업자 수 2합니다.
- 세트 재시도 횟수 0합니다.
- 선택 시각 탭을 눌러 비주얼 편집기로 돌아갑니다.
- 에 출처 드롭 다운 메뉴에서 AWS Glue 데이터 카탈로그.
- 에 데이터 원본 속성 – 데이터 카탈로그 탭에서 다음 정보를 제공합니다.
- 럭셔리 데이터베이스선택한다.
blog_glue_xml
. - 럭셔리 작업대에서 크롤러가 생성한 console_ 이름으로 시작하는 테이블을 선택합니다(예:
console_geologicalsurvey
).
- 럭셔리 데이터베이스선택한다.
- 에 노드 속성 탭에서 다음 정보를 제공합니다.
- 변화 성함 에
geologicalsurvey
데이터 세트. - 왼쪽 메뉴에서 동작 그리고 변형 스키마 변경(매핑 적용).
- 왼쪽 메뉴에서 노드 속성 변환 이름을 스키마 변경(매핑 적용)에서 다음으로 변경합니다.
ApplyMapping
. - 에 목표 메뉴, 선택 S3.
- 변화 성함 에
- 에 데이터 소스 속성 – S3 탭에서 다음 정보를 제공합니다.
- 럭셔리 형성, 고르다 나무 마루로.
- 럭셔리 압축 유형, 고르다 비 압축.
- 럭셔리 S3 소스 유형, 고르다 S3 위치.
- 럭셔리 S3 URL, 입력
s3://${BUCKET_NAME}/output/parquet/
. - 왼쪽 메뉴에서 노드 속성 이름을
Output
.
- 왼쪽 메뉴에서 찜하기 작업을 저장합니다.
- 왼쪽 메뉴에서 달리기 작업을 실행합니다.
다음 스크린샷은 비주얼 편집기의 작업을 보여줍니다.
Parquet 파일을 크롤링하기 위한 AWS Gue Crawler 생성
이 단계에서는 AWS Glue Studio 작업을 사용하여 생성한 Parquet 파일에서 메타데이터를 추출하는 AWS Glue 크롤러를 생성합니다. 이번에는 기본 분류자를 사용합니다. 다음 단계를 완료하세요.
- AWS Glue 콘솔에서 겉옷 탐색 창에서
- 왼쪽 메뉴에서 크롤러 생성.
- 에 크롤러 속성 설정 페이지에서 blog-glue-parquet-contact와 같은 새 크롤러의 이름을 제공한 다음 선택합니다. 다음 보기.
- 에 데이터 소스 및 분류자를 선택하세요. 페이지, 선택 아직 for 데이터 소스 구성.
- 왼쪽 메뉴에서 데이터 저장소 추가.
- 럭셔리 S3 경로, 찾아보기
s3://${BUCKET_NAME}/output/parquet/
.
꼭 골라보세요 parquet
폴더 안의 파일이 아니라 폴더 안에 있는 파일입니다.
- 필수 조건 섹션에서 생성된 IAM 역할을 선택하거나 새 IAM 역할 생성 (예 :
AWSGlueServiceNotebookRoleBlog
)를 선택하고 다음 보기. - 에 출력 및 일정 설정 페이지, 아래 출력 구성선택한다.
blog_glue_xml
for 데이터베이스. - 엔터 버튼
parquet_
테이블에 추가된 접두사(선택 사항) 및 아래 크롤러 일정, 주파수를 다음으로 설정해 두세요. 주문형. - 왼쪽 메뉴에서 다음 보기.
- 모든 매개변수를 검토하고 선택하세요. 크롤러 생성.
이제 크롤러를 실행할 수 있으며 완료하는 데 1~2분 정도 걸립니다.
XML 파일의 스키마와 유사한 AWS Glue 데이터 카탈로그에서 Parquet 파일에 대해 새로 생성된 스키마를 미리 볼 수 있습니다.
이제 우리는 Athena에서 사용하기에 적합한 데이터를 보유하고 있습니다. 다음 섹션에서는 Athena를 사용하여 데이터 쿼리를 수행합니다.
Athena를 사용하여 Parquet 파일 쿼리
Athena는 쿼리를 지원하지 않습니다. XML 파일 형식, 보다 효율적인 데이터 쿼리 및 사용을 위해 XML 파일을 Parquet로 변환한 이유입니다. 점 표기법 복합 유형 및 중첩 구조를 쿼리합니다.
다음 예제 코드에서는 점 표기법을 사용하여 중첩된 데이터를 쿼리합니다.
이제 기술 1을 완료했으므로 기술 2에 대해 알아보겠습니다.
기술 2: 추론 및 고정 스키마와 함께 AWS Glue DynamicFrames 사용
이전 섹션에서는 AWS Glue 크롤러를 사용하여 테이블을 생성하고, AWS Glue 작업을 사용하여 파일을 Parquet 형식으로 변환하고, Athena를 사용하여 Parquet 데이터에 액세스하는 작은 XML 파일을 처리하는 프로세스를 다루었습니다. 그러나 크롤러는 초과하는 XML 파일을 처리할 때 제한 사항에 직면합니다. 1MB 크기. 이 섹션에서는 Athena를 사용하여 개별 이벤트를 추출하고 분석을 수행하기 위해 추가 구문 분석이 필요한 대용량 XML 파일을 일괄 처리하는 주제를 자세히 살펴봅니다.
우리의 접근 방식에는 AWS Glue를 통해 XML 파일을 읽는 것이 포함됩니다. DynamicFrames, 추론된 스키마와 고정된 스키마를 모두 사용합니다. 그런 다음 다음을 사용하여 Parquet 형식의 개별 이벤트를 추출합니다. 관계화하다 Athena를 사용하여 원활하게 쿼리하고 분석할 수 있습니다.
이 솔루션을 구현하려면 다음 상위 수준 단계를 완료합니다.
- XML 파일을 읽고 분석하기 위해 AWS Glue 노트북을 생성합니다.
-
DynamicFrames
과InferSchema
XML 파일을 읽으려면. - 배열의 중첩을 해제하려면 Relationalize 함수를 사용하세요.
- 데이터를 Parquet 형식으로 변환합니다.
- Athena를 사용하여 Parquet 데이터를 쿼리합니다.
- 이전 단계를 반복하되 이번에는 스키마를
DynamicFrames
사용하는 대신InferSchema
.
전기 자동차 인구 데이터 XML 파일에는 response
루트 수준에서 태그를 지정합니다. 이 태그에는 다음의 배열이 포함되어 있습니다. row
그 안에 중첩된 태그입니다. 행 태그는 제조사, 모델 및 기타 관련 세부정보를 포함하여 차량에 대한 정보를 제공하는 또 다른 행 태그 세트를 포함하는 배열입니다. 다음 스크린샷은 예를 보여줍니다.
AWS Glue 노트북 생성
AWS Glue 노트북을 생성하려면 다음 단계를 완료하십시오.
- 열기 AWS 글루 스튜디오 콘솔, 선택 작업 탐색 창에서
- 선택 주피터 수첩 선택하고 만들기.
- 다음과 같이 AWS Glue 작업의 이름을 입력합니다.
blog_glue_xml_job_Jupyter
. - 필수 구성 요소에서 생성한 역할을 선택합니다(
AWSGlueServiceNotebookRoleBlog
).
AWS Glue 노트북에는 데이터베이스를 쿼리하고 출력을 Amazon S3에 쓰는 방법을 보여주는 기존 예제가 함께 제공됩니다.
- 다음 스크린샷에 표시된 대로 제한 시간(분)을 조정하고 셀을 실행하여 AWS Glue 대화형 세션을 생성합니다.
기본 변수 생성
대화형 세션을 생성한 후 노트북 끝에서 다음 변수를 사용하여 새 셀을 생성합니다(자체 버킷 이름 제공).
스키마를 추론하는 XML 파일 읽기
스키마를 전달하지 않으면 DynamicFrame
, 파일의 스키마를 유추합니다. 동적 프레임을 사용하여 데이터를 읽으려면 다음 명령을 사용할 수 있습니다.
DynamicFrame 스키마 인쇄
다음 코드를 사용하여 스키마를 인쇄합니다.
스키마는 다음과 같은 중첩 구조를 보여줍니다. row
여러 요소를 포함하는 배열입니다. 이 구조를 라인으로 중첩 해제하려면 AWS Glue를 사용할 수 있습니다. 관계화하다 변환:
우리는 행 배열 내에 포함된 정보에만 관심이 있으며 다음 명령을 사용하여 스키마를 볼 수 있습니다.
열 이름에는 다음이 포함됩니다. row.row
, 이는 데이터세트의 배열 구조 및 배열 열에 해당합니다. 이 게시물에서는 열 이름을 바꾸지 않습니다. 이에 대한 지침은 다음을 참조하세요. AWS Glue를 사용하여 데이터 파일의 열 이름 동적 매핑 및 이름 바꾸기 자동화: 1부. 그런 다음 다음 명령을 사용하여 데이터를 Parquet 형식으로 변환하고 AWS Glue 테이블을 생성할 수 있습니다.
AWS 접착제 DynamicFrame
데이터 카탈로그에서 스키마를 생성하고 업데이트하기 위해 ETL 스크립트에서 사용할 수 있는 기능을 제공합니다. 우리는 updateBehavior
Data Catalog에서 직접 테이블을 생성하는 매개변수입니다. 이 접근 방식을 사용하면 AWS Glue 작업이 완료된 후 AWS Glue 크롤러를 실행할 필요가 없습니다.
스키마를 설정하여 XML 파일 읽기
파일을 읽는 또 다른 방법은 스키마를 미리 정의하는 것입니다. 이렇게 하려면 다음 단계를 완료하세요.
- AWS Glue 데이터 유형을 가져옵니다.
- XML 파일에 대한 스키마를 만듭니다.
- XML 파일을 읽을 때 스키마를 전달합니다.
- 이전과 같이 데이터 세트를 중첩 해제합니다.
- 데이터 세트를 Parquet로 변환하고 AWS Glue 테이블을 생성합니다.
Athena를 사용하여 테이블 쿼리
이제 두 테이블을 모두 생성했으므로 Athena를 사용하여 테이블을 쿼리할 수 있습니다. 예를 들어 다음 쿼리를 사용할 수 있습니다.
정리
이 게시물에서는 IAM 역할, AWS Glue Jupyter 노트북, AWS Glue 데이터 카탈로그에 두 개의 테이블을 생성했습니다. 또한 일부 파일을 S3 버킷에 업로드했습니다. 이러한 개체를 정리하려면 다음 단계를 완료하세요.
- IAM 콘솔에서 생성한 역할을 삭제합니다.
- AWS Glue Studio 콘솔에서 사용자 지정 분류자, 크롤러, ETL 작업 및 Jupyter 노트북을 삭제합니다.
- AWS Glue 데이터 카탈로그로 이동하여 생성한 테이블을 삭제합니다.
- Amazon S3 콘솔에서 생성한 버킷으로 이동하여 이름이 지정된 폴더를 삭제합니다.
temp
,infer_schema
및no_infer_schema
.
주요 요점
AWS Glue에는 다음과 같은 기능이 있습니다. InferSchema
AWS Glue에서 DynamicFrames
. 포함된 데이터를 기반으로 데이터 프레임의 구조를 자동으로 파악합니다. 대조적으로, 스키마를 정의한다는 것은 데이터를 로드하기 전에 데이터 프레임의 구조가 어떻게 되어야 하는지 명시적으로 기술하는 것을 의미합니다.
텍스트 기반 형식인 XML은 열의 데이터 유형을 제한하지 않습니다. 이로 인해 InferSchema 함수에 문제가 발생할 수 있습니다. 예를 들어 첫 번째 실행에서 값이 2인 열 A가 있는 파일은 열 A가 정수인 Parquet 파일이 됩니다. 두 번째 실행에서는 새 파일에 값 C가 포함된 열 A가 포함되어 열 A가 문자열로 포함된 Parquet 파일이 생성됩니다. 이제 S3에는 두 개의 파일이 있는데, 각 파일에는 서로 다른 데이터 유형의 열 A가 있어 다운스트림에 문제가 발생할 수 있습니다.
중첩 구조나 배열과 같은 복잡한 데이터 유형에서도 마찬가지입니다. 예를 들어, 파일에 다음과 같은 태그 항목이 하나 있는 경우 transaction
, 구조체로 추론됩니다. 그러나 다른 파일에 동일한 태그가 있으면 배열로 추론됩니다.
이러한 데이터 유형 문제에도 불구하고 InferSchema
스키마를 모르거나 수동으로 정의하는 것이 비실용적일 때 유용합니다. 그러나 규모가 크거나 지속적으로 변화하는 데이터세트에는 적합하지 않습니다. 특히 복잡한 데이터 유형의 경우 스키마를 정의하는 것이 더 정확하지만 수동 작업이 필요하고 데이터 변경에 융통성이 없는 등의 문제가 있습니다.
InferSchema
잘못된 데이터 유형 추론 및 null 값 처리 문제와 같은 제한 사항이 있습니다. 스키마 정의에는 수동 작업 및 잠재적인 오류와 같은 제한 사항도 있습니다.
스키마 추론과 정의 중에서 선택하는 것은 프로젝트의 요구 사항에 따라 다릅니다. InferSchema는 소규모 데이터 세트를 빠르게 탐색하는 데 적합하지만, 스키마 정의는 정확성과 일관성이 필요한 크고 복잡한 데이터 세트에 더 좋습니다. 각 방법의 장단점과 제약 조건을 고려하여 프로젝트에 가장 적합한 방법을 선택하세요.
결론
이 게시물에서는 AWS Glue를 사용하여 XML 데이터를 관리하는 두 가지 기술을 살펴보았습니다. 각 기술은 귀하가 직면할 수 있는 특정 요구 사항과 과제를 해결하도록 맞춤화되었습니다.
기술 1은 그래픽 인터페이스를 선호하는 사람들을 위한 사용자 친화적인 경로를 제공합니다. AWS Glue 크롤러와 시각적 편집기를 사용하여 XML 파일의 테이블 구조를 손쉽게 정의할 수 있습니다. 이 접근 방식은 데이터 관리 프로세스를 단순화하며 데이터를 처리하는 간단한 방법을 찾는 사람들에게 특히 매력적입니다.
그러나 크롤러에는 특히 1MB보다 큰 행이 있는 XML 파일을 처리할 때 제한 사항이 있다는 것을 알고 있습니다. 이것이 기술 2가 구출되는 곳입니다. AWS Glue를 활용하여 DynamicFrames
추론된 스키마와 고정된 스키마를 모두 사용하고 AWS Glue 노트북을 사용하면 모든 크기의 XML 파일을 효율적으로 처리할 수 있습니다. 이 방법은 1MB 제한을 초과하는 행이 있는 XML 파일에 대해서도 원활한 처리를 보장하는 강력한 솔루션을 제공합니다.
데이터 관리의 세계를 탐색할 때 툴킷에 이러한 기술을 포함하면 프로젝트의 특정 요구 사항에 따라 정보에 입각한 결정을 내릴 수 있습니다. 기술 1의 단순성을 선호하든 기술 2의 확장성을 선호하든 AWS Glue는 XML 데이터를 효과적으로 처리하는 데 필요한 유연성을 제공합니다.
저자에 관하여
나브니트 슈클라분석에 중점을 둔 AWS 전문가 솔루션 아키텍트로 활동하고 있습니다. 그는 고객이 데이터에서 귀중한 통찰력을 발견하도록 지원하는 데 강한 열정을 가지고 있습니다. 그는 전문 지식을 통해 기업이 정보에 입각한 데이터 중심 선택에 도달할 수 있도록 지원하는 혁신적인 솔루션을 구축합니다. 특히 Navnit Shukla는 "Data Wrangling on AWS."라는 책의 뛰어난 저자입니다.
패트릭 뮬러 AWS에서 수석 데이터 랩 설계자로 일하고 있습니다. 그의 주요 책임은 고객이 자신의 아이디어를 즉시 생산 가능한 데이터 제품으로 전환할 수 있도록 지원하는 것입니다. 여가 시간에는 Patrick은 축구, 영화 감상, 여행을 즐깁니다.
아모그 가이콰드 Amazon Web Services의 수석 솔루션 개발자입니다. 그는 글로벌 고객이 AWS에서 AI/ML 솔루션을 구축하고 배포하도록 돕습니다. 그의 업무는 주로 컴퓨터 비전 및 자연어 처리에 중점을 두고 고객이 지속 가능성을 위해 AI/ML 워크로드를 최적화하도록 지원합니다. Amogh는 기계 학습을 전문으로 하는 컴퓨터 공학 석사 학위를 받았습니다.
쉴라 소노네 AWS의 수석 레지던트 아키텍트입니다. 그녀는 AWS 고객이 데이터, 분석, AI/ML 워크로드 및 구현 가속화에 대해 정보를 바탕으로 선택하고 절충할 수 있도록 돕습니다. 여가 시간에는 가족과 함께 테니스 코트에서 즐거운 시간을 보냅니다.
- SEO 기반 콘텐츠 및 PR 배포. 오늘 증폭하십시오.
- PlatoData.Network 수직 생성 Ai. 자신에게 권한을 부여하십시오. 여기에서 액세스하십시오.
- PlatoAiStream. 웹3 인텔리전스. 지식 증폭. 여기에서 액세스하십시오.
- 플라톤ESG. 탄소, 클린테크, 에너지, 환경, 태양광, 폐기물 관리. 여기에서 액세스하십시오.
- PlatoHealth. 생명 공학 및 임상 시험 인텔리전스. 여기에서 액세스하십시오.
- 출처: https://aws.amazon.com/blogs/big-data/process-and-analyze-highly-nested-and-large-xml-files-using-aws-glue-and-amazon-athena/
- :있다
- :이다
- :아니
- :어디
- $UP
- 1
- 10
- 100
- 12
- 121
- 13
- 14
- 1994
- 250
- 26
- 53
- 7
- 8
- 9
- a
- 소개
- 추상
- 가속하는
- ACCESS
- 접근성
- 달성
- 가로질러
- 동작
- 더하다
- 추가
- 추가
- 주소
- 후
- 나이
- AI / ML
- All
- 수
- 허용
- 수
- 또한
- 대안
- 아마존
- 아마존 아테나
- Amazon Web Services
- an
- 분석
- 분석
- 분석하다
- 분석하는
- 및
- 다른
- 어떤
- 아파치
- 정치
- 어플리케이션
- 신청
- 접근
- 구혼
- 아키텍처
- 있군요
- 배열
- AS
- 지원
- 돕는
- At
- 저자
- 자동적으로
- 가능
- AWS
- AWS 접착제
- 뒤로
- 기반으로
- 기본
- BE
- 때문에
- 전에
- 시작하다
- 존재
- BEST
- 더 나은
- 사이에
- 공백
- 책
- 두
- 빌드
- 사업
- 비자 면제 프로그램에 해당하는 국가의 시민권을 가지고 있지만
- by
- 라는
- CAN
- 목록
- 원인
- 세포
- 과제
- 이전 단계로 돌아가기
- 변경
- 변화
- 선택
- 왼쪽 메뉴에서
- City
- 분류
- 클라이언트
- 암호
- 단
- 열
- COM
- 제공
- 공통의
- 일반적으로
- 완전한
- 진행완료
- 복잡한
- 컴퓨터
- 컴퓨터 과학
- 컴퓨터 비전
- 조건
- 행위
- 결합
- 고려
- 콘솔에서
- 끊임없이
- 제약
- 구축
- 포함하는
- 포함
- 이 포함되어 있습니다
- 대조
- 제어
- 변하게 하다
- 변환
- 비용 효율적인
- 비용 효율적인 솔루션
- 군
- 법원
- 적용
- 러
- 만들
- 만든
- 만들기
- 결정적인
- 관습
- 고객
- 고객
- 데이터
- 데이터 통합
- 데이터 관리
- 데이터 중심
- 데이터베이스
- 데이터 세트
- 취급
- 결정
- 태만
- 밝히다
- 정의
- 동굴
- 보여줍니다
- 따라
- 배포
- 설계
- 상세한
- 세부설명
- 개발자
- 다른
- 어려운
- 디지털
- 디지털 시대
- 직접
- 발견
- 뚜렷한
- do
- 하지 않습니다
- 한
- 말라
- DOT
- ...동안
- 동적
- 마다
- 완화
- 용이하게
- 쉽게
- 편집자
- 효과
- 효과적으로
- 효율성
- 효율적인
- 효율적으로
- 노력
- 자연스럽게
- 전기
- 전기 자동차
- 요소
- 채용
- 능력을 키우다
- 힘을 실어
- 빈
- 가능
- 가능
- 교전
- end
- 엔진
- 강화
- 확인
- 보장
- 엔터 버튼
- 열광
- 항목
- 오류
- 특히
- 에테르 (ETH)
- 조차
- 이벤트
- 모든
- 예
- 넘다
- 교환
- 전문적 지식
- 탐구
- 탐험
- 탐험 한
- 추출물
- 추출
- 가족
- 특색
- 특징
- 도
- 입양 부모로서의 귀하의 적합성을 결정하기 위해 미국 이민국에
- 파일
- 재원
- 먼저,
- 고정
- 유연성
- 초점
- 집중
- 수행원
- 럭셔리
- 체재
- FRAME
- 무료
- 진동수
- 에
- 기능
- 이득
- 범용
- 생성
- 글로벌
- Go
- 골
- Government
- 큰
- 핸들
- 처리
- 발생
- 마구
- 있다
- 데
- he
- 건강 관리
- 심장
- 도움
- 도움이
- 도움이
- 그녀의
- 고수준
- 고도로
- 그의
- 방법
- How To
- 그러나
- HTML
- HTTP
- HTTPS
- IAM
- 이상
- 아이디어
- 통합 인증
- if
- 설명하다
- 구현
- 구현
- 구현
- import
- 개선
- 개선하는
- in
- 포함
- 개인
- 개인
- 산업
- 정보
- 정보
- 인프라
- 혁신적인
- 내부
- 통찰력
- 를 받아야 하는 미국 여행자
- 명령
- 통합
- 완성
- 대화형
- 관심있는
- 인터페이스
- 으로
- 포함
- 문제
- IT
- 그
- 일
- 작업
- JPG
- JSON
- 주피터 수첩
- 유지
- 알아
- 실험실
- 언어
- 넓은
- 큰
- 지도
- 배우다
- 배우기
- 레벨
- 처럼
- 제한
- 한정
- 한계
- 라인
- 라인
- 하중
- 로드
- 논리
- 찾고
- 기계
- 기계 학습
- 본관
- 주로
- 확인
- 유튜브 영상을 만드는 것은
- 구축
- 관리
- 조작
- 수동으로
- .
- 매핑
- 석사
- XNUMX월..
- 방법
- 메뉴
- 메타 데이터
- 방법
- 분
- 모델
- 배우기
- 보다 효율적으로
- 가장
- 움직임
- 영화 산업
- 여러
- name
- 이름
- 이름
- 자연의
- 자연어
- 자연 언어 처리
- 이동
- 카테고리
- 필요한
- 필요
- 요구
- 신제품
- 새로운
- 다음 것
- 특히
- 수첩
- 지금
- 번호
- 사물
- of
- 제공
- on
- ONE
- 만
- 행정부
- 최적의
- 최적화
- 최적화
- 옵션
- or
- 주문
- 조직
- 유래
- 기타
- 우리의
- 아웃
- 출력
- 위에
- 극복하다
- 자신의
- 페이지
- 빵
- 매개 변수
- 매개 변수
- 부품
- 특별히
- 패스
- 통로
- 패트릭
- 수행
- 성능
- 권한
- 선택
- 플라톤
- 플라톤 데이터 인텔리전스
- 플라토데이터
- 연주
- 정책
- 인구
- 소유
- 게시하다
- 가능성
- 정확한
- 취하다
- 전제 조건
- 시사
- 너무 이른
- 문제
- 방법
- 처리
- 처리
- 프로덕트
- 프로젝트
- 프로젝트
- 속성
- 제공
- 제공
- 게시
- 목적
- Python
- 쿼리
- 빠른
- 차라리
- 읽기
- 손쉽게
- 읽기
- 이유
- 접수
- 인식
- 참조
- 관련된
- 요구조건 니즈
- 구출
- 의지
- 응답
- 책임
- REST
- 얽매다
- 제한
- 결과
- 강력한
- 직위별
- 뿌리
- 열
- 달리기
- 같은
- 찜하기
- 스칼라
- 확장성
- 확장성
- 과학
- 스크립트
- 원활한
- 완벽하게
- 둘째
- 섹션
- 참조
- 연장자
- 서비스
- 세션
- 세트
- 설정
- 몇몇의
- 그녀
- 껍질
- 영상을
- 표시
- 표시
- 쇼
- 비슷한
- 단순, 간단, 편리
- 간단
- 단순화
- 단일
- 크기
- 작은
- So
- 축구
- 해결책
- 솔루션
- 일부
- 출처
- 지우면 좋을거같음 . SM
- 불꽃
- 전문가
- 전문
- 구체적인
- 구체적으로
- 속도
- 지출
- SQL
- 표준
- 시작
- 주 정부
- 성명서
- 진술
- 단계
- 단계
- 저장
- 저장
- 똑 바른
- 유선
- 끈
- 강한
- 구조
- 구조
- 스튜디오
- 성공
- 이러한
- 적당한
- SUPPORT
- 확인
- 지속 가능성
- 시스템은
- 테이블
- TAG
- 맞춤형
- 받아
- 소요
- 작업
- 기법
- 테니스
- 보다
- 그
- XNUMXD덴탈의
- 정보
- 세계
- 그들의
- 그들
- 그때
- 그곳에.
- Bowman의
- 그들
- 이
- 그
- 을 통하여
- 시간
- Title
- 제목의
- 에
- 오늘의
- 툴킷
- 상단
- 화제
- 변환
- 변환
- 여행
- 선회
- 지도 시간
- 두
- 유형
- 유형
- 궁극의
- 아래에
- 업데이트
- 업데이트
- 업로드
- us
- 유용성
- 사용
- 익숙한
- 사용자
- 시간을 아껴주는 인터페이스
- 사용하기 쉬운
- 사용
- 사용
- 보통
- 활용
- 가치 있는
- 가치
- 마케팅은:
- 자동차
- 버전
- 를 통해
- 관측
- 보기
- 시력
- 시청
- 방법..
- we
- 웹
- 웹 서비스
- 뭐
- 언제
- 이므로
- 여부
- 어느
- 누구
- why
- 의지
- 과
- 이내
- 없이
- 작업
- 워크플로우
- 워크 플로우
- 일
- 세계
- 쓰다
- XML
- 당신
- 너의
- 제퍼 넷