tessl install tessl/golang-cloud-google-com--go--bigquery@1.72.0Google Cloud BigQuery client library providing comprehensive Go APIs for querying, loading data, managing datasets and tables, streaming inserts, and accessing BigQuery's ecosystem of services including Storage, Analytics Hub, Data Transfer, and Migration APIs
The Migration API translates SQL from other database dialects (Teradata, Redshift, Hive, Spark, Presto) to BigQuery Standard SQL and manages migration workflows.
import "cloud.google.com/go/bigquery/migration/apiv2"
import "cloud.google.com/go/bigquery/migration/apiv2/migrationpb"func NewMigrationServiceClient(ctx context.Context, opts ...option.ClientOption) (*MigrationServiceClient, error)type MigrationServiceClient struct{}func (c *MigrationServiceClient) Close() errorfunc (c *MigrationServiceClient) CreateMigrationWorkflow(ctx context.Context, req *migrationpb.CreateMigrationWorkflowRequest, opts ...gax.CallOption) (*migrationpb.MigrationWorkflow, error)
func (c *MigrationServiceClient) GetMigrationWorkflow(ctx context.Context, req *migrationpb.GetMigrationWorkflowRequest, opts ...gax.CallOption) (*migrationpb.MigrationWorkflow, error)
func (c *MigrationServiceClient) ListMigrationWorkflows(ctx context.Context, req *migrationpb.ListMigrationWorkflowsRequest, opts ...gax.CallOption) *MigrationWorkflowIterator
func (c *MigrationServiceClient) DeleteMigrationWorkflow(ctx context.Context, req *migrationpb.DeleteMigrationWorkflowRequest, opts ...gax.CallOption) error
func (c *MigrationServiceClient) StartMigrationWorkflow(ctx context.Context, req *migrationpb.StartMigrationWorkflowRequest, opts ...gax.CallOption) errorfunc (c *MigrationServiceClient) GetMigrationSubtask(ctx context.Context, req *migrationpb.GetMigrationSubtaskRequest, opts ...gax.CallOption) (*migrationpb.MigrationSubtask, error)
func (c *MigrationServiceClient) ListMigrationSubtasks(ctx context.Context, req *migrationpb.ListMigrationSubtasksRequest, opts ...gax.CallOption) *MigrationSubtaskIteratorreq := &migrationpb.CreateMigrationWorkflowRequest{
Parent: "projects/my-project/locations/us",
MigrationWorkflow: &migrationpb.MigrationWorkflow{
DisplayName: "Teradata to BigQuery Migration",
Tasks: map[string]*migrationpb.MigrationTask{
"translation": {
Type: "Translation",
TranslationConfigDetails: &migrationpb.TranslationConfigDetails{
SourceDialect: &migrationpb.Dialect{
DialectValue: &migrationpb.Dialect_TeradataDialect{
TeradataDialect: &migrationpb.TeradataDialect{
Mode: migrationpb.TeradataDialect_SQL,
},
},
},
TargetDialect: &migrationpb.Dialect{
DialectValue: &migrationpb.Dialect_BigqueryDialect{
BigqueryDialect: &migrationpb.BigQueryDialect{},
},
},
SourceLocationUri: "gs://my-bucket/teradata-sql/",
TargetLocationUri: "gs://my-bucket/bigquery-sql/",
},
},
},
},
}
workflow, err := client.CreateMigrationWorkflow(ctx, req)