'NTO'에 해당되는 글 1

  1. 2010/08/06 “매시업 활성화, 오픈API가 정답은 아니다”
우리는 흔히 웹2.0과 매시업 서비스를 이야기하면서 오픈API(응용프로그램인터페이스)가 중요하다고 말합니다. 정보를 가진 회사나 기관들이 자신의 정보를 API 형태로 공개하고, 외부에서는 그 오픈API로 여러 서비스를 조합(매시업)해 새로운 서비스를 만드는 것이 필요하다는 것입니다.

이런 오픈API에 대한 중요성에 대해서는 IT업계가 전반적으로 공감을 표하고 있습니다. 구글, 야후 등 글로벌 인터넷 업체들은 물론, 네이버∙다음∙네이트 등 국내 포털도 2~3년 전부터 서비스의 일부 API를 공개하기 시작했습니다.

사용자 삽입 이미지

그런데 IT업계의 대세로 떠오른 오픈API에 대해 “효율적이지 않다”고 주장하는 이가 있습니다. 한국마이크로소프트 NTO(National Technology Officer)인 김명호 상무입니다. 그는 “표준화 되지 않은 오픈API는 개발자들의 막노동(?)을 유발한다”고 외칩니다.

그의 이야기는 이렇습니다.

“어느 영화 사이트에서 2002년 나온 영화 중에 별점 3점 이상, 주연배우가 더블 캐스팅인 영화만 뽑아서 보고 싶다고 가정해 봅시다. 이 영화 사이트에서 이런 정보에 대한 API를 공개해 놓았을까요? 기본적인 배우 정보, 별점 정보, 연도 정보는 오픈API로 제공할 수 있지만 이런 복잡한 정보는 제공하지 않습니다. 때문에 이 사이트에서 필요한 정보를 이용하려면 여러 API를 취합해서 일일이 코딩을 해야 합니다. 상당한 시간과 노력이 필요하게 되죠”

“아울러 여러 영화 사이트에서 공통의 정보를 찾고 싶다고 할 때 각 사이트에서 제공하는 API가 똑 같은 형태를 가지고 있을까요? 아닙니다. 각 사이트들의 오픈API는 제각각 다릅니다. 이렇게 되면 표준화된 개발 기술이 있을 수 없고, 막 코딩에 의존하게 됩니다”

사실지금까지의 오픈API는 제공 기업이나 기관에 의존할 수 밖에 없었습니다. 제공자가 ‘고객들이 이런 정보를 원하겠지’라고 자의적으로 판단한 정보들만 이용할 수 있는 것입니다.

김 상무는 이에 대한 대안으로 오픈 데이터 프로토콜(ODATA)을 제시합니다.

ODATA는 정보 공개 및 사용 표준의 이름입니다. 기업이나 기관이 보유한 정보를 공개해도 동일한 규격의 데이터가 없으면 사용하기 어렵기 때문에 오픈 데이터 프로토콜(Open Data Protocol)을 통해 많은 데이터의 상호운용성을 확보하자는 것입니다.

즉 정보를 가진 기업이나 기관이 독자적인 API를 만들어 공개할 것이 아니라 표준화 된 방식으로 데이터를 공개하자는 운동입니다. 이렇게 표준화된 방식으로 공개된 정보를 표준화된 방식으로 이용하도록 규칙을 만들면, 코딩 노력을 최소화한 채로 다양한 매시업 서비스를 만들 수 있다는 주장입니다.

이를 위해 중요한 것은 ‘질의’입니다. 일방적으로 정보를 제공받는 것이 아니라 질의를 통해 정보를 얻는 것입니다. 앞서 언급한 영화 사이트의 예를 들면 표준 방식(ATOM)으로 프로토콜에 별점이 얼마이고, 몇 년에 개봉했고 하는 질의를 할 수 있는 기능을 더 넣으면 일일이 코딩하지 않고도 원하는 정보를 얻을 수 있게 됩니다.

정보제공자는 API가 아니라 자신의 정보를 ODATA로 제공하고, 자신이 가지고 있는 정보에 대한 메타데이터만 알려주면 이용자들이 원하는 정보를 질의를 통해 얻어갈 수 있다는 것입니다.

김 상무의 말입니다. “이런 방식으로 정보를 공개하면. 구조화된 데이터를 표현하는 방식이 균일해집니다. 사이트마다 서로 다른 방식이 아니라 균일한 방식으로 데이터 제공 가능하게 되죠. URL만 사용해서 웹 페이지 엑세스 하듯이 어떤 정보를 달라고 질의할 수 있고, 이런 정보만 달라고 필터링 할 수 있습니다”
사용자 삽입 이미지

이런 ODATA 운동은 MS가 처음 주창해 여러 글로벌 IT기업들이 참여하고 있다고 합니다. 글로벌 영화정보사이트 넷플릭스가 ODATA를 통해 영화 정보를 제공하고 있고, 페이스북도 오픈API와 함께 ODATA 형식으로 정보를 내보내고 있습니다. IBM도 ODATA 운동에 동참하고 있고, MS의 클라우드 플랫폼인 윈도 애저, SQL 애저도 ODATA를 채택하고 있습니다.

최근 국내에서도 공공정보를 공개해야 한다는 공감대가 많이 형성돼 있습니다. 그런데 어떻게 공개하는 것이 가장 효율적이고 합리적인지는 논의되지 않고 있는 것 같습니다. 무조건 오픈API를 통한 정보공개를 당연시 하고 있습니다.

꼭 ODATA가 아니더라도 표준화된 방식으로 공개하고 표준화된 방식으로 이용하자는 제안은 귀담아 들을 필요가 있는 것 같습니다.
2010/08/06 13:13 2010/08/06 13:13