관계 데이터 연산의 개념
관계 데이터 모델에서 연산은 원하는 데이터를 얻기 위해 릴레이션에 필요한 처리 요구를 수행하는 것으로, DB 시스템의 구성 요소 중 데이터 언어의 역할을 한다. 관계 데이터 모델의 연산을 간단히 관계 데이터 연산(relationship data operation)이라고도 한다. 대표적인 관계 데이터 연산으로 관계 대수와 관계 해석이 있다.
관계 대수와 관계 해석은 원하는 데이터를 얻기 위한 처리 절차를 얼마나 자세히 기술하느냐에 큰 차이를 보인다. 관계 대수(relational algebra)는 원하는 결과를 얻기 위해 데이터의 치러 과정을 순서대로 기술하는 절차 언어(procedural language)다. 관계 해석(relational calculus)은 원하는 결과를 얻기 위해 처리를 원하는 데이터가 무엇인지만 기술하는 비절차 언어(noprocedural language)다.
사용자 입장에서는 처리를 원하는 데이터가 무엇인지만 기술하는 비절차 언어가 편리하게 느껴질 수 있다. 하지만 데이터를 처리하는 기능과 처리를 요구하는 표현력에서 관계 대수와 관계 해석은 능력이 동등하다. 데이터에 대한 처리 요구를 일반적으로 질의(query)라 한다.
새로운 데이터 언어가 제안되면 해당 데이터 언어의 유용성을 검증해야 하는데 검증의 기준 역할을 하는 것이 관계 대수와 관계 해석이다. 관계 대수나 관계 해석으로 기술할 수 있는 모든 질의를 새로 제안된 데이터 언어로 기술할 수 있으면 관계적으로 완전(relationally complete)하다고 하고, 이를 통해 해당 언어가 어느 정도 검증됐다고 판단한다.