클라이언트 라이브러리 업그레이드
이 페이지에서는 이전에 설치된 Cloud Bigtable 클라이언트 라이브러리를 업그레이드하는 방법을 설명합니다. 클라이언트 라이브러리를 처음 설치해야 하는 경우 Cloud Bigtable 클라이언트 라이브러리에서 선호하는 프로그래밍 언어에 해당하는 안내에 따르세요.
Java용 Bigtable 클라이언트
BigtableTableAdminClient 및 BigtableInstanceAdminClient의 편의 메서드가 오래되었습니다.
코드를 업그레이드하려면 getBaseClient()를 사용하여 표준 프로토콜 버퍼 메서드를 호출하세요. 이를 위해서는 com.google.cloud.bigtable.admin.v2.models.CreateTableRequest와 같은 맞춤 래퍼 객체를 com.google.bigtable.admin.v2.CreateTableRequest와 같은 표준 프로토콜 버퍼 요청 객체로 바꿔야 합니다. 이러한 객체는 정규화된 리소스 이름을 예상합니다.
다음 예와 같이 코드를 업데이트합니다.
// Existing code
BigtableTableAdminClient adminClient = BigtableTableAdminClient.create(PROJECT_ID, INSTANCE_ID);
adminClient.createTable(
CreateTableRequest.of(TABLE_ID)
.addFamily("cf1"));
// New code
BigtableTableAdminClient adminClient = BigtableTableAdminClient.create(PROJECT_ID, INSTANCE_ID);
String parent = "projects/" + PROJECT_ID + "/instances/" + INSTANCE_ID;
com.google.bigtable.admin.v2.CreateTableRequest request =
com.google.bigtable.admin.v2.CreateTableRequest.newBuilder()
.setParent(parent)
.setTableId(TABLE_ID)
.setTable(com.google.bigtable.admin.v2.Table.newBuilder()
.putColumnFamilies("cf1", com.google.bigtable.admin.v2.ColumnFamily.getDefaultInstance())
.build())
.build();
adminClient.getBaseClient().createTable(request);
다음을 바꿉니다.
PROJECT_ID: Bigtable 프로젝트의 식별자INSTANCE_ID: Bigtable 인스턴스의 식별자TABLE_ID: 새 테이블의 식별자
자바용 HBase 클라이언트
자바용 HBase 클라이언트 버전 1.0 이상에서 업그레이드하는 경우 구성에서 버전 번호만 업데이트하면 됩니다. 코드는 업데이트할 필요가 없습니다.
1.0 이전의 HBase 클라이언트에서 업그레이드하는 경우 다음 단계를 완료하세요.
종속 항목을 업데이트하여 최신 클라이언트 라이브러리를 사용하도록 하고 더 이상 필요 없는 아티팩트를 삭제합니다.
종속 항목에
bigtable-hbase-1.0,bigtable-hbase-1.1,bigtable-hbase-1.2아티팩트가 있는 경우 삭제합니다.애플리케이션의 다른 부분에서 필요하지 않다면 종속 항목에서
netty-tcnative-boringssl-static을 삭제합니다.사용 사례에 따라 다음 아티팩트 중 하나를 종속 항목에 추가합니다.
2.x버전에는1.x버전에 없는 HBase 비동기 클라이언트가 포함됩니다.
Bigtable에 연결하기 위한 구성 설정을 업데이트합니다.
코드 또는
hbase-site.xml파일의 구성 설정에hbase.client.connection.impl의 값이 포함되는 경우 값을com.google.cloud.bigtable.hbase1_x.BigtableConnection로 변경합니다.BigtableConnection클래스를 직접 사용하는 경우 코드를 업데이트하여com.google.cloud.bigtable.hbase1_x.BigtableConnection를 대신 사용합니다.hbase-site.xml파일을 사용하여 Bigtable에 연결하는 경우:google.bigtable.instance.id속성이 없는 경우 추가합니다. 인스턴스 ID의 속성 값을 설정합니다.google.bigtable.cluster.name속성이 있는 경우 삭제합니다.google.bigtable.zone.name속성이 있는 경우 삭제합니다.
BigtableConfiguration.connect()를 호출하여 Bigtable에 연결하는 경우 아래와 같이 코드를 업데이트해야 합니다.
// Existing code BigtableConfiguration.connect(PROJECT_ID, ZONE_ID, CLUSTER_ID); // New code BigtableConfiguration.connect(PROJECT_ID, INSTANCE_ID);다음을 바꿉니다.
PROJECT_ID: 프로젝트의 식별자ZONE_ID: 클러스터가 있는 영역입니다.CLUSTER_ID: 클러스터의 식별자입니다.INSTANCE_ID: 인스턴스의 식별자입니다.
로컬 개발, 테스트, 스테이징, 프로덕션을 포함한 모든 환경에서 애플리케이션을 재배포합니다.
자바용 HBase 클라이언트 출시 목록은 GitHub의 출시 내역을 참조하세요.
Go
2016년 6월, Go 클라이언트의 Bigtable 연결 방법이 변경되었습니다. 클러스터 ID 및 영역을 지정하는 대신 인스턴스 ID를 지정합니다. Google Cloud 콘솔을 방문하면 인스턴스 ID를 찾을 수 있습니다.
클라이언트 라이브러리를 다운로드하려면 GitHub의 코드 저장소를 방문하세요.
다음 예와 같이 코드를 업데이트합니다.
// Existing code
adminClient, err := bigtable.NewAdminClient(ctx, PROJECT_ID, ZONE, CLUSTER_ID)
client, err := bigtable.NewClient(ctx, PROJECT_ID, ZONE, CLUSTER_ID)
// New code
adminClient, err := bigtable.NewAdminClient(ctx, PROJECT_ID, INSTANCE_ID)
client, err := bigtable.NewClient(ctx, PROJECT_ID, INSTANCE_ID)
다음을 바꿉니다.
PROJECT_ID: 프로젝트의 식별자ZONE: 클러스터가 있는 영역입니다.CLUSTER_ID: 연결하려는 클러스터의 식별자입니다.INSTANCE_ID: 연결할 인스턴스의 식별자입니다.
Go 클라이언트 라이브러리 출시 목록은 GitHub의 출시 내역을 참조하세요.
다음 단계
- 클라이언트 라이브러리에 대해 자세히 알아보기
- Bigtable과 다른 도구 및 Google Cloud 서비스의 통합 방법에 대해 자세히 알아보기