InterLink Query Language
관계를 1급 객체로 다루고, 스키마·수명주기·권한을 언어에 내장했습니다. 조인 대신 그래프 탐색 한 줄로 — 사람도, 서버도, AI 에이전트도 같은 문장을 씁니다.
같은 질문, 다른 언어
관계형 DB는 조인으로, 범용 그래프 DB는 경로 패턴으로 푸는 질의를 IQL은 방향과 깊이로 그대로 서술합니다.
SELECT DISTINCT p.name
FROM department d
JOIN dept_closure c ON c.ancestor = d.id
JOIN employee e ON e.dept_id = c.descendant
JOIN acl a ON a.principal = e.id
JOIN document doc ON doc.id = a.resource_id
WHERE d.code = 'DEPT-01'
AND doc.code = 'DOC-42'
AND e.status = 'Active';
-- 계층 전개용 closure 테이블 유지 + 4중 조인
계층 전개를 위해 재귀 CTE 또는 closure 테이블을 따로 관리하고, 권한·상태 조건이 조인마다 흩어집니다.
MATCH (d:Department {code:'DEPT-01'})-[:CONTAINS*1..3]->(e:Employee)
-[:CAN_ACCESS]->(doc:Document {code:'DOC-42'})
WHERE e.status = 'Active'
RETURN DISTINCT e.name;
-- 경로 패턴은 간결하나, 권한·상태·수명주기는
-- 여전히 애플리케이션/미들웨어가 별도로 강제
경로 패턴은 짧아지지만, 상태 기반 권한은 그래프 밖에서 다시 구현해야 합니다.
NAVIGATE 'DEPT-01' -> Contains
FILTER OBJECT [status] = 'Active'
DEPTH 3
RETURN OBJECT name;
-- 권한은 엔진이 워크스페이스 역할 × 라이프사이클
-- 상태로 강제 → 접근 불가한 문서·사람은 애초에
-- 결과에서 제외. 우회 경로가 없습니다.
그래프 순회·상태 필터가 한 문장. 권한은 엔진이 질의 레벨에서 강제하므로 별도 코드가 필요 없습니다.
왜 IQL인가
업무 데이터의 본질 네 가지를 애플리케이션 코드가 아니라 데이터베이스가 다룹니다.
“주문에 담긴 상품 4개”에서 4는 상품이 아니라 주문·상품 사이의 사실입니다. 수량·기간·정렬 순서 같은 데이터가 관계 위에 자연스럽게 존재하고, 방향과 속성을 가집니다.
도메인 모델과 상태 흐름(작성→검토→배포), 개정 이력을 데이터베이스가 직접 관리합니다. 코드 변경이나 재배포 없이 운영 중에 모델을 확장할 수 있습니다.
작성 중 문서는 작성자만, 배포된 문서는 잠금. 조직 역할과 문서 상태에 따른 접근 통제를 화면이 아니라 데이터베이스가 강제해, 조회 결과부터 안전합니다.
LLM·AI 에이전트가 표준 프로토콜(MCP)로 데이터를 직접 조회·활용합니다. 모델이 데이터 구조를 스스로 파악하되, 사람과 똑같은 권한 경계 안에서만 동작합니다.
설립 이후 엔터프라이즈 데이터 플랫폼 전문
기업 운영 환경에서 가동되는 InterLink 엔진
온프레미스·폐쇄망 설치형, 데이터 반출 없음
쿼리 레벨 권한·감사 내장
Enterprise-ready
IQL 엔진은 폐쇄망을 포함한 온프레미스 환경에 설치됩니다. 민감한 업무 데이터가 외부로 나가지 않으며, 권한·감사·격리가 엔진에 내장되어 규제 산업에도 대응합니다.
Why it matters
LLM·에이전트가 사내 데이터를 다루는 시대에, 권한과 감사를 한 엔진 안에서 통제할 수 있다는 것은 곧 규정 준수와 신뢰의 문제입니다. IQL은 모델이 만든 질의도 권한 경계를 넘지 못하며, AI의 모든 행위가 사람과 동일하게 자동 감사 기록됩니다.
Use cases
조직·문서·주문·자산처럼 개체 사이의 연결이 핵심인 도메인에 도입됩니다.
부서 계층·소속·보고 관계를 그래프로, 상태 기반 접근 제어까지.
문서 참조·리비전·영향 범위를 한 번의 탐색으로 파악.
파일이 객체에 귀속되어 버전 관리·체크인/체크아웃. 온프레미스·S3 등 원하는 저장소에 안전하게 보관합니다.
자연어 요청을 검증 가능한 질의로, 권한 범위 안에서 안전하게 실행.