이 AEM Headless 개발자 여정의 부분에서는 콘텐츠 구조를 모델링하는 방법에 대해 알아볼 수 있습니다. 그런 다음 콘텐츠 조각 모델 및 콘텐츠 조각을 사용하여 여러 채널에서 재사용할 수 있는 AEM(Adobe Experience Manager) 구조를 이해합니다.
처음에, CMS Headless 개발에 대해 알아보기 headless 콘텐츠 전달 및 이를 사용해야 하는 이유를 설명합니다. 그런 다음 AEM Headless 시작하기에서 자체 프로젝트 컨텍스트의 AEM Headless에 대해 알아보았습니다.
AEM Headless 번역 여정의 이전 문서인 AEM Headless를 사용한 첫 번째 경험으로의 경로에서 첫 번째 프로젝트 구현에 필요한 단계에 대해 알아보았습니다. 문서를 읽고 나면 다음과 같은 작업을 수행할 수 있습니다.
이 문서는 해당 기본 사항을 기본으로 하며, 이를 통해 자체 AEM Headless 프로젝트를 준비하는 방법을 이해할 수 있습니다.
데이터 모델링은 큰 필드로 관계형 데이터베이스를 개발할 때 사용됩니다. 이용할 수 있는 많은 책과 온라인 정보원이 있다.
AEM Headless와 함께 사용하기 위해 데이터를 모델링할 때 관심 있는 측면만 고려합니다.
저 밖의 세상은 넓고 불편합니다..
그럴지도, 아닐지도 모르지만, 그것은 확실히 큰 것입니다 복잡하 세상 밖에. 데이터 모델링은 특정 목적에 필요한 특정 정보를 사용하여 매우(매우) 작은 하위 섹션의 단순화 표현을 정의하는 데 사용됩니다.
AEM이 콘텐츠를 다루면서 데이터 모델링을 콘텐츠 모델링이라고 합니다.
예:
학교는 많지만 서로 공통되는 사항들은 다양합니다.
그러한 작은 사례는 끝도 없이 열거할 수 있습니다. 그러나 애플리케이션이 간단한 작업을 수행하도록 하려면 정보를 필수 사항으로 제한할 수 있습니다.
예: 지역의 전체 학교에 맞는 특별 이벤트 광고
설명하고자 하는 내용은 다음과 같습니다. 엔티티 - 기본적으로 정보를 저장할 "항목"입니다.
항목에 대해 저장할 정보는 교사 이름과 자격 요건과 같은 특성(속성)입니다.
엔티티 사이에는 다양한 관계가 있습니다. 예를 들어 학교에는 일반적으로 교장 한 명과 여러 명의 교사들이 있습니다(교장 또한 교사임).
이 정보와 정보 간의 관계를 분석 및 정의하는 프로세스를 콘텐츠 모델링이라고 합니다.
종종 다음을 작성하여 시작할 수 있습니다 개념 스키마 엔티티와 해당 관계를 설명합니다. 일반적으로 수준이 높습니다(개념적).
상태가 안정되면 모델을 속성 및 관계와 함께 엔티티를 설명하는 논리 스키마로 변환할 수 있습니다. 이 수준에서 정의를 면밀히 검토하여 중복을 제거하고 설계를 최적화합니다.
시나리오의 복잡성에 따라 이 두 단계를 병합하는 경우가 있습니다.
예를 들어 Head Teacher
및 Teacher
에 대한 별도의 엔티티 또는 간단히 Teacher
모델에 추가 속성이 필요합니까?
전체 라이프사이클에서 콘텐츠의 정확성과 일관성을 유지하려면 데이터 무결성이 필요합니다. 여기에는 콘텐츠 작성자가 쉽게 이해할 수 있도록 저장 내용과 위치가 포함되므로 다음 사항이 중요합니다.
데이터 중복은 콘텐츠 구조 내의 동일한 정보가 두 번 저장되는 경우 발생합니다. 이 작업은 콘텐츠를 만드는 경우 혼동을 주고 쿼리하는 경우 오류와 저장소 공간 오용이 발생할 수 있으므로 피해야 합니다.
구조를 최적화하여 콘텐츠 생성과 쿼리 모두에 있어 성능을 개선할 수 있습니다.
모든 항목에는 밸런싱 작업이 필요하지만 너무 복잡하거나 수준이 너무 많은 구조를 생성하는 경우
콘텐츠 생성 작성자에게 혼란을 야기할 수 있습니다.
쿼리가 여러 중첩된(참조된) 콘텐츠 조각에 액세스하여 필요한 콘텐츠를 검색해야 하는 경우 성능에 심각한 영향을 줄 수 있습니다.
데이터 모델링은 관계 데이터베이스 개발 시 자주 사용되는 설정된 기술 세트이므로 콘텐츠 모델링은 AEM Headless에 어떤 의미입니까?
애플리케이션이 AEM에서 필요한 콘텐츠를 일관되고 효율적으로 요청 및 수신하도록 하려면 이 콘텐츠를 구조화해야 합니다.
즉, 애플리케이션이 응답 형식을 미리 알고 있으므로 처리 방법을 알고 있습니다. 포함된 내용과 사용 방법을 결정하는 데 구문 분석할 수 있는 자유 형식 콘텐츠를 수신하는 것보다 더 쉽습니다.
AEM은 콘텐츠 조각을 사용하여 콘텐츠를 Headless 방식으로 애플리케이션에 게재하는 데 필요한 구조를 제공합니다.
콘텐츠 모델 구조는
콘텐츠 조각 모델은 콘텐츠 검색에 사용되는 AEM GraphQL 스키마의 기반으로도 사용됩니다. 자세한 내용은 후반부 섹션을 참조하십시오.
콘텐츠에 대한 요청은 표준 GraphQL API 구현을 사용자 정의하는 AEM GraphQL API를 사용하여 처리합니다. AEM GraphQL API를 사용하면 콘텐츠 조각에서 (복잡한) 쿼리를 수행할 수 있습니다(각 쿼리는 특정 모델 유형에 따라 다름).
그런 다음 반환된 콘텐츠를 애플리케이션에서 사용할 수 있습니다.
콘텐츠 조각 모델은 콘텐츠의 구조를 정의할 수 있는 다양한 메커니즘을 제공합니다.
콘텐츠 조각 모델은 엔티티에 대해 설명합니다.
모델을 만들 수 있도록 구성 브라우저의 콘텐츠 조각 기능을 활성화해야 합니다.
콘텐츠 작성자가 콘텐츠 조각을 만들 때 선택할 모델을 파악할 수 있도록 모델의 이름을 지정해야 합니다.
모델 내부:
예:
AEM은 콘텐츠를 모델링할 수 있도록 다음 데이터 유형을 제공합니다.
두 가지 데이터 유형은 특정 조각 외부 콘텐츠에 대한 참조를 제공합니다.
콘텐츠 참조
이는 모든 유형의 다른 콘텐츠에 대한 간단한 참조를 제공합니다.
예를 들어 지정된 위치에서 이미지를 참조할 수 있습니다.
조각 참조
이는 다른 콘텐츠 조각에 대한 참조를 제공합니다.
이러한 유형의 참조는 콘텐츠 모델링에 필요한 관계를 도입하여 중첩된 콘텐츠를 만드는 데 사용됩니다.
조각 작성자가 다음과 같은 작업을 수행할 수 있도록 데이터 유형을 구성할 수 있습니다.
처음에는 사이트의 콘텐츠 조각 모델을 활성화해야 합니다. 이 활성화는 구성 브라우저에서 수행됩니다(도구 > 일반 > 구성 브라우저 아래). 전역 항목을 구성하도록 선택하거나 구성을 만들 수 있습니다. 예:
추가 리소스 - 구성 브라우저의 콘텐츠 조각을 참조하십시오.
그런 다음 콘텐츠 조각 모델을 만들고 구조를 정의할 수 있습니다. 이 작업은 도구 > 에셋 > 콘텐츠 조각 모델에서 수행할 수 있습니다. 예:
추가 리소스 - 콘텐츠 조각 모델을 참조하십시오.
콘텐츠 조각은 항상 콘텐츠 조각 모델을 기반으로 합니다. 모델은 구조를 제공하고, 조각은 콘텐츠를 저장합니다.
콘텐츠 조각을 만드는 것이 실제로 콘텐츠를 만드는 첫 번째 단계입니다. 이 작업은 자산 > 파일 아래의 필수 폴더에서 만들기 > 콘텐츠 조각 을 사용하여 수행됩니다. 마법사가 단계를 안내합니다.
콘텐츠 조각은 생성 프로세스의 첫 번째 단계로 선택한 특정 콘텐츠 조각 모델을 기반으로 합니다.
조각이 생성되면 콘텐츠 조각 편집기에서 조각을 열 수 있습니다. 여기서 다음과 같은 작업을 수행할 수 있습니다.
적절한 모델을 선택하면 편집할 콘텐츠 조각이 콘텐츠 조각 편집기에서 열립니다.
추가 리소스 - 콘텐츠 조각을 사용하여 작업을 참조하십시오.
샘플의 기본 구조는 샘플 콘텐츠 조각 구조를 참조하십시오.
이제 구조를 모델링하고 이에 종속된 콘텐츠를 만드는 방법을 배웠으므로 다음 단계는 GraphQL 쿼리를 통해 콘텐츠 조각 콘텐츠에 액세스하고 검색하는 방법에 대해 알아보기입니다. 이렇게 하면 GraphQL에 대해 소개하고 설명한 다음 몇 가지 샘플 쿼리를 보고 실제로 작동하는 방식을 확인할 수 있습니다.