자료의 형태는 log 이며, 이 로그를 분석해서 통계치를 계산하는 프로그램을 만들려고하고있습니다.
* 정확히 말하자면.. 로그라기보다는 통화이력(CDR) 자료입니다 *
그런데 이 내역이 워낙에 세밀하여 300여개의 컬럼이 넘어갑니다. 또한 자료의 발생양과 빈도도 많아 30분~1시간 간격으로 몇십만줄의 자료가
마구 쏟아지기때문에 postgres 의 copy 명령으로 밀어넣고 있습니다.
그런데 하나의 테이블에 밀어넣기만하다보니, 통계를 내기위해 값을 긁어오거나, 여러 사용자가 조회할경우 성능이 많이 떨어질것이 우려됩니다.
입력되는 거대한 컬럼의 테이블을 여러개로 나눠서 복사하여 그 자료를 분산하여 계산에 이용하고싶습니다.
1) 특정 테이블에 자료가 입력 되고, 그 트랜젝션이 완료되면 !
2) 자동으로 그 특정테이블의 있는 자료를 여러개의 테이블에 분할하여 복사가 가능할까요?
3) 분할해서 다른테이블로 옮기려는 목적은 부하의 분할과, 보기쉽게 참고할수있도록 로그를 분석하고싶기때문입니다.
4) 원본을 남겨놓는 이유는 그 원본데이터로 과금을 산정하는 다른소프트가 있기 때문입니다
이것을 가능하게 하려면 어떤부분을 참고해야할까요?
메뉴얼을 뒤져본결과 아무래도 트리거, pl/SQL 이란 부분을 참조해야할것같은데
제가 맞게 생각하고있는것인지 모르겠습니다....
조언해주시면 그쪽으로 알아보겠습니다 |