

# 배열 또는 맵을 행으로 분해 변환 사용
<a name="transforms-explode-array"></a>

 **분해** 변환을 사용하면 중첩된 구조에서 조작하기 쉬운 개별 행으로 값을 추출할 수 있습니다. 배열의 경우 이 변환은 행의 다른 열에 대한 값을 복제하여 배열의 각 값에 대해 행을 생성합니다. 맵의 경우 이 변환은 열 및 행의 다른 열을 키와 값으로 사용해 각 항목에 대한 행을 생성합니다.

 예를 들어 다음 데이터 세트에는 값이 여러 개인 'category' 배열 열이 있습니다.


| product\$1id | category | 
| --- | --- | 
| 1 | [sports, winter] | 
| 2 | [garden, tools] | 
| 3 | [videogames] | 
| 4 | [game, boardgame, social] | 
| 5 | [] | 

 'category' 열을 같은 이름의 열로 분해하면 해당 열이 재정의됩니다. 다음 결과를 얻기 위해 NULL을 포함하도록 선택할 수 있습니다(설명을 위해 정렬됨).


| product\$1id | category | 
| --- | --- | 
| 1 | sports | 
| 1 | winter | 
| 2 | garden | 
| 2 | tool | 
| 3 | videogames | 
| 4 | 게임 | 
| 4 | boardgame | 
| 4 | social | 
| 5 |  | 

**배열 또는 맵을 행으로 분해 변환을 추가하려면:**

1. 리소스 패널을 열고 **분해 또는 맵을 행으로 분해**를 선택하여 작업 다이어그램에 새 변환을 추가합니다. 노드를 추가할 때 선택한 노드가 상위 노드가 됩니다.

1. (선택 사항) **노드 속성** 탭에서 작업 다이어그램에 노드 이름을 입력할 수 있습니다. 노드 상위 항목이 아직 선택되지 않은 경우 [노드 상위 항목(Node parents)] 목록에서 변환의 입력 소스로 사용할 노드를 선택합니다.

1. **변환** 탭에서 분해할 열을 선택합니다(배열 또는 맵 유형이어야 함). 그런 다음 배열 항목에 대한 열 이름 또는 맵을 분해하는 경우 키와 값에 대한 열 이름을 입력합니다.

1. (선택 사항) **변환** 탭에서 분해할 열이 NULL이거나 구조가 비어 있는 경우 기본적으로 분해된 데이터 세트에서 해당 열은 생략됩니다. 행을 유지하고 싶으면(새 열을 NULL로 표시) 'NULL 포함'을 선택합니다.  
![\[스크린샷에는 배열 또는 맵을 행으로 분해 변환의 변환 탭이 나와 있습니다.\]](http://docs.aws.amazon.com/ko_kr/glue/latest/dg/images/transforms-explode-array-transform-tab.png)