서비스 데이터 객체

서비스 데이터 객체 또는 서비스 데이터 오브젝트(service Data Objects)는 이종 데이터를 균일한 방식으로 접근할 수 있도록 하는 기술이다. SDO 사양은 2004년 오라클 (BEA)과 IBM 간의 공동 협력을 통해 개발되었으며, 자바 커뮤니티 프로세스에서 JSR 235에 의해 승인되었다. 사양 버전 2.0은 2005년 11월에 서비스 컴포넌트 아키텍처의 핵심 부분으로 도입되었다.

다른 기술과의 관계
원래 이 기술은 웹 데이터 객체 또는 WDO로 알려졌으며, IBM 웹스피어 애플리케이션 서버 5.1 및 IBM WebSphere Studio Application Developer 5.1.2에서 제공되었다. 다른 유사한 기술로는 JDO, EMF, JAXB 및 ADO.NET이 있다.

설계
서비스 데이터 객체는 구조적 계층과 다양한 서비스 제공 엔티티 간의 통신을 용이하게 하는 언어에 구애받지 않는 데이터 구조의 사용을 의미한다. 이들은 트리 구조를 루트 노드와 함께 사용해야 하며, 클라이언트 프로그램이 요소를 탐색할 수 있도록 탐색 메커니즘(너비/깊이 우선)을 제공한다. 객체는 정적(고정된 필드 수)이거나 무제한 필드를 허용하는 맵과 유사한 구조를 가진 동적일 수 있다. 이 사양은 모든 필드에 대한 메타데이터를 정의하며, 각 객체 그래프는 수신 프로그램이 더 효율적으로 작동할 수 있도록 변경 요약을 제공할 수도 있다.

개발자
이 사양은 2007년 4월부터 OASIS 회원 섹션 Open CSA 내에서 IBM, 로그 웨이브, 오라클, SAP, 시벨, 사이베이스, Xcalia, Software AG에 의해 개발되고 있다.Activities and announcements | OASIS Open CSA 협력 작업 및 자료는 업계 관계자들의 비공식 그룹인 Open SOA의 협업 플랫폼에 남아 있다.Home – Open SOA Collaboration

구현
다음 SDO 제품을 사용할 수 있다:

 Rogue Wave Software HydraSDO
 Xcalia (자바 및 .Net용)
 오라클 (데이터 서비스 통합기)| Oracle Data Service Integrator
 IBM (가상 XML 가든)
 IBM (WebSphere Process Server)

다음에서 SDO의 오픈 소스 구현을 찾을 수 있다:
 이클립스 퍼시스턴스 서비스 프로젝트 (이클립스링크)
 아파치 토스카니 자바 및 C++ 프로젝트
 프리파스칼에 포함된 fcl-sdo 라이브러리

 각주 

 외부 링크 
사양 버전 및 이력은 다음에서 찾을 수 있다.
 OASIS Open CSA의 최신 자료
 서비스 데이터 객체
 OpenSOA의 SDO 사양
 PHP용 서비스 데이터 객체 소개
 PHP의 SDO 및 SCA 확장 사용

분류:자바 사양 요청
분류:컴퓨터 네트워킹
분류:서비스 지향
분류:지속성