문제

여러 데이터베이스 아키텍처 (MySQL vs PostgreSQL 등)를 통해 데이터 스프레드를 연결하는 방법은 무엇입니까?

콘텐츠와 일치하는 거대한 해시 타이블/어레이를 만들 수 있습니까? 이 작업을 수행하기위한 더 효과적이고 메모리 소비 옵션이 있습니까?

MySQL & PostgreSQL 소스의 데이터를 모두 사용한다면 하나의 DB를 다른 DB (응용 프로그램 제약, 시간 부족, 지식 부족, ...)로 변환 할 수있는 방법이 없다면 어떻게 하시겠습니까?

도움이 되었습니까?

해결책

적어도 MySQL의 경우 데이터베이스가 동일한 MySQL 서버 인스턴스로 호스팅되면 단일 쿼리의 여러 데이터베이스의 데이터를 사용할 수 있습니다. 스키마 이름으로 테이블을 예약하여 다른 데이터베이스와 테이블을 구별 할 수 있습니다.

CREATE TABLE test.foo (id SERIAL PRIMARY KEY) TYPE=InnoDB;

CREATE DATABASE test2;
CREATE TABLE test2.bar (foo_id BIGINT UNSIGNED, 
    FOREIGN KEY (foo_id) REFERENCES test.foo(id)) TYPE=InnoDB;

SELECT * FROM test.foo f JOIN test2.bar b ON (f.id = b.foo_id);

PostgreSQL에서는 스키마 이름으로 테이블 참조 자격을 얻을 수도 있습니다. 그래도 데이터베이스에서 외국의 주요 제약 조건을 만들 수 있는지 확실하지 않습니다.

다른 팁

SQL 릴레이 또는 다른 SQL 프록시.http://sqlrelay.sourceforge.net/

RDBMSE에 대한 제약 조건을 만들려면 할 수 없습니다.

나는 혜택을받을 위치에 대해 PostgreSQL에서 응용 프로그램의 일부를 실행하는 것과 같은 문제에 직면하고 있으며, 나머지 MySQL은 더 나은 곳입니다.

동일한 형식의 기본 정보 (제 경우에는 일반 사용자 ID)에서 여러 삽입물을 키우고 있으므로 응용 프로그램이 두 DBS에서 동일한 ID를 요청하는 논리를 처리하도록합니다.

그러나 내가 찾은 클래스 또는 유틸리티 기능으로 추상화하는 이외의 작업을 수행하는 깨끗한 방법은 없습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top