Aaron H. Kim Fearless Integration Maniac

Distinguished field와 Promoted Property의 차이점


Schema개발시 metadata를 어떻게 expose할 것인가 하는 것은 중요한 선택의 문제입니다.
Distinguished field와 Promoted Property의 차이점을 모르는 상태에서 System을 디자인 하다보면,
본의아니게 Performance를 떨어뜨리는 결과를 가져올 수도 있고,
원인모를 에러로 인해 한참을 소비하게 될 수도 있습니다.

다음은 Distinguished field와 Promoted Property의 차이점을 보여주는 표입니다.

Distinguished field

  1. field 길이에 제한이 없다.
  2. Routing을 위해 사용할 수 없다.
  3. Property Schema를 따로 사용하지 않는다.
  4. Standard Pipeline Components에선 Access가 불가능하며
       Custom Pipeline Components에서만

    http://schemas.microsoft.com/BizTalk/2003/btsDistinguishedFields

   네임스페이스를 통해 xpath로 Access할 수 있다.

  1. MessageName.RecordName.ChildRecordName 와 같은 형태로 접근한다.
  1. field 길이는 256 characters로 제한된다.
  2. messagebox에 publish하고 subscribe하는 routing용도로 사용된다.
  3. Property Schema를 따로 만들어 사용한다.
  4. Distinguished field에 비해 사용할수 있는 xsd type이 제한적이다.
  5. MessageName(PropertySchemaName.PromotedPropertyName)와 같은 형태로 접근한다.

추가로 어느 쪽을 사용할지 선택하는데 있어 도움을 드리자면,

Distinguished field는 Promoted Property와 달리 Subscription DB에 저장되지 않으므로 Performance에 있어서 비교적 좀 덜 영향을 미친다고 할 수 있습니다.

따라서 다음과 같은 경우를 제외하고는 Distinguished field를 사용하는것이 현명하다고 할 수 있습니다.

  1. Routing
  2. Tracking
  3. Correlating
  4. Custom Pipeline behavior.

==> 추가 2009/12/01
내용 추가합니다. Property Schema 의 element 는 Simple type 만 사용해야 합니다.

Note : In order for an XML record to be promoted, its ContentType property must be set to SimpleContent. All promoted properties, regardless of whether they are populated by XML elements, attributes, or records, have a maximum length of 255 characters. - 7 p. BizTalk 2006 Recipes

Similar Posts

Comments