2012-01-11 3 views
1

이 질문은 PostgreSQL을 좋아하지만 일반적인 DB 질문입니다.분산 데이터베이스 구조

데이터베이스와 관련하여 스키마이라는 용어에 대해 궁금해했습니다. 최근 PostgreSQL을 사용하기로 전환했습니다. PostgreSQL은 기본 데이터베이스 구조에 중요한 의미가 있습니다. 다음

PostgreSQL의 랜드에

가 분산 된 구조이다

DB Server (`some-server.com:5432`) 
    >> Database (`fizz`) 
     >> Schema (`buzz`) 
      >> Table (`foo`) 

을 따라서 테이블 [foo] 대한 FQDN은 fizz.buzz.foo이다.

본인은 "데이터베이스"가 테이블의 논리적 그룹임을 이해합니다. 예를 들어, 조직은 모든 ​​POJO/VO가 유지되는 "도메인"데이터베이스, 모든 판매 관련 정보가 저장되는 "주문"데이터베이스 및 모든 로그 메시지가 향후 분석을 위해 전송되는 "로깅"데이터베이스를 가질 수 있습니다.

데이터베이스와 테이블 사이에이 "스키마"구문을 도입 한 것은 매우 혼란스럽고 PostgreSQL 문서는 나 자신과 같은 초보자에게 너무 무거워서 (좋은 예가 부족합니다). 알다.

누구든지 나에게이 "스키마"구조가 PostgreSQL의 영역 내에 있고 (데이터베이스와 테이블을 어떻게 관련시키는 지) 평범한 사람의 설명을 줄 수 있는지 궁금합니다. 그러나 그것이 의미하는 것이 궁금합니다. 데이터베이스 구조

미리 감사드립니다.

답변

1

스키마를 네임 스페이스로 생각하십시오. 스키마를 사용하여 테이블을 논리적으로 그룹화 할 수 있습니다 (예 : People 스키마). 또한 특정 스키마에 Customer 스키마를 볼 수 있도록 스키마에 보안을 할당 할 수 있지만 스키마는 Employee이 아닙니다. 이를 통해 우리는 객체 레벨 바로 위의 데이터베이스 레벨 아래 보안 수준을 세밀하게 제어 할 수 있습니다.

보안이 스키마를 사용하는 가장 중요한 이유 일 수 있지만 논리적 그룹화에도 보안이 사용되는 것을 보았습니다. 그것은 당신이 그들을 위해 필요한 것에 달려 있습니다.

+0

감사합니다. Eric! 훌륭한 응답! – IAmYourFaja