2014-07-08 2 views
0

나는 riak에서의 멍청이이고, erlang에서 riakc를 사용하여 riak의 쿼리 측면을 테스트하려고 노력 해왔다. 하지만 이전 SQL 방식과 일치하는 데이터베이스를 쿼리하는 방법에 대한 예제를 찾을 수 없으며 단일 필드에서 단일 값을 가져 오는 방법에 대해서만 설명합니다. 내가 뭔가를 놓친 것 같아요하지만 정말 원하는 모든 riakc 코드와 일치하는 표준 SQL 쿼리입니다.riakc에서 riak query를 작성하는 방법

SELECT * FROM bucket; 

SELECT * FROM bucket LIMIT 10, 100; 

SELECT id, name FROM bucket; 

SELECT * FROM bucket WHERE name="john" AND surname LIKE "Ste%"; 

SELECT * FROM bucket LEFT JOIN bucket2 ON bucket.id = bucket2.id2; 

난 당신이 쓰기 방법에 대한 직접적인 상관 관계가 없다고 가정하지만, 표준 방법이 기대되고,이 riakc에 querys 설명하는 방법을 이해하기 AA 간단한을 가지고 어딘가가 (또는 그냥 riak).

나는 맵리 듀스를 보았다하지만, 그냥 간단한 쿼리

답변

1

Riak이되는 NoSQL 데이터베이스입니다 더 구체적으로 키 - 값 데이터베이스를 혼동하고, 사용 가능한 SQL과 같은 더 쿼리 언어가없는 것으로 나타났습니다. Riak와 작업 할 때 관계형 데이터베이스를 최대한 활용하기 위해 사용하는 방식과 완전히 다른 방식으로 데이터를 모델링하고 쿼리해야합니다. 관계형 방식으로 데이터 모델링 및 쿼리를 시도합니다 (예 : 보조 인덱스를 광범위하게 사용하거나 실시간 쿼리 언어로 map/reduce를 사용하려고하면 일반적으로 성능과 확장 성이 매우 떨어집니다. Riak development anti-patterns that can be found here에 대한 유용하고 유용한 토론.