Hadoop 계열 데이터 플랫폼 위에 올릴 REST API 서비스의 아키텍처를 설계하며 남긴 기록이다. 사용자는 API 로 SQL 을 보내고, 서비스는 인증 · 권한을 확인한 뒤 Trino 에 JDBC 로 실행하거나 Iceberg 테이블 · Hive Metastore 의 메타데이터를 다룬다. 저장소는 HDFS · S3 · 로컬(GlusterFS · NFS)을 추상화해 붙인다. 2025년 설계 시점의 초안이라 구현과 다를 수 있다.
| 구성 요소 | 역할 |
|---|---|
| ApiController | REST 요청을 받아 서비스로 라우팅 |
| AuthService | 사용자 인증과 SQL 종류별 권한 제어 |
| TrinoService | Trino JDBC 로 SQL 실행 |
| IcebergService | Iceberg 테이블 · 메타데이터 관리 (스키마 진화, 타임 트래블, upsert) |
| MetastoreService | Hive · Iceberg 메타스토어 접근 |
| StorageService | HDFS · S3 · 로컬 파일 접근 추상화 |
/api/v1/engines/trino/catalogs/{catalog}/formats/{format}/schemas/{schema}/tables/{table}/actions/{sql_type}