독립형 쇼핑몰 사이트 구축 – ⑤ 데이터베이스 구축

독립형 쇼핑몰 사이트 구축 – ⑤ 데이터베이스 구축

데이터베이스 설계 및 구축 절차

데이터베이스가 구축된다는 것은 어떤 방법론에 의해 업무분석과 설계가 이루어지고 이를 기반으로 물리적인 데이터베이스를 구현하는 과정이다. 정보공학에서 정의하는 데이터베이스 설계 및 구축 절차는 [그림. 데이터베이스 설계, 구축 절차]과 같다.

그림. 데이터베이스 설계, 구축 절차

논리 설계와 물리 설계

논리설계는 데이터모델, 프로세스 모델, 관계모델로 이루어진다. 이 중 데이터베이스 설계를 위한 핵심이 데이터모델이다. 데이터모델이란 현실세계를 개체(Entity), 관계(Relationship), 속성(Attribute)으로 도식화한 것으로서 ERD(Entity Relationship Diagram)라 부른다.

설계의 두 번째 단계는 논리적 설계를 통해 생성된 논리적 데이터베이스 구조로부터 실제 컴퓨터에 저장하게 될 데이터베이스의 구성을 결정하고 구조를 정의하여야 한다. 이를 데이터베이스의 물리적 구조 설계라 한다.

물리적 구조 설계란, 행과 열, 테이블로 표현되었던 논리적 데이터를 파일이나 레코드, 필드와 같은 물리적 데이터로 전환하고, 데이터베이스에서 해당 데이터를 찾을 수 있는 방법 및 접근 경로를 정의하는 것으로서, 실제 데이터베이스 구축의 준비 과정이기도 하다. 물리적 구조 설계는 아래의 세 단계를 거치게 된다.

첫째, 논리 모델인 ERD(Entity Relationship Diagram)를 테이블관계도(Table Relationship Diagram)로 전환한다. 테이블 관계도로 전환할 때 핵심적으로 검증할 부분은 데이터베이스의 성능 부분이다. 테이블의 정규화와 데이터베이스의 성능을 고려하여 테이블의 모습을 설계하는 것이 중요하다. 또한 입력, 수정, 삭제 시 데이터의 무결성 유지를 위한 규칙을 정의한다.

둘째, 테이블 관계 이외의 데이터베이스와 관련된 기타사항(오브젝트, 접근방법, 트랜잭션 분석, 저장 방법)을 설계한다. 인덱스(Index), 접근방법, 뷰(View), 트랜젝션 설계 등 논리적 데이터모델에서 설계하지 않은 기타 데이터베이스와 관련된 사항을 설계한다.

셋째, 분산 데이터베이스를 설계한다. 본 지사 간 또는 기업 내외부에 동일한 데이터를 복제(Replication)하여 사용할 경우에 필요하다.

결과물로서 데이터베이스 환경 정의서, 인덱스 설계서, 뷰 설계서, 용량 설계서, 각종 오브젝트 설계서, 분산환경 설계서 등이 만들어지고, 이에 근거하여 실제 데이터베이스를 구축하게 된다. 물리적 구조는 데이터베이스가 사용되는 환경, 업무처리 절차, 그리고 사용자의 정보 요구에 적합하도록 설계되어야 한다. 따라서 논리설계 단계를 거쳐 데이터베이스가 구현된 뒤
의 성능평가 결과에 따라 물리적 설계를 재조정하는 과정을 거치게 된다. 이는 데이터베이스의 성능요구 분석 과정에서 고려되어야 하며 특히 트랜잭션의 처리 성능과 관련된 사항이 검토되어야 한다. 여기에는 응답시간(Response Time), 트랜잭션 처리율(Transaction Throughput), 질의 최적화(Query Optimization) 등이 포함된다.

논리설계와 물리설계의 자세한 과정 및 산출물에 대해서는 ‘이커머스 기획 > 사이트 기획> 사이트 설계’ 를 참조하기 바란다.

데이터베이스 구축

구축 단계에서는 물리 설계의 산출물들에 근거하여 실제적으로 테이블 스페이스를 할당하고 데이터베이스 객체를 생성하게 된다. 이어서 쇼핑몰 운영을 위한 기초자료의 수집과 분류를 통한 데이터 가공, 입력, 편집, 그리고 검색시스템과 사용자 인터페이스가 만들어진다. 이 과정은 이어지는 ‘기초DB 구축’ 부분에 별도로 상세히 기술되어 있다.

데이터베이스는 정보공학을 전공하지 않은 학생이나 사업자에게는 낯선 단어일 수 있으나, 최소한의 범위 내에서라도 직접 데이터베이스 구축을 해 보게 되면 상품 특성 또는 고객별 주문 현황 등에 대한 이해를 높일 수 있다. 쇼핑몰 구축 시 필수적으로 구축되어야 할 데이터베이스는 아래와 같다.

  1. 상품정보 DB
  2. 카테고리 정보 DB
  3. 주문정보 DB
  4. 장바구니 정보 DB
  5. 고객 정보 DB
  6. 거래선 정보 DB
  7. 반품 교환ž환불 DB

출처

NCS 학습모듈: 10.영업판매 > 03.판매 > 01.e-비지니스 > 02.전자상거래 (일부 수정)

코멘트 제출

Don`t copy text!