자습서 1: 데이터베이스, 스키마, 테이블 만들기 및 관리¶
소개¶
이 자습서에서는 데이터베이스, 테이블, 스키마를 생성하고 관리하기 위해 REST 쿼리를 제출하는 방법에 대해 알아봅니다.
전제 조건¶
참고
Snowflake REST APIs 자습서의 일반 설정 의 단계를 이미 완료했다면 이러한 사전 요구 사항을 건너뛰고 이 자습서의 첫 번째 단계로 진행할 수 있습니다.
이 자습서를 시작하기 전에 다음 단계가 포함된 공통 설정 지침을 완료해야 합니다.
Snowflake REST APIs Postman 컬렉션을 가져옵니다.
Postman에서 전달자 토큰을 설정하여 연결을 인증합니다.
이러한 필수 요건을 완료하면 API를 사용할 준비가 된 것입니다.
데이터베이스를 생성하고 사용 가능한 데이터베이스를 나열합니다.¶
Postman을 사용하면 데이터베이스를 생성하고 사용 가능한 데이터베이스를 나열할 수 있습니다.
데이터베이스를 생성하려면 다음과 같이 요청 본문과 함께
POST
요청을/api/v2/databases
엔드포인트로 보냅니다.{ "name": "demo_db", "kind": "PERMANENT", "comment": "snowflake rest api demo-db", "data_retention_time_in_days": "1", "max_data_extension_time_in_days": "1" }
사용 가능한 데이터베이스를 나열하려면 다음 예제와 같이
GET
요청을/api/v2/databases
엔드포인트로 보냅니다.이름에 문자열
demo
가 포함된 데이터베이스를 찾으려면 like 쿼리 매개 변수에%25demo%25
를 지정합니다.이름이
DEMO_DB
라는 문자열로 시작하는 첫 번째 데이터베이스를 반환하려면 startsWith 및 showLimit 쿼리 매개 변수에 각각DEMO_DB
및1
을 지정합니다.
자세한 내용은 Snowflake Database API 참조 섹션을 참조하십시오.
스키마를 생성하고 사용 가능한 스키마를 나열합니다.¶
Postman을 사용하면 스키마를 생성하고 사용 가능한 스키마를 나열할 수 있습니다.
스키마를 생성하려면 다음과 같이
POST
요청을/api/v2/databases/{database}/schemas
엔드포인트에 보냅니다.요청 헤더의 database 경로 변수에 데이터베이스 이름(
demo_db
)을 추가합니다.요청 본문에 스키마 이름(
demo_sc
)을 추가합니다.{ "name": "demo_sc", }
사용 가능한 스키마를 나열하려면
GET
요청을/api/v2/databases/{database}/schemas
엔드포인트로 보냅니다. 이 예제에서는 startsWith 및 showLimit 쿼리 매개 변수에 각각DEMO_SC
및1
을 지정하여 이름이DEMO_SC
인 문자열로 시작하는 첫 번째 스키마를 반환합니다.
자세한 내용은 Snowflake Schema API 참조 섹션을 참조하십시오.
테이블을 생성하고 테이블 세부 정보를 가져옵니다.¶
Postman을 사용하면 테이블을 생성하고 사용 가능한 테이블을 나열할 수 있습니다.
테이블을 생성하려면 다음과 같이
POST
요청을/api/v2/databases/{database}/schemas/{schema}/tables
엔드포인트로 보냅니다.요청 헤더의 database 및 database 경로 변수에 각각 데이터베이스 이름(
demo_db
) 및 스키마 이름(demo_sc
)을 추가합니다.요청 본문에 테이블 이름(
demo_tbl
)과 테이블 열을 추가합니다. 이 경우C1
이라는 열을 1개 추가했습니다.{ "name": "demo_tbl", "columns": [ { "name": "c1", "datatype": "integer", "nullable": true, "comment": "An integral value column" } ], "comment": "Demo table for Snowflake REST API" }
방금 생성한 테이블을 가져오려면
GET
요청을/api/v2/databases/{database}/schemas/{schema}/tables/{name}
엔드포인트로 보냅니다. 이 경우 database, schema, name 경로 변수에 각각demo_db
,demo_sc
,demo_tbl
을 지정합니다.
자세한 내용은 Snowflake Table API 참조 섹션을 참조하십시오.
테이블 변경 및 테이블 세부 정보 가져오기¶
Postman을 사용하여 테이블을 변경할 수 있습니다.
지난 자습서에서 만든 테이블을 변경하려면 다음과 같이
PUT
요청을/api/v2/databases/{database}/schemas/{schema}/tables/{name}
엔드포인트로 보냅니다.해당 경로 변수에 생성한 데이터베이스, 스키마, 테이블의 이름을 지정합니다.
요청 본문에 새로운 테이블 정의를 입력합니다. 이 경우에는 테이블에 새 열을 추가합니다.
{ "name": "demo_tbl", "columns": [ { "name": "c1", "datatype": "integer", "nullable": true, "comment": "An integral value column" }, { "name": "c2", "datatype": "string", "comment": "An string value column" } ], "comment": "Demo table for Snowflake REST API" }
GET
요청을/api/v2/databases/{database}/schemas/{schema}/tables/{name}
엔드포인트로 보내 테이블 세부 정보를 가져와 변경 사항을 확인합니다. 이 경우 database, schema, name 경로 변수에 각각demo_db
,demo_sc
,demo_tbl
을 지정합니다.이제 테이블에 새로운
C2
열이 포함된 것을 확인할 수 있습니다.
자세한 내용은 Snowflake Table API 참조 섹션을 참조하십시오.
사용 가능한 테이블 나열¶
사용할 수 있는 모든 테이블의 목록을 반환하려면 /api/v2/databases/{database}/schemas/{schema}/tables
엔드포인트를 사용합니다.
사용 가능한 모든 테이블을 목록으로 만들려면 다음과 같이 쿼리 매개 변수가 없는
GET
request to the/api/v2/databases/{database}/schemas/{schema}/tables
엔드포인트를 보냅니다. 이 경우 database, schema, name 경로 변수에 각각demo_db
,demo_sc
,demo_tbl
을 지정합니다.모든 테이블의 열 및 제약 조건에 대한 전체 세부 정보를 나열하려면 recursive 쿼리 매개 변수를 추가하고 그림과 같이 값을
true
로 설정합니다. 여러 개의 복잡한 테이블이 있는 경우 이 쿼리 매개 변수를 활성화하면 연결에 오버로드가 발생할 수 있습니다.
자세한 내용은 Snowflake Table API 참조 섹션을 참조하십시오.
다음에는 무엇을 해야 합니까?¶
축하합니다! 이 자습서에서는 Snowflake REST APIs 를 사용하여 Snowflake 데이터베이스, 스키마 및 테이블 리소스를 관리하기 위한 기본 사항에 대해 알아봤습니다.
요약¶
이 과정에서 다음 단계를 완료했습니다.
데이터베이스를 생성하고 나열합니다.
스키마를 생성하고 나열합니다.
테이블을 생성하고 테이블 세부 정보를 가져옵니다.
테이블을 변경하고 테이블 세부 정보를 가져옵니다.
사용 가능한 테이블을 나열합니다.
다음 자습서¶
이제 자습서 2: 작업 만들기 및 관리 로 이동하여 Snowflake 작업을 생성하고 관리하는 방법을 살펴볼 수 있습니다.