3. 커넥터 및 카탈로그 설정
Trino의 핵심 강점 중 하나는 다양한 외부 데이터 소스에 연결하고 쿼리할 수 있는 능력입니다. 이는 커넥터(Connectors)와 카탈로그(Catalogs)를 통해 이루어집니다.
3.1. Trino 커넥터 이해
커넥터는 Trino와 특정 데이터 소스(예: Hive, MySQL, PostgreSQL, Kafka 등) 간의 통신을 가능하게 하는 플러그인입니다. 각 커넥터는 해당 데이터 소스에 특화된 로직을 포함합니다.
3.2. 카탈로그 설정 파일 생성
새로운 데이터 소스에 연결하려면 Trino 구성 디렉토리(일반적으로 /etc/trino/catalog)에 .properties 파일을 생성해야 합니다. 예를 들어, MySQL 데이터베이스에 연결하려면 mysql.properties 파일을 생성합니다.
# /etc/trino/catalog/mysql.properties
connector.name=mysql
connection-url=jdbc:mysql://your_mysql_host:3306/your_database
connection-user=your_username
connection-password=your_password
파일 생성 후 Trino 서버를 재시작하면 mysql이라는 새로운 카탈로그가 Trino UI 또는 CLI에서 사용할 수 있게 됩니다. 이제 SELECT * FROM mysql.your_schema.your_table;과 같은 쿼리를 실행할 수 있습니다.
3.3. 일반적인 커넥터 종류
- Hive: Hadoop HDFS 및 Apache Hive 메타스토어와 통합하여 데이터 레이크 쿼리
- PostgreSQL/MySQL: 관계형 데이터베이스 쿼리
- Kafka: 실시간 스트리밍 데이터 쿼리
- Amazon S3: S3에 저장된 데이터 쿼리
- Memory: 개발 및 테스트를 위한 인메모리 카탈로그