Cassandra 커넥터

Cassandra 커넥터 (Cassandra connector)

Cassandra 커넥터는 Apache Cassandra에 저장된 데이터를 질의할 수 있게 해 줘요.

출처: 문서

본문

요구사항 (Requirements)

Cassandra에 연결하려면 다음이 필요해요:

  • Cassandra 3.0 이상.
  • Trino 코디네이터와 워커에서 Cassandra로 네트워크 접근. 기본 포트는 9042예요.

설정 (Configuration)

Cassandra 커넥터를 구성하려면 etc/catalog/example.properties 카탈로그 속성 파일을 만들고, 클러스터 토폴로지 발견에 사용되는 Cassandra 노드의 쉼표로 구분된 목록으로 host1,host2를 바꾼 뒤 다음 내용을 넣으세요:

connector.name=cassandra
cassandra.contact-points=host1,host2
cassandra.load-policy.dc-aware.local-dc=datacenter1

테스트용 테이블을 cqlsh로 만들 수 있어요:

cqlsh> CREATE KEYSPACE example_keyspace
   ... WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 1 };
cqlsh> USE example_keyspace;
cqlsh:example_keyspace> CREATE TABLE users (
              ...   user_id int PRIMARY KEY,
              ...   fname text,
              ...   lname text
              ... );

Trino에서 테이블 구조를 확인하고 조회할 수 있어요:

DESCRIBE example.example_keyspace.users;
 Column  |  Type   | Extra | Comment
---------+---------+-------+---------
 user_id | bigint  |       |
 fname   | varchar |       |
 lname   | varchar |       |
(3 rows)
SELECT * FROM example.example_keyspace.users;

Cassandra에 대해 SQL로 명령을 실행할 수도 있어요:

USE example.example_schema;
CALL system.execute(query => 'ALTER TABLE your_table ALTER COLUMN your_column DROP DEFAULT');

또는 테이블 함수로 결과를 받아올 수 있어요:

SELECT
  *
FROM
  TABLE(
    example.system.query(
      query => 'SELECT
        *
      FROM
        tpch.nation'
    )
  );

DROP TABLE을 허용하려면 다음 속성을 설정하세요:

cassandra.allow-drop-table=true

더 알아보기 (Learn more)

다른 NoSQL 커넥터가 궁금하다면 MongoDB 커넥터 문서를 이어서 읽어 보세요.