분할 데이터베이스 솔루션 개요

NOTE
이 기능은 Adobe Commerce 인스턴스에서만 사용할 수 있습니다.
IMPORTANT
데이터베이스 분할 기능은 더 이상 사용되지 않음 Adobe Commerce 버전 2.4.2에서. 다음을 참조하십시오 분할 데이터베이스에서 단일 데이터베이스로 되돌리기.

Adobe Commerce은 Commerce 애플리케이션의 다양한 기능 영역에 대해 세 개의 개별 마스터 데이터베이스를 사용할 수 있는 기능을 포함하여 몇 가지 확장성 이점을 제공합니다.

체크아웃, 주문 및 제품 데이터는 각각 선택적으로 복제할 수 있는 별도의 마스터 데이터베이스를 사용할 수 있습니다. 이러한 구분은 필요에 따라 웹 사이트 체크아웃, 주문 관리 활동, 웹 사이트 탐색 및 머천다이징 활동에서 로드 크기를 독립적으로 조정합니다. 이러한 변경 사항은 데이터베이스 계층의 크기를 조정할 수 있는 방법에 상당한 유연성을 제공합니다.

INFO
클라우드 인프라의 Adobe Commerce은 아님 이 기능을 지원합니다.

다음 ResourceConnections 클래스는 Commerce 애플리케이션에 대한 통합 MySQL 데이터베이스 연결을 제공합니다. 마스터 데이터베이스에 대한 쿼리의 경우 CQRS(명령 쿼리 권한 분리) 데이터베이스 패턴을 구현합니다. 이 패턴은 읽기 및 쓰기 쿼리를 적절한 데이터베이스로 라우팅하기 위한 논리를 처리합니다. 개발자는 사용 중인 구성을 알 필요가 없으며 별도의 읽기 및 쓰기 데이터베이스 연결이 없습니다.

선택적 데이터베이스 복제를 설정하면 다음과 같은 이점이 있습니다.

  • 데이터 백업
  • 마스터 데이터베이스에 영향을 주지 않고 데이터 분석
  • 확장성

MySQL 데이터베이스는 비동기식으로 복제됩니다. 즉, 마스터로부터 업데이트를 받기 위해 슬레이브를 영구적으로 연결할 필요가 없습니다.

다음 그림은 이 기능의 작동 방식을 보여 줍니다.

Adobe Commerce은 서로 다른 데이터베이스를 사용하여 테이블을 저장합니다

Magento Open Source에서 하나의 마스터 데이터베이스만 사용됩니다.

Adobe Commerce은 복제를 위해 세 개의 마스터 데이터베이스와 구성 가능한 개수의 슬레이브 데이터베이스를 사용합니다. Adobe Commerce은 데이터베이스 연결을 위한 단일 인터페이스를 제공하므로 성능이 더 빨라지고 확장성이 향상됩니다.

구성 옵션

분할 데이터베이스 성능 솔루션을 디자인하는 방식 때문에 사용자 지정 코드 및 설치된 구성 요소가 할 수 없음 다음 중 하나를 수행합니다.

  • 데이터베이스에 직접 쓰기(대신 Adobe Commerce 데이터베이스 인터페이스를 사용해야 함)
  • 영업 또는 견적 데이터베이스에 영향을 주는 JOIN 사용
  • 체크아웃, 판매 또는 기본 데이터베이스의 테이블에 외래 키 사용
WARNING
구성 요소 개발자에게 문의하여 구성 요소가 이전 작업을 수행하는지 확인합니다. 이 경우 다음 중 하나만 선택해야 합니다.
  • 구성 요소 개발자에게 구성 요소 업데이트를 요청합니다.
  • 구성 요소를 있는 그대로 사용 없이 분할 데이터베이스 솔루션.
  • 분할 데이터베이스 솔루션을 사용할 수 있도록 구성 요소를 제거합니다.

즉, 다음 중 하나를 수행할 수 있습니다.

  • 분할 데이터베이스 솔루션 구성 다음 이전 Commerce을 프로덕션에 투입합니다.

    Adobe은 Commerce 소프트웨어를 설치한 후 가능한 한 빨리 분할 데이터베이스를 구성하는 것을 권장합니다.

  • 수동으로 구성 분할 데이터베이스 솔루션.

    이미 구성 요소를 설치했거나 Commerce이 이미 프로덕션에 있는 경우 이 작업을 수행해야 합니다. (금지 프로덕션 시스템을 업데이트합니다. 개발 시스템을 업데이트하고 테스트한 후 변경 내용을 동기화합니다.)

    note warning
    WARNING
    두 개의 추가 데이터베이스 인스턴스를 수동으로 백업해야 합니다. Commerce은 기본 데이터베이스 인스턴스만 백업합니다. 다음 magento setup:backup --db 명령 및 관리 옵션은 추가 테이블을 백업하지 않습니다.

전제 조건

분할 데이터베이스를 사용하려면 모든 호스트에 세 개의 MySQL 마스터 데이터베이스를 설정해야 합니다(Commerce 서버에 있는 세 데이터베이스 모두, 별도의 서버에 있는 각 데이터베이스 등). 다음 항목이 마스터 데이터베이스 및 데이터베이스는 다음과 같이 사용됩니다.

  • 체크아웃 테이블용 마스터 데이터베이스 1개
  • 판매 테이블(또는 라고 함)용 하나의 마스터 데이터베이스 Order Management 시스템, 또는 OMS, 표)
  • 나머지 Commerce 2 애플리케이션 테이블에 대한 하나의 마스터 데이터베이스

또한 선택적으로 다음을 원하는 수만큼 설정할 수 있습니다. 노예 로드 밸런서 및 백업 역할을 하는 데이터베이스.

이 안내서에서는 마스터 데이터베이스만 설정하는 방법에 대해 설명합니다. 원하는 경우 슬레이브 데이터베이스를 설정할 수 있도록 샘플 구성 및 참조를 제공합니다.

이 안내서에서는 세 가지 마스터 데이터베이스의 이름을 다음과 같이 지정합니다.

  • magento_quote
  • magento_sales
  • magento

(원하는 대로 데이터베이스 이름을 지정할 수 있습니다.)

recommendation-more-help
386822bd-e32c-40a8-81c2-ed90ad1e198c