2016-10-11 1 views
0

을 나는 그 후 피닉스에 명령: 오류 505

CREATE VIEW "t1" (pk VARCHAR PRIMARY KEY, "f1".val VARCHAR) 

를 실행할 수 아니에요 난 HBase를 명령의 실행 한

create 't1', {NAME => 'f1', VERSIONS => 5} 

는 나는 다음과 같은 오류가 발생합니다

org.apache.phoenix.schema.ReadOnlyTableException: ERROR 505 (42000): Table is read only. 
    at org.apache.phoenix.query.ConnectionQueryServicesImpl.ensureTableCreated(ConnectionQueryServicesImpl.java:815) 
    at org.apache.phoenix.query.ConnectionQueryServicesImpl.createTable(ConnectionQueryServicesImpl.java:1174) 
    at org.apache.phoenix.schema.MetaDataClient.createTableInternal(MetaDataClient.java:1974) 
    at org.apache.phoenix.schema.MetaDataClient.createTable(MetaDataClient.java:770) 
    at org.apache.phoenix.compile.CreateTableCompiler$2.execute(CreateTableCompiler.java:186) 
    at org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:305) 
    at org.apache.phoenix.jdbc.PhoenixStatement$2.call(PhoenixStatement.java:297) 
    at org.apache.phoenix.call.CallRunner.run(CallRunner.java:53) 
    at org.apache.phoenix.jdbc.PhoenixStatement.executeMutation(PhoenixStatement.java:295) 
    at org.apache.phoenix.jdbc.PhoenixStatement.execute(PhoenixStatement.java:1255) 
    at sqlline.Commands.execute(Commands.java:822) 
    at sqlline.Commands.sql(Commands.java:732) 
    at sqlline.SqlLine.dispatch(SqlLine.java:808) 
    at sqlline.SqlLine.begin(SqlLine.java:681) 
    at sqlline.SqlLine.start(SqlLine.java:398) 
    at sqlline.SqlLine.main(SqlLine.java:292) 

이러한 섹션

아래에 보여 https://phoenix.apache.org/faq.html되는 명령은

어떻게 Phoenix 테이블을 기존 HBase 테이블에 매핑합니까? 대신 아래처럼 기존 HBase를 테이블에 TABLE을 만들 필요가 VIEW을 만드는

+0

피닉스 버전을 사용하고 있습니까? –

답변

0

는 :

CREATE TABLE "t1" (ROWKEY VARCHAR PRIMARY KEY, "f1"."val" VARCHAR) 

자세한 내용은 당신은 당신은 피닉스를지도하고 싶었 this

0

확인하실 수 있습니다 테이블을 기존 HBase 테이블에 추가합니다. 그러나 문제점 설명에서 처음에는 Phoenix 뷰를 작성한 후 동일한 이름의 HBase 테이블을 작성하려고합니다. 따라서 org.apache.phoenix.schema.ReadOnlyTableException: ERROR 505 (42000): Table is read only. 예외가 발생합니다.

대신 HBase 테이블을 만든 다음 기존 HBase 테이블에 매핑되는 Phoenix 뷰를 만듭니다.

예 : 만들기 HBase를 테이블 :

create 't1', {NAME => 'f1', VERSIONS => 5} 

이 같은 HBase와 테이블을 가리키는 피닉스보기 만들기 : (

CREATE VIEW "t1" (pk VARCHAR PRIMARY KEY, "f1".val VARCHAR) 

은 "PK"열이 행 키는 VARCHAR 함을 선언을 즉 string) "f1".val 열은 HBase 테이블에 열 패밀리와 열 한정자가 "F1"인 KeyValues를 포함한다는 것을 선언하고 VAL은 VARCHA

관련 문제