2016-10-05 7 views
3

는 메인 메모리에로드 된 읽기 전용 테이블을 참조하는 두 KDB 프로세스를 가질 수있는 방법이 있습니까? 그들은 서로 독립적으로 그것을 읽을 수 있어야합니다. 요구 사항은 디스크에서 데이터를 한 번로드하는 것입니다. 나는 테이블을로드하는 하나의 Q (생산자) 시작의 어색한 솔루션 및 Q 프로세스 (소비자)의 나머지 로컬로 연결하고 소켓을 통해 테이블을 당겨 함께했다. 요컨대, 필자는 select 쿼리를 다중 처리하려고합니다. 감사합니다KDB 점유율 테이블

+2

당신이 부정적인 포트로 프로세스를 시작할 수 있습니다 ? 당신이 http://code.kx.com/wiki/Cookbook/MultithreadedInputMode – Chromozorz

+0

Chromozorz 찾고있는이 - 당신을 감사합니다. 나는 이것을 조사 할 것이다. 공유 메모리 데이터를 사용하여 동일한 서버 (노드)에서 시작된 개별 KDB 프로세스를 생각했습니다. 테이블 t. – Vortex

+0

좋아, 네가 찾고있는 것이라면 알려줘. 그렇지 않으면 답변을 게시 할 것입니다. @Chromozorz 코멘트 이외에 건배 – Chromozorz

답변

1

예. get

KDB의 mmaps, 그래서 단순히 하나 개의 코어가 (선택적으로 splayed)하고 다른 테이블에게 그것을 얻을 수 있도록 테이블과 save을 구축해야 :

`:table set build_table ([] ...); 
other_cores @\: ({table:get x};`:table);