Java Code Examples for com.google.cloud.bigquery.Field#of()
The following examples show how to use
com.google.cloud.bigquery.Field#of() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: TestTypeConversions.java From presto with Apache License 2.0 | 6 votes |
@Test public void testConvertTwoLevelsRecordField() { Field field = Field.of( "rec", LegacySQLTypeName.RECORD, Field.of("sub_rec", LegacySQLTypeName.RECORD, Field.of("sub_sub_s", LegacySQLTypeName.STRING), Field.of("sub_sub_i", LegacySQLTypeName.INTEGER)), Field.of("sub_s", LegacySQLTypeName.STRING), Field.of("sub_i", LegacySQLTypeName.INTEGER)); ColumnMetadata metadata = Conversions.toColumnMetadata(field); RowType targetType = RowType.rowType( RowType.field("sub_rec", RowType.rowType( RowType.field("sub_sub_s", VarcharType.VARCHAR), RowType.field("sub_sub_i", BigintType.BIGINT))), RowType.field("sub_s", VarcharType.VARCHAR), RowType.field("sub_i", BigintType.BIGINT)); assertThat(metadata.getType()).isEqualTo(targetType); }
Example 2
Source File: BigQueryMapper.java From DataflowTemplates with Apache License 2.0 | 6 votes |
private Boolean addNewTableField(TableId tableId, TableRow row, String rowKey, List<Field> newFieldList, Map<String, LegacySQLTypeName> inputSchema) { // Call Get Schema and Extract New Field Type Field newField; if (inputSchema.containsKey(rowKey)) { newField = Field.of(rowKey, inputSchema.get(rowKey)); } else { newField = Field.of(rowKey, LegacySQLTypeName.STRING); } newFieldList.add(newField); // Currently we always add new fields for each call // TODO: add an option to ignore new field and why boolean? return true; }
Example 3
Source File: BigQueryMapper.java From DataflowTemplates with Apache License 2.0 | 6 votes |
private Boolean addNewTableField(TableId tableId, TableRow row, String rowKey, List<Field> newFieldList, Map<String, LegacySQLTypeName> inputSchema) { // Call Get Schema and Extract New Field Type Field newField; if (inputSchema.containsKey(rowKey)) { newField = Field.of(rowKey, inputSchema.get(rowKey)); } else { newField = Field.of(rowKey, LegacySQLTypeName.STRING); } newFieldList.add(newField); // Currently we always add new fields for each call // TODO: add an option to ignore new field and why boolean? return true; }
Example 4
Source File: CreateTableAndLoadData.java From google-cloud-java with Apache License 2.0 | 6 votes |
public static void main(String... args) throws InterruptedException, TimeoutException { BigQuery bigquery = BigQueryOptions.getDefaultInstance().getService(); TableId tableId = TableId.of("dataset", "table"); Table table = bigquery.getTable(tableId); if (table == null) { System.out.println("Creating table " + tableId); Field integerField = Field.of("fieldName", LegacySQLTypeName.INTEGER); Schema schema = Schema.of(integerField); table = bigquery.create(TableInfo.of(tableId, StandardTableDefinition.of(schema))); } System.out.println("Loading data into table " + tableId); Job loadJob = table.load(FormatOptions.csv(), "gs://bucket/path"); loadJob = loadJob.waitFor(); if (loadJob.getStatus().getError() != null) { System.out.println("Job completed with errors"); } else { System.out.println("Job succeeded"); } }
Example 5
Source File: BigQuerySnippets.java From google-cloud-java with Apache License 2.0 | 6 votes |
/** Example of creating a table. */ // [TARGET create(TableInfo, TableOption...)] // [VARIABLE "my_dataset_name"] // [VARIABLE "my_table_name"] // [VARIABLE "string_field"] public Table createTable(String datasetName, String tableName, String fieldName) { // [START bigquery_create_table] TableId tableId = TableId.of(datasetName, tableName); // Table field definition Field field = Field.of(fieldName, LegacySQLTypeName.STRING); // Table schema definition Schema schema = Schema.of(field); TableDefinition tableDefinition = StandardTableDefinition.of(schema); TableInfo tableInfo = TableInfo.newBuilder(tableId, tableDefinition).build(); Table table = bigquery.create(tableInfo); // [END bigquery_create_table] return table; }
Example 6
Source File: TestTypeConversions.java From presto with Apache License 2.0 | 5 votes |
@Test public void testConvertOneLevelRecordField() { Field field = Field.of( "rec", LegacySQLTypeName.RECORD, Field.of("sub_s", LegacySQLTypeName.STRING), Field.of("sub_i", LegacySQLTypeName.INTEGER)); ColumnMetadata metadata = Conversions.toColumnMetadata(field); RowType targetType = RowType.rowType( RowType.field("sub_s", VarcharType.VARCHAR), RowType.field("sub_i", BigintType.BIGINT)); assertThat(metadata.getType()).isEqualTo(targetType); }
Example 7
Source File: BigQuerySnippets.java From google-cloud-java with Apache License 2.0 | 5 votes |
/** Example of loading a newline-delimited-json file with textual fields from GCS to a table. */ // [TARGET create(JobInfo, JobOption...)] // [VARIABLE "my_dataset_name"] // [VARIABLE "my_table_name"] public Long writeRemoteFileToTable(String datasetName, String tableName) throws InterruptedException { // [START bigquery_load_table_gcs_json] String sourceUri = "gs://cloud-samples-data/bigquery/us-states/us-states.json"; TableId tableId = TableId.of(datasetName, tableName); // Table field definition Field[] fields = new Field[] { Field.of("name", LegacySQLTypeName.STRING), Field.of("post_abbr", LegacySQLTypeName.STRING) }; // Table schema definition Schema schema = Schema.of(fields); LoadJobConfiguration configuration = LoadJobConfiguration.builder(tableId, sourceUri) .setFormatOptions(FormatOptions.json()) .setCreateDisposition(CreateDisposition.CREATE_IF_NEEDED) .setSchema(schema) .build(); // Load the table Job loadJob = bigquery.create(JobInfo.of(configuration)); loadJob = loadJob.waitFor(); // Check the table System.out.println("State: " + loadJob.getStatus().getState()); return ((StandardTableDefinition) bigquery.getTable(tableId).getDefinition()).getNumRows(); // [END bigquery_load_table_gcs_json] }
Example 8
Source File: TestTypeConversions.java From presto with Apache License 2.0 | 4 votes |
private static Field createField(LegacySQLTypeName type) { return Field.of("test", type); }
Example 9
Source File: InsertDataAndQueryTable.java From google-cloud-java with Apache License 2.0 | 4 votes |
public static void main(String... args) throws InterruptedException { // Create a service instance BigQuery bigquery = BigQueryOptions.getDefaultInstance().getService(); // Create a dataset String datasetId = "my_dataset_id"; bigquery.create(DatasetInfo.newBuilder(datasetId).build()); TableId tableId = TableId.of(datasetId, "my_table_id"); // Table field definition Field stringField = Field.of("StringField", LegacySQLTypeName.STRING); // Table schema definition Schema schema = Schema.of(stringField); // Create a table StandardTableDefinition tableDefinition = StandardTableDefinition.of(schema); bigquery.create(TableInfo.of(tableId, tableDefinition)); // Define rows to insert Map<String, Object> firstRow = new HashMap<>(); Map<String, Object> secondRow = new HashMap<>(); firstRow.put("StringField", "value1"); secondRow.put("StringField", "value2"); // Create an insert request InsertAllRequest insertRequest = InsertAllRequest.newBuilder(tableId).addRow(firstRow).addRow(secondRow).build(); // Insert rows InsertAllResponse insertResponse = bigquery.insertAll(insertRequest); // Check if errors occurred if (insertResponse.hasErrors()) { System.out.println("Errors occurred while inserting rows"); } // Create a query request QueryJobConfiguration queryConfig = QueryJobConfiguration.newBuilder("SELECT * FROM my_dataset_id.my_table_id").build(); // Read rows System.out.println("Table rows:"); for (FieldValueList row : bigquery.query(queryConfig).iterateAll()) { System.out.println(row); } }