postgreSQL 테이블스페이스 생성

DB 용량이 늘어나게 되면 물리적인 저장장치를 분리해서 DB를 나눠 저장하는 경우가 생기게 되는데 이때 테이블 스페이스(Table Space)라는 단위가 사용됩니다. 참고로 테이블 스페이스는 오라클이나 포스트그래스큐엘 등과 같은 엔터프라이즈 DBMS에서만 지원하는 경우가 많습니다.

먼저 저장장치의 용량을 확인할 필요가 있습니다.

df -h

그리고 테이블스페이스로 사용할 디렉토리를 생성해야 하구요.

mkdir pg_tablespace_geocode2
chown postgres pg_tablespace_geocode2

psql을 통해 다음처럼 테이블 스페이스를 생성할 수 있습니다. 참고로 psql을 실행하기 위해서는 postgres 사용자의 권한을 필요하며 su – postgres와 같은 명령이 필요합니다.

create tablespace ts_geocode2 location '/usr/GeoService-Xr/webHome/user-files/pg_tablespace_geocode2';

테이블 스페이스를 확인하는 명령은 다음과 같습니다.

\db

특정 테이블 스페이스에 DB를 생성하는 명령은 다음과 같습니다.

CREATE DATABASE gis_20240219 WITH TABLESPACE = ts_geocode2;

테이블 모델링

테이블의 나무 재질에 대한 쉐이딩은 다음과 같습니다. 아래의 쉐이더 코드에 대한 출처는 이미지를 클릭하면 확인할 수 있습니다.

모델링 한 최종 결과는 다음과 같습니다.

평면(Plane)의 앞면과 뒷면에 서로 다른 텍스쳐 맵핑

먼저 매시에 대한 UV 데이터를 앞면과 뒷면에 대해 서로 다르게 설정해 줘야 함. 위의 화면을 보면 앞면에 대한 UV는 처음부터 기본사용으로 생성된 UVMap이고 뒷면은 Back으로 직접 생성한 경우이다. UVMap을 클릭해 선택하면 UV Editor의 UV 설정값이 앞면에 대한 이미지에 맞춰 있어야 하고 Back을 클릭해 선택하면 UV 설정값이 뒷면에 대한 이미지에 맞춰 있어야 함.

이렇게 UV를 앞면과 뒷면에 대해 설정해 뒀다면 Shader 편집에서 다음처럼 노드를 구성함. 주의해서 봐야할 노드는 Attribute 노드를 통해 직접 사용할 UV 데이터를 지정할 수 있다는 점과 Geometry 노드를 통해 앞면과 뒷면에 대한 구분이 가능하다는 점임.