1

저는 실제로 RedShift에서 Rails를 작동시키고 Rails의 기본 색인과 관련된 문제에 직면하려고합니다. 내 작업은 repo activerecord-redshift-adapter를 기반으로합니다.RedShift/PostgreSQL의 대체 Serial Type

기본적으로 Rails는 SERIAL 유형을 사용하여 기본 키를 작성합니다. 불행히도, RedShift는이 기능을 사용하지 않습니다. 그래서 실제로이 SERIAL 유형에 대한 대안을 찾아 내고 실행 가능한 솔루션을 찾으면 repo를 fork하려고합니다. 나는 RedShift offer에서 BIGINT에 대해 생각하고 있습니다.

변경할 줄은 여기 redshit_adaptated.rb (Line 252)에 있습니다.

모든 제안, 더 나은 솔루션?

+0

당신이 * * 그 시퀀스를 생성하고자 할 어떻게? Redshift에는 여전히 CREATE SEQUENCE가 있습니까? 만일'SERIAL'이'CREATE SEQUENCE'로 대체 될 수있는 편리한 의사 타입 일 경우,'default nextval ('sequence_name')'과 bigint 컬럼을 가진 테이블을 생성하고 마지막으로'ALTER SEQUENCE .. OWNED BY'. –

+0

실제로 시퀀스를 생성하는 방법을 모르겠습니다. 즉, 질문입니다 .RedShift는 지원하지 않습니다 ([시퀀스 조작 함수 참조] (http://docs.aws.amazon.com/redshift/latest/dg/c_unsupported- postgresql-functions.html))'CREATE SEQUENCE'. SERIAL이 단지 이것의 관례 일 경우에는 의미가 있습니다. 다른 아이디어? –

+0

Redshift가 순번을 생성하도록 ID 열을 생성 해보십시오. 기존 Rails 일련 번호를 유지하려면 최대 개수의 ID로 시작하십시오. – androboy

답변