카산드라 생성 유형

Kasandeula Saengseong Yuhyeong



“Cassandra를 사용하면 테이블에 관련 정보를 담을 수 있는 사용자 정의 유형을 정의할 수 있습니다. 데이터 유형을 저장할 유형을 찾을 수 없는 경우 기본 제공 유형을 사용하여 원하는 레이아웃을 캡처하는 다른 유형을 정의할 수 있습니다.

정의된 유형은 생성된 키스페이스의 범위로 제한된다는 점을 염두에 두는 것이 좋습니다. 점 표기법을 사용하여 다른 키 공간에서 테이블에 액세스할 수 있습니다.







이 게시물에서는 CREATE TYPE 명령을 사용하여 사용자 유형을 정의하는 방법에 대해 설명합니다.”



유형 명령 구문 생성

다음 명령은 create type 명령의 구문을 보여줍니다.



유형 만들기 [ 존재하지 않는 경우 ]
keyspace_name.type_name (
field_name 카산드라_유형 [ , ]
[ field_name 카산드라_유형 ] [ ,... ]
) ;


이 명령은 IF EXISTS 절을 지원하므로 유사한 이름의 명령이 대상 유형에 있는 경우 오류를 수정할 수 있습니다.





Type_name은 Cassandra의 명명 규칙을 준수하는 고유한 이름을 포함해야 합니다.

마지막으로 유형 및 해당 CQL 유형에 대한 필드를 정의할 수 있습니다. 사용자 정의 유형에서 카운터 필드를 사용하지 마십시오.



예시

다음 예는 CVE 보고서를 보유하는 사용자 정의 유형을 정의하는 방법을 보여줍니다.

키스페이스 삭제 만약에 Zero_day가 존재합니다.

키스페이스 zero_day 생성
복제 포함 = {
'수업' : '심플전략' ,
'복제 인자' : 1
} ;
zero_day를 사용하십시오.

만들다 유형 cve_reports (
cve_number 텍스트,
보고서_날짜 데이트 ,
영향을 받는 공급업체 텍스트,
심각도 부동,
) ;


위의 쿼리는 정의된 사용자 유형을 보유할 키스페이스 'zero_day'를 생성하여 시작합니다.

create type 문은 테이블 생성과 유사한 형식을 따릅니다. 이것이 사실이지만 그것들은 다른 목적을 수행하며 하나가 다른 것보다 더 나은 선택이 될 수 있습니다.

노트: 사용자 정의 유형이 아닌 테이블을 선택하기 전에 성능에 미치는 영향을 고려하거나 그 반대의 경우도 마찬가지입니다.

그런 다음 그림과 같이 위의 테이블에 데이터를 삽입할 수 있습니다.

다음과 같이 cve_reports 유형으로 테이블을 만들고 샘플 데이터를 삽입할 수 있습니다.

테이블 레코드 생성 (
ID 정수,
cve_reports cve_reports,
기본 키 ( ID )
) ;

데이터 삽입

레코드에 삽입 ( ID , cve_reports ) 가치 ( 1 , { cve_번호: 'CVE-2021-33852' , 보고서_날짜: '2022-12-02' , 영향을 받는 공급업체: '워드프레스' , 심각성: 6.0 } ) ;


그런 다음 추가된 데이터를 다음과 같이 가져올 수 있습니다.

고르다 * 기록에서;

결과 출력


결론

이 게시물은 Apache Cassandra에서 사용자 정의 유형을 만들고 사용하는 기본 사항을 다뤘습니다. 또한 사용자 지정 유형이 있는 테이블을 만들고 사용자 지정 유형 열에 데이터를 삽입하는 방법에 대해 논의했습니다.

즐거운 코딩!!