Dynamics AX 2012의 Data Partition 기능

Posted by Alvin You
2015. 1. 10. 03:03 Dynamics AX

Dynamics AX 2012 R2에서 볼 수 있는 강력한 기능 중에 Data Partition이라는 기능이 있습니다. 대부분 설치 후 Configuration 단계에서 스쳐 지나가듯 잊었을 기능일 텐데요. 오늘은 이 기능의 특징에 대해서 살펴볼까 합니다.

  • System Administration > Setup > Partitions

 

Partition은 Application Data를 분리하기 위한 기능이라고 보시면 됩니다. 갑자기 Application Data를 분리하면 어떤 장단점이 있을까라는 질문이 저의 뇌를 자극하는군요. 이 내용에 대해서는 제가 Googling한 내용을 마지막에 공유해 드리겠습니다.

Partition과 관련된 특징은 아래 내용을 참고하시면 됩니다.

  • 데이터에 대한 관리는 Table의 "SaveDataPerPartition" 속성을 통해 관리됩니다.
  • 파티션 단위로 여러 개의 회사 코드를 관리할 수 있습니다. 즉, Partition이 틀리다면 다른 파티션의 회사 코드도 중복해서 등록이 가능합니다.
  • Intercompany 는 동일 partition 내에서만 작동되며, Partition이 틀리다면 작동하지 않습니다.
  • 공유 System Data(Batch Job, AIF port 등)는 Partition 전 영역에 사용됩니다.
  • 공유 Application Data( User, Product, Location, Parties 등)는 해당 Partition내에서만 사용이 됩니다.

*)Partition을 분리하면 어떤 장단점이 있을까요?

제가 찾은 내용은 아래와 같습니다. 테스트 목적으로 Live 환경과 동일한 테스트 환경을 구축해서 사용할 수 있다는 내용입니다. QA, DEV 환경 구축을 위해서 Multiple AOS 환경이 아닌,Single AOS 환경에서 Data Partition 단위의 QA, DEV 환경을 만들어 프로젝트를 진행할 수 있다라는 의미로 저는 해석되어집니다.

http://www.axug.com/communities/alldiscussions/viewthread/?GroupId=205&MID=1852

I've used partitions mainly for testing purposes. It's a great way to quickly create a brand new environment without having to create a separate database. It's similar to creating a new DAT company, but it's more than that. It's a new environment but still using the same database. Theoretically, you can have a totally different suite of companies. In fact, a whole different set of data between partitions. However, there are a few things to consider when creating a partition:

1. Once a partition is created, there is no way to delete it.

2. You cannot navigate from one partition to another in a single client session. Therefore, you will need to create AX configuration files for each partition. You can have multiple client instances each in a different partition, but once a client comes up in a particular partition, it must stay in that partition until you close the session (i.e., close the client).

3. The idea behind the concept of partitions is to have a clean environment really for testing purposes. Therefore, it is not recommended to use partitions on production environments. Remember, creating a new partition still uses the same underlying database. If something goes wrong and a partition gets trashed, you're stuck with that partition since it can't be deleted.