2012-07-27 4 views
1

이제는 SQL 결합 알고리즘 (Nested loop join)을 사용하여 nosql에서 두 개 (또는 그 이상)의 테이블을 결합하는 작업을 시뮬레이션하려고했습니다.SQL 결합을 시뮬레이트하는 방법?

TableA와 TableB 두 개의 테이블이있는 경우이를 결합하고 싶습니다. 먼저 두 개의 테이블에서 모든 레코드를 선택합니다. 두 개의 루프를 사용하여 TableA 및 TableB의 레코드를 찾으면 조인 조건을 충족시킵니다.

하지만 지금은 처리 할 수 ​​없습니다 조인-에 조건이 같은 :

(TableA.id = TableB.id OR TableA.name= TableB.name) AND TableA.age = TableB.age 

나는 복잡한 변환 할 수 조인에 조건 한 수준 '('또는 ')'cantains 심 AND, OR 만 포함하는 조인 조건 (이처럼 : TableA.id = TableB.id 및 TableA.age = TableB.age 또는 TableA.name = TableB.name 및 TableA.age = TableB.age)

답변

0

테이블이 큰 경우 playOrm을 사용하여 각 테이블의 파티션에 참여할 수 있습니다. 테이블이 작 으면 playOrm에서 조인을 사용할 수 있습니다. 나는 당신이 nosql에 대해 이야기하고 있다고 가정합니다. 테이블이 매우 큰 경우 map/reduce를 사용하는 것이 좋습니다. playOrm 조인은 계정 또는 파티션별로 월별 또는 클라이언트별로 분할하는 OLTP 응용 프로그램에 더 적합하므로 무한한 양의 클라이언트를 처리 할 수 ​​있으며 처리중인 클라이언트의 파티션에 쿼리 할 수 ​​있습니다.

관련 문제