2016-10-11 4 views
0

나는 지금 내 데이터베이스, 호스트 포트, 사용자 및 암호를 알고rplyshift에 r을 연결하기 위해 dplyr 및 RPostgreSQL을 사용하는 방법은 무엇입니까?

https://blogs.aws.amazon.com/bigdata/post/Tx1G8828SPGX3PK/Connecting-R-with-Amazon-Redshift에서 방법에 따라 dplyr 및 RPostgreSQL를 사용하여 적색 편이 위해 R을 연결하려합니다. 그래서 내 코드는 다음과 같습니다.

> myRedshift <- src_postgres('aaa', 
          host = 'aaa-aaa-aaa.com', 
          port = 8000, 
          user = "xy", 
          password = "xy") 

이 줄을 실행 한 후에 myRedshift가 있습니다. OK처럼 보입니다. 하지만, 내가 실행할 때 :

문제 : 데이터베이스 aaa는 a1, a2, a3과 같은 몇 개의 폴더를 포함합니다. base_posdata 테이블은 a1에 있습니다. 그래서 그것은 다음과 같아야합니다 :

a <- tbl(myRedshift, "a1//base_posdata") 

물론 형식이 올바르지 않습니다.

Error in postgresqlExecStatement(conn, statement, ...) : 
    RS-DBI driver: (could not Retrieve the result : ERROR: relation "base_posdata" does not exist) 

내가 올바른 경로를 제공하지 않았기 때문에이 추측 : - 나는 위의 코드를 사용할 때 그래서 (A < TBL (myRedshift, "base_posdata") )를, 나는 오류 메시지가 있습니다. 누구나이 방법을 알려줄 수 있습니까? 고마워.

+0

포스트 그레스 '데이터베이스 모델은 데이터베이스, 스키마, 테이블 및 열을 포함 해결했다. 쿼리에서 올바르게 각각을 처리하는지 확인하십시오. –

+0

Redshift에서 데이터를 연결할 때 Alteryx를 사용합니다. 나는 다음과 같은 방법으로 데이터를 선택할 수있다. 1. 테이블을 선택하거나 쿼리를 지정한다. 2. "테이블"버튼을 클릭한다. 3. "aaa", "a1", "base_posdata"로 표시된 테이블을 선택한다. 이것이 이것이 테이블 또는 sth이라는 것을 암시 할 수 있다면 설명해 주시겠습니까? 어떻게이 문제를 해결할 수 있습니까? 감사 –

답변

1

그냥이 처리 할 수있는 방법을 찾을 : 같은 SQL을 사용하여 :

> a <- tbl(myRedshift, sql("SELECT * FROM aaa.a1.base_posdata")) 

문제

관련 문제