스키마(schema)란? 스키마에 대한 모든 것 2023

Hedley Digital logo white
웹사이트의 전환을 높여줄
구글 상위 노출 서비스를 체험하세요.

관련 검색을 하다보면 자주 만나는 단어로 ‘스키마(schema)’가 있습니다. 이는 실제로 어렵지 않은 내용이지만 단어들이 생소하게 나열되어 있어 어려움을 느낍니다. 오늘은 컴퓨터 과학에서 말하는 데이터베이스 언어 ‘스키마(schema)’ 와 ‘SEO(검색엔진최적화)에서 쓰이는 스키마 마크업’ 에 대해 이야기 해보도록 하겠습니다.

스키마란 무엇인가? (스키마의 정의 / 스키마의 개념이해)

키마 뜻

오늘 이야기 드릴 ‘스키마(Schema)’란 무엇인가에 대한 이야기를 하기전에 가장먼저 이 ‘스키마’라는 단어가 어디에서부터 생겨난 것인지에 대한 이해가 바탕이 되면 전반적인 이해가 쉬우시리라 생각 됩니다.

스키마라는 단어는 ‘형태’ 또는 ‘모양’을 뜻하는 그리스어에서 유래하였습니다. 그러나 스키마를 구체적으로 정의하는 방법은 콘텍스트 즉, 말하고자 하는 맥락이나 전후 사정에 따라 분류되며 달라지기 때문에 그 의미와 상황에 따라 ‘데이터과학’ ‘교육’ ‘마케팅 및 *SEO(검색 엔진 최적화)’ 또는 ‘심리학’과 같은 분야와 밀접한 관련이 있으며 실제 해당 분야에서 쓰여지고 있습니다.

*SEO(검색 엔진 최적화)에 대해 좀 더 많은 정보를 알고 싶으시다면 ‘여기‘를 참고해주세요.

검색창에 스키마라는 단어를 검색하면 연관검색어로 함께 따라 나오는 ‘스키마 심리학’ 의 경우 역시 위와 같습니다. 심리학의 경우 정신건강의학에서 인지행동치료시 적용할 수 있는 스키마 이론이라는 개념으로 오늘 우리가 이야기 할 컴퓨터 과학에서 말하는 데이터 베이스 기반에 대한 스키마와는 다르므로 이 점을 구분하면 되실 것 같습니다.

데이터 베이스 스키마란?

데이터베이스 스키마란 이미지 헤들리 디지털

 

데이터베이스 스키마란 이미지

그러면 오늘 우리가 이야기 할 컴퓨터 데이터 베이스 스키마에 대해 이야기해 보겠습니다. 위에서 잠깐 언급하였듯 스키마란 한마디로 정의하면 ‘데이터의 구조’ 또는 ‘데이터베이스의 설계’ 를 의미합니다. 데이터베이스 스키마는 논리적 보기를 나타내는 일종의 골격구조와 같은데요, 데이터베이스의 데이터에 적용되는 모든 제약 조건을 이 골격구조로 고안해 냅니다. 스키마는 데이터베이스를 구성하는 데이터 개체(entity), 속성(Attribute), 관계(Relationship) 및 데이터 조작시 데이터 값들이 갖는 제약 조건 등에 관해 전반적으로 정의 합니다.

정리하면, 사용자들이 즉 검색을 하는 사람(=결과값을 기다리는 사람=뷰어)들이 여러가지 각각의 궁금증을 가지고 검색을 하게 되었을 때 맨 아래 저장되어 있는 데이터베이스까지 가 닿아 정보를 얻기까지의 구조, 그 일련의 데이터 처리 프로세스, 자료들간의 전반적인 협력관계 등이 아주 긴밀하게 움직이게 되는데 이를 ‘형식 언어’로 나타낸 데이터베이스의 구조를 뜻 합니다. 이를 데이터베이스의 구조와 제약조건에 관한 전반적인 명세를 기술한 메타데이터의 집합이다 라고 설명합니다.

스키마 설계도 이미지 헤들리 디지털

 

스키마 설계도 이미지

스키마는 자료의 구조나 표현방법, 자료간의 관계를 형식 언어로 정의한 구조이기 때문에 데이터베이스 관리 시스템이 ‘주어진 설정’에 따라 데이터베이스 스키마를 생성합니다. 자신이 생성한 데이터베이스 스키마를 참조하여 명령을 수행하기 때문에 스키마 통합을 위한 이상적인 요구사항이 있는데 이를 ‘스키마의 일반적인 특징’ 이라 하고 있습니다.

아래 나열된 네가지 요구사항은 생성되는 스키마의 세부구조에 영향을 줍니다. 특정 응용 프로그램에서 이러한 모든 조건이 충족되어야 하는 것은 아니지만 이 요구사항이 부합되면 가장 이상적인 결과를 아웃풋해 낼 수 있으므로 이를 참조합니다.

중복보존

입력 매핑에 지정된 각 중첩 요소는 데이터베이스 스키마 관계에도 있습니다.


확장된 겹침 보존

소스의 겹치는 요소와 연결된 소스별 요소는 데이터베이스 스키마로 전달됩니다.


표준화

원본 데이터의 독립 엔터티 및 관계는 데이터베이스 스키마에서 동일한 관계로 함께 그룹화 되어서는 안됩니다. 특히, 소스 특정 요소는 그룹이 독립적인 엔터티(entity) 또는 관계를 같은 위치에 배치하는 경우 겹치는 스키마 요소로 그룹화 해서는 안됩니다.


미니멀리즘

데이터베이스 스키마의 요소가 삭제되면 데이터베이스 스키마가 이상적이지 않습니다.


  • 스키마는 *데이터 사전(Data Dictionary)에 저장되며, 다른 이름으로는 메타데이터 라고도 합니다. (*데이터 사전(Data Dictionary): 사전 체계에 따라 관리되는 메타데이터를 포함한 특별한 형태의 데이터베이스. 정보 체계와 데이터베이스 내의 데이터를 설계, 모니터, 문서화, 보호, 통제를 하는 데 사용하는 자료의 성격을 표현한다.)

  • 현실세계의 특정한 한 부분의 표현으로써 특정 데이터 모델을 이용하여 만들어 집니다.

  • 시간에 따라 불변인 특성을 갖습니다.

  • 데이터의 구조적 특성을 의미하며, *인스턴스에 의해 규정됩니다. (*인스턴스:추상적으로 정의된 개념에 대하여 실체적인 값이나 개체를 형성하는 것을 이르는 말)

스키마의 3계층

스키마의 3계층 설명 이미지 헤들리 디지털

 

스키마의 3계층 설명 이미지

스키마는 하나의 데이터베이스를 사용자의 관점에 따라 외부 스키마,개념 스키마,내부 스키마 이렇게 세 개의 단계로 나누는데 이를 ‘스키마의 3계층’ 이라 합니다. 3층 구조로 되어 있다 말하기도 하며 아래에서 자세하게 이야기 나눌 것이지만 아주 간단하게 설명하자면 1.사용자 관점에서 논리적 구조를 기술한 외부 스키마, 2.물리적인 저장장치의 면에서 논리적인 구조를 기술한 내부 스키마, 3.조직체나 기관의 관점에서 논리적 구조를 기술한 개념스키마를 말합니다. 스키마의 3계층은 데이터 베이스 스키마에서 가장 중요한 핵심 개념이라고 볼 수 있습니다.

외부 스키마(External Schema)

외부 스키마 설명 이미지 헤들리 디지털

 

외부 스키마 설명 이미지

스키마의 3계층은 사용자의 관점에 따라 나뉜다고 하였는데요 그 첫번째로 외부 스키마는 프로그래머나 사용자의 입장(관점)에서 데이터베이스의 모습으로 조직의 일부분을 정의한 것 입니다. 최종 사용자 또는 응용 프로그램이 액세스하는 데이터를 나타내며 최종 사용자에게 맞춤형정보를 제공합니다. 외부 스키마는 ‘서브 스키마’ 또는 ‘사용자 뷰(view)’ 라고도 이야기 하며 이는 모두 같은 말 입니다. 해당 관점에서 데이터베이스를 접근할 수 있는 ‘외형적 개념’ 입니다. 외부 스키마는 사용자가 보는 관점이 중심이기 때문에 사용자에 따라 다르게 출력되며, 여러 개가 존재합니다. 예를들어, 사용자가 각각의 관점에서 무언가의 정보를 얻고자 합니다. <운전면허시험>에 대한 전반적인 정보를 얻고자 할 때, 어떤 사용자는 운전면허시험 이라고 검색할 것이고 또 어떤 사용자는 운전면허증, 다른 사람은 운전면허필기시험 이라고 검색할 것 입니다. 사용자가 검색하기 나름이겠죠. 이것이 바로 외부 스키마는 여러 개 존재할 수 있다 즉 이는 데이터베이스의 일부로 볼 수 있다 라는 말 입니다.

위의 내용을 바탕으로 <외부 스키마의 특징>을 정리해보자면 아래와 같습니다.

▶실제로 존재하는 데이터들을 어떻게 구조하고 어떻게 배치하여 화면을 통해 사용자에게 보여줄 것인가

▶ 외부 스키마는 전체 데이터베이스의 어느 한 논리적인 ‘부분’으로 볼 수 있기 때문에 외부스키마는 곧 서브스키마(sub schema)라고도 한다.

▶하나의 데이터베이스에 여러 개의 외부 스키마가 존재할 수 있으며(=사용자가 여러가지 각각의 방향으로 검색어를 넣기 때문) 하나의 외부 스키마를 여러 개의 응용프로그램이나 사용자가 공용으로 할 수 있다.

▶같은 데이터 베이스에 대해서도 서로 다른 관점을 정의할 수 있도록 허용한다.

▶일반 사용자는 질의어(*SQL)를 이용하여 데이터베이스(DB)를 쉽게 사용할 수 있다. (*SQL [ structured query language ] : 데이터베이스를 사용할 때, 데이터베이스에 접근할 수 있는 데이터베이스 하부 언어를 말한다. 구조화 질의어라고 한다.SQL은 영어로 되어 있어 초보자들도 쉽게 사용할 수 있다)

▶응용 프로그래머는 C, JAVA등의 언어를 사용하여 DB에 접근한다.

개념 스키마 (Conceptual Schema)

개념스키마 설명 이미지 헤들리 디지털

 

개념스키마 설명 이미지

가운데에 자리하고 있는 ‘개념 스키마’사용자 관점으로, 모든 응용 시스템과 사용자들이 필요로 하는 데이터를 통합한 조직 전체의 데이터베이스 구조를 논리적으로 정의(명세)한 것 입니다. 위의 외부스키마를 응용 인터페이스에서 맵핑(Mapping)을 통해 개념 스키마와 연동이 이루어 집니다. 내부 스키마 데이터를 외부 스키마에 매핑한다고 이야기합니다.

데이터베이스는 1.사람이 이해하는 논리구조와 2.컴퓨터가 이해하는 물리구조로 나뉘는데, 그 중 사람이 이해하는 논리구조가 바로 우리가 지금 이야기 하고 있는 두번째 특징인 개념스키마 입니다. 데이터베이스의 ‘전체’를 정의한 것으로 데이터 개체, 관계, 제약조건, 접근권한, 무결성 규칙등을 명세한 것이며 데이터베이스의 전체적인 구조를 우리가(사용자가) 알아볼 수 있게 표현한 것 입니다.

 

또한 일반적으로 앞을 생략한 채로 그냥 스키마 라고 이야기 하면 =개념스키마 라고 이해하면 됩니다.

 

내부 스키마(Internal Schema)

내부스키마 설명 이미지 헤들리 디지털

 

내부스키마 설명 이미지

마지막으로 가장 하부에 있는 ‘내부스키마’ 입니다. 바로 위의 개념 스키마가 우리(=사용자)들이 가지고 있는 개념에 바탕한 관점이라면 이번 내부스키마는 반대로 컴퓨터(=데이터베이스) 관점에서의 정의 입니다. 디스크 또는 물리적 저장 장치에 데이터의 물리적인 저장을 나타냅니다. 데이터베이스가 사용자들에게 제공되기 위해서 ‘실제적인 기계적 처리’에 의해서 분배되고 저장되어야 하는데 이렇게 기계적 처리를 하는 일련의 과정을 의미합니다.  두번째에서 설명한 개념스키마가 다시 저장 인터페이스를 통해 내부스키마로 세분화하여 물리적 저장장치까지 구조화 됩니다. 이런 일련의 프로세스를 스키마의 3계층 이라고 합니다.

내부스키마는 물리적 저장창지 관점에서의 정의라고 표현하며 이는 ‘실제 데이터베이스’를 저장하는 장치라는 뜻 입니다. 또한 물리적인 설계이고 즉 사용자들이 아무나 접근하면 안되기 때문에 DBA가 직접 관리합니다. (실제 하드디스크에 저장되어 있는 구조)

이렇게 스키마를 분리함으로써 얻는 장점은 정보의 독립성과 정보 중복의 배제 입니다.

이와 같은 이유로 첫번째로 설명했던 사용자 관점의 외부스키마가 여러 개 존재한다면, 내부스키마는 DB의 전체적인 구조로써 단 하나만 존재할 수 있습니다.

SEO(검색 엔진 최적화)와 스키마 = 스키마 마크업

스키마 마크업 이미지 헤들리 디지털

 

스키마 마크업 이미지

스키마는 그 의미나 상황에 따라 컴퓨터 과학, 심리학, 교육학 등 여러 곳에서 쓰여지고 있다고 하였습니다. 그 중 SEO에서의 스키마에 대해 알아보겠습니다 ‘구조화된 데이터’라고도 하는 스키마 마크업은 고유한 의미 어휘를 사용하는 검색 엔진의 언어 입니다. 사이트에 기술 SEO를 구현할 때 필요한 기술 중 하나로, 이를 통해 구글과 같은 검색 엔진이 더 잘 *크롤링 할 수 있으며 이보다 더 중요한 것은 결과적으로 사용자에게 더 정확하고 나은 결과를 제공하기 위해 사이트의 정보를 이해하기 위해 접목시키는 기술 입니다.

*크롤링 : 무수히 많은 컴퓨터에 분산 저장되어 있는 문서를 수집하여 검색 대상의 색인으로 포함시키는 기술. 어느 부류의 기술을 얼마나 빨리 검색 대상에 포함시키냐 하는 것이 우위를 결정하는 요소로서 최근 웹 검색의 중요성에 따라 발전되고 있다. <발췌: 구글 나무위키>

스키마 마크업(Schema Markup)

그럼 좀 더 구체적인 의미의 스키마 마크업(Schema Markup)에 대해 설명해 보도록 하겠습니다. 먼저, 스키마는 위에서 설명드린바와 같이 데이터베이스 안에서 검색엔진이 돌아 결과값을 아웃풋 하기 까지의 프로세스를 명세한 형식 언어라고 하였습니다. 사용자 눈에 보이진 않지만 데이터 베이스가 명령을 수행해 움직이는 일련의 과정 입니다. 

마크업은 간단히 말해서 검색 엔진이 사이트의 다양한 요소를 이해하는데 도움이 되는 일종의 구조화 된 데이터 어휘(또는 코딩 언어) 입니다. 이 코딩 언어를 통해 같은 검색이더라도 스키마 마크업을 통한다면 좀 더 유익하고 깊은 단계의 검색결과물을 도출해 낼 수 있게 됩니다. 더 많은 정보가 표시되어 검색될 수 있도록(사용자에게 보여질 수 있도록) 해당 프로그램이 마크업을 구현했기 때문입니다. 

스키마 마크업을 SEO에 접목시킴으로서 크게 기대해 볼 수 있는 점은, 검색을 수행하는 사용자에게 추가 정보를 제공하므로 이러한 요소가 포함된 결과물들이 다른 일반적인 검색 결과물들보다 눈에 더 띄므로 클릭률이 올라가게 될 수 있음입니다.일반적인 경험을 비추어 보면 좀 더 이해가 잘 되실겁니다. 

어떤 검색을 하였을 때 별점이라든가, 후기 또는 좀 더 상세하고 구체적인 카테고리의 표기 등이 검색결과에 보여지면 일반적인 검색결과보다 상세표기가 된 링크를 클릭했던 경험을 비추어 보세요. SERPs의 점유율을 높여 “좀 더 높은 클릭율 (CTR의 상승)”을 기대할 수 있습니다.

Q&A 스키마 마크업 적용 예시_헤들리 디지털

 

  • 사용자를 위해 고안된 스키마 마크업 : 웹사이트에 마크업이 있으면 사용자는 웹사이트가 무엇인지, 어디에 있는지, 무엇을 하는지, 비용이 얼마나 드는지, 별점은 어떤지, 후기는 어떤지 등 많은 것들을 볼 수 있습니다. 그런 이유로 어떤 사람들은 이 기술을 “가상 명함”이라고도 부르기 시작했습니다. 이는 사용자 중심의 개선사항 입니다. 검색 엔진은 사용자가 필요한 정보를 얻기 위해 존재합니다. 스키마 마크업이 바로 그 일을 합니다
 
  • SEO 에서 스키마 마크업이 왜 중요한가? : 스키마 마크업은 모든 종류의 콘텐츠 유형에 대해 웹사이트 순위를 높이는 데 도움이 됩니다. 위 헤들리 SEO 블로그에 적용된 Q&A스키마를 포함하여 다양한 유형의 데이터에 대한 데이터 마크업이 있습니다. (Q&A, 기업, 레스토랑, TV에피소드 및 등급, 책 리뷰 별점, 영화 산업, 소프트웨어 어플리케이션, 이벤트, 제품, 의료 등) 스키마 마크업을 사용하는 웹사이트는 마크업이 없는 회사보다 검색창에서 더 나은 순위를 차지합니다. 한 연구에 따르면 마크업이 있는 웹사이트는 이것이 없는 웹사이트보다 평균 4개의 순위가 더 높다고 나왔습니다. 더 높은 결과가 마크업만으로 인한 것인지는 완전히 명확하지 않지만 분명 상관관계가 있음을 확인하였습니다.다시말해, SEO 잠재력의 거대한 원천을 놓치고 있는 수백만 개의 웹사이트가 있습니다. 크업 기술을 사용하는 경우 자동으로 대부분의 경쟁업체보다 우위를 점하게 됩니다.

스키마 마크업(schema markup) 적용방법

사용자들에게 더 많은 정보를 제공함으로써 클릭율을 올리는 좀 더 구체화된 검색을 실현 시키는 스키마 마크업은 마이크로 데이터 형식의 고유한 의미론적 어휘를 사용하지만 대부분의 웹마스터들에게 익숙한 HTML 태그로 적용시킵니다. 그러므로 이를 위해 새로운 코딩 기술을 배울 필요가 없습니다. HTML Microdata 에 schema.org 어휘를 추가해주면 됩니다.

스키마org 홈페이지 이미지 헤들리 디지털

 

스키마org 홈페이지 이미지

Schema.org 홈페이지 바로가기

위의 캡쳐 화면은 Schema org 홈페이지 입니다. 스키마 마크업용 웹사이트는 구글, 블링 및 야후의 팀이 공동으로 노력한 결과물 입니다. Schema.org 은 산업간의 협력이라고 볼 수 있습니다. 이들이 만들어 낸 스키마 마크업이 바로 합의된 코드 마커 셋트 입니다.

▶ SEO에 스키마 마크업을 사용하는 방법 : 스키마 org 홈페이지에 가면 이를 적용시켜 사용하는 방법에 대해 1번부터 8번으로 나누어 단계별 적용방법이 자세하게 나와있으며, 이 순서를 통하여 본인의 홈페이지에 구글 검색 최적화를 위한 스키마 마크업 기술을 적용 할 수 있습니다.

마치며

스키마 도표 이미지 헤들리 디지털

 

스키마 도표 이미지

오늘은 ‘스키마’ 라고 하면 가장많은 개념을 일반적으로 이야기 하고 있는 ‘데이터베이스의 스키마‘ 와 SEO 스키마인 ‘스키마 마크업’에 대해 이야기 나눠봤습니다.

특히 마지막에 설명한 구글 검색 최적화를 위한 하나의 기술인 “스키마 마크업”에 주목해야 할 점은 이것만큼 간단하지만 이를 활용한 기업과 웹사이트가 거의 없다는 사실입니다. 이에따른 기본적인 마이크로 데이터를 배우고 적용시켜 구현하여 검색결과를 개선하면 다른 웹사이트들과의 경쟁에서 우위를 점할 수 있습니다.

맨 처음에 설명한 바와 같이 스키마 그 자체로는 그 의미에 따라 ‘데이터과학’ ‘교육’ ‘마케팅 및 SEO(검색 엔진 최적화)’ 또는 ‘심리학’과 같은 아주 다양한 분야와 밀접한 관련이 있으며 실제 해당 분야에서 쓰여지고 조금씩 다른 의미를 가지고 있다 말씀드렸는데요, 데이터과학에서의 스키마는 오늘 주로 설명드린 데이터베이스 이외에 ‘RDBMS의 정해진 구조로써 언급되는 스키마’, ‘mySQL에서 DB자체로써 언급되는 스키마’, ‘JSON, XML 에서 언급되는 스키마’ 등 데이터과학 전반적인 곳에서 스키마라는 개념이 쓰여지고 있습니다.

스키마 라는 단어를 검색해보면 그 이미지가 위의 사진과 같이 ‘나뭇가지’ 형태로 보여집니다. 이 단어가 개요, 구조, 형식이라는 뜻을 가진것과 같이 스키마 그 자체는 딱 하나가 아니라 상황과 문맥 등에 따라 큰 맥락이 같을 뿐 엄밀히 따지면 그 안에서 모두 다르므로 내가 알고자 하는 분야의 스키마를 정확히 알고자 한다면 관련하여 좀 더 깊은 검색과 공부가 필요한 내용임을 알려드리며 오늘 글을 마무리 합니다.

Hedley Digital logo white
더 커진 매출과, 효과적인 노출!
새롭고 강력한 상위노출 서비스를 시작하세요.

댓글 남기기