Class BigQueryUtils
java.lang.Object
org.apache.beam.sdk.io.gcp.bigquery.BigQueryUtils
Utility methods for BigQuery related operations.
- 
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classOptions for how to convert BigQuery data to Beam data.static classOptions for how to convert BigQuery schemas to Beam schemas. - 
Constructor Summary
Constructors - 
Method Summary
Modifier and TypeMethodDescriptionstatic ObjectconvertAvroFormat(Schema.FieldType beamFieldType, Object avroValue, BigQueryUtils.ConversionOptions options) Tries to convert an Avro decoded value to a Beam field value based on the target type of the Beam field.static TableRowConvert generic record to Bq TableRow.static TableRowconvertGenericRecordToTableRow(GenericRecord record, TableSchema tableSchema) Deprecated.static TableSchemafromGenericAvroSchema(Schema schema) Convert an AvroSchemato a BigQueryTableSchema.static TableSchemafromGenericAvroSchema(Schema schema, Boolean useAvroLogicalTypes) Convert an AvroSchemato a BigQueryTableSchema.static SchemafromTableSchema(TableSchema tableSchema) Convert a BigQueryTableSchemato a BeamSchema.static SchemafromTableSchema(TableSchema tableSchema, BigQueryUtils.SchemaConversionOptions options) Convert a BigQueryTableSchemato a BeamSchema.static @Nullable org.apache.beam.runners.core.metrics.ServiceCallMetricreadCallMetric(@Nullable TableReference tableReference) static final org.apache.beam.sdk.io.gcp.bigquery.BigQueryIO.TypedRead.FromBeamRowFunction<TableRow> static final org.apache.beam.sdk.io.gcp.bigquery.BigQueryIO.TypedRead.ToBeamRowFunction<TableRow> static RowtoBeamRow(GenericRecord record, Schema schema, BigQueryUtils.ConversionOptions options) static Rowstatic RowtoBeamRow(Schema rowSchema, TableSchema bqSchema, TableRow jsonBqRow) Tries to parse the JSONTableRowfrom BigQuery.static SchematoGenericAvroSchema(TableSchema tableSchema) Convert a BigQueryTableSchemato AvroSchema.static SchematoGenericAvroSchema(TableSchema tableSchema, Boolean useAvroLogicalTypes) Convert a BigQueryTableSchemato AvroSchema.static SchematoGenericAvroSchema(String schemaName, List<TableFieldSchema> fieldSchemas) Convert a list of BigQueryTableFieldSchemato AvroSchema.static SchematoGenericAvroSchema(String schemaName, List<TableFieldSchema> fieldSchemas, Boolean useAvroLogicalTypes) Convert a list of BigQueryTableFieldSchemato AvroSchema.static @Nullable TableReferencetoTableReference(String fullTableId) static SerializableFunction<Row, TableRow> static <T> SerializableFunction<T, TableRow> toTableRow(SerializableFunction<T, Row> toRow) Convert a Beam schema type to a BigQueryTableRow.static TableRowtoTableRow(Row row) Convert a Beam Row to a BigQuery TableRow.static TableSchematoTableSchema(Schema schema) Convert a BeamSchemato a BigQueryTableSchema.toTableSpec(TableReference tableReference) static org.apache.beam.runners.core.metrics.ServiceCallMetricwriteCallMetric(TableReference tableReference)  
- 
Constructor Details
- 
BigQueryUtils
public BigQueryUtils() 
 - 
 - 
Method Details
- 
toTableSchema
Convert a BeamSchemato a BigQueryTableSchema. - 
fromTableSchema
Convert a BigQueryTableSchemato a BeamSchema. - 
fromTableSchema
public static Schema fromTableSchema(TableSchema tableSchema, BigQueryUtils.SchemaConversionOptions options) Convert a BigQueryTableSchemato a BeamSchema. - 
toGenericAvroSchema
Convert a BigQueryTableSchemato AvroSchema. - 
fromGenericAvroSchema
Convert an AvroSchemato a BigQueryTableSchema. - 
fromGenericAvroSchema
Convert an AvroSchemato a BigQueryTableSchema. - 
toGenericAvroSchema
Convert a BigQueryTableSchemato AvroSchema. - 
toGenericAvroSchema
Convert a list of BigQueryTableFieldSchemato AvroSchema. - 
toGenericAvroSchema
public static Schema toGenericAvroSchema(String schemaName, List<TableFieldSchema> fieldSchemas, Boolean useAvroLogicalTypes) Convert a list of BigQueryTableFieldSchemato AvroSchema. - 
tableRowToBeamRow
public static final org.apache.beam.sdk.io.gcp.bigquery.BigQueryIO.TypedRead.ToBeamRowFunction<TableRow> tableRowToBeamRow() - 
tableRowFromBeamRow
public static final org.apache.beam.sdk.io.gcp.bigquery.BigQueryIO.TypedRead.FromBeamRowFunction<TableRow> tableRowFromBeamRow() - 
toTableRow
 - 
toTableRow
Convert a Beam schema type to a BigQueryTableRow. - 
toBeamRow
public static Row toBeamRow(GenericRecord record, Schema schema, BigQueryUtils.ConversionOptions options)  - 
convertGenericRecordToTableRow
@Deprecated public static TableRow convertGenericRecordToTableRow(GenericRecord record, TableSchema tableSchema) Deprecated.Convert generic record to Bq TableRow. - 
convertGenericRecordToTableRow
Convert generic record to Bq TableRow. - 
toTableRow
Convert a Beam Row to a BigQuery TableRow. - 
toBeamRow
 - 
toBeamRow
Tries to parse the JSONTableRowfrom BigQuery.Only supports basic types and arrays. Doesn't support date types.
 - 
convertAvroFormat
public static Object convertAvroFormat(Schema.FieldType beamFieldType, Object avroValue, BigQueryUtils.ConversionOptions options) Tries to convert an Avro decoded value to a Beam field value based on the target type of the Beam field.For the Avro formats of BigQuery types, see https://cloud.google.com/bigquery/docs/exporting-data#avro_export_details and https://cloud.google.com/bigquery/docs/loading-data-cloud-storage-avro#avro_conversions
 - 
toTableReference
- Parameters:
 fullTableId- - Is one of the two forms commonly used to refer to bigquery tables in the beam codebase:- projects/{project_id}/datasets/{dataset_id}/tables/{table_id}
 - myproject:mydataset.mytable
 - myproject.mydataset.mytable
 
- Returns:
 - a BigQueryTableIdentifier by parsing the fullTableId. If it cannot be parsed properly null is returned.
 
 - 
toTableSpec
- Parameters:
 tableReference- - a BigQueryTableIdentifier that may or may not include the project.- Returns:
 - a String representation of the table destination in the form: `myproject.mydataset.mytable`
 
 - 
readCallMetric
public static @Nullable org.apache.beam.runners.core.metrics.ServiceCallMetric readCallMetric(@Nullable TableReference tableReference) - Parameters:
 tableReference- - The table being read from. Can be a temporary BQ table used to read from a SQL query.- Returns:
 - a ServiceCallMetric for recording statuses for all BQ API responses related to reading elements directly from BigQuery in a process-wide metric. Such as: calls to readRows, splitReadStream, createReadSession.
 
 - 
writeCallMetric
public static org.apache.beam.runners.core.metrics.ServiceCallMetric writeCallMetric(TableReference tableReference) - Parameters:
 tableReference- - The table being written to.- Returns:
 - a ServiceCallMetric for recording statuses for all BQ responses related to writing elements directly to BigQuery in a process-wide metric. Such as: insertAll.
 
 
 - 
 
convertGenericRecordToTableRow(GenericRecord)