관계형 데이터베이스 에서 쿼리 대한 답을 찾으려면 시간 가 필요하며 지수 제거 할 수없는 것으로 알려져 있습니다. .D | D | | Q | | Q |
로 매우 클 수 데이터베이스가 실제로는 전혀 작동 이유, 우리는 궁금합니다.
실제 응용 프로그램에서 일반적인 쿼리가 전혀 크지 않은 문제입니까? (그러면 관계형 데이터베이스 시스템에 부과되는 일반적인 쿼리 크기와 실제로 DB 시스템에서 효과적으로 응답 할 수있는 쿼리의 "최대"크기가 무엇인지 아는 것이 흥미 롭습니다 .)
지수에 대한 메모'이동식'이 아님
지수제거 할 수없는 경우 데이터베이스에서 제공 한 그래프 에 크기 의 도가 있는지 묻는 쿼리를 사용할 수 있습니다 . 그래프에 -clique가 있는지 확인하는 것은 NP-complete 문제입니다. 또한 매개 변수 고정 매개 변수를 다루기 어렵습니다 . 자세한 내용은 예를 들어
Libkin, L .: Elements Of Finite Model Theory 에서 찾을 수 있습니다 . Springer (2004)
또는
Papadimitriou, CH, Yannakakis, M .: 데이터베이스 쿼리의 복잡성. J. 컴퓨팅 시스. 공상 과학 58 (3), 407–427 (1999)n n n
SELECT * FROM users WHERE username="abc" AND passwrod="xyz"
)는 간단한 검색으로 O (| D |)를 실행합니다. 관련 데이터베이스 필드에 색인이 있으면 O (log | D |)를 사용합니다. 나는 데이터베이스에 익숙하지 않지만 더 복잡한 쿼리가 기하 급수적으로 걸릴 것이라고 생각하지 않습니다.