2017년 9월 17일 일요일

[Cassandra 레퍼런스] [Data Definition] Triggers


이 문서는 개인적인 목적이나 배포하기 위해서 복사할 수 있다. 출력물이든 디지털 문서든 각 복사본에 어떤 비용도 청구할 수 없고 모든 복사본에는 이 카피라이트 문구가 있어야 한다.




트리거는 다음에 의해 정의 된 이름으로 식별됩니다.

trigger_name ::=  identifier


CREATE TRIGGER

새 트리거를 생성할 때에는 CREATE TRIGGER 문을 사용합니다.

create_trigger_statement ::=  CREATE TRIGGER [ IF NOT EXISTS ] trigger_name
                                  ON table_name
                                  USING string

예를 들어 :

CREATE TRIGGER myTrigger ON myTable USING 'org.apache.cassandra.triggers.InvertedIndex';

트리거를 구성하는 실제 logic은 모든 Java (JVM) 언어로 작성 될 수 있으며 데이터베이스 외부에 존재합니다.
트리거 코드는 Cassandra 설치 디렉토리의 lib / triggers 서브 디렉토리에 놓으면 되고, 클러스터 시작 중에 로드되며 클러스터에 참여하는 모든 노드에 존재하게 됩니다.
요청 된 DML 문이 발생하기 전에 테이블에 정의 된 트리거가 실행되어 트랜잭션의 원자성을 보장합니다.


DROP TRIGGER

트리거를 삭제할 때에는 DROP TRIGGER 문을 사용합니다.

drop_trigger_statement ::=  DROP TRIGGER [ IF EXISTS ] trigger_name ON table_name

예를 들어 :

DROP TRIGGER myTrigger ON myTable;

출처 : http://cassandra.apache.org/doc/latest/cql/triggers.html

댓글 없음 :

댓글 쓰기