Java Code Examples for com.google.api.services.bigquery.model.TableRow#getF()
The following examples show how to use
com.google.api.services.bigquery.model.TableRow#getF() .
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: DLPTextToBigQueryStreaming.java From dlp-dataflow-deidentification with Apache License 2.0 | 6 votes |
@Override public TableSchema getSchema(KV<String, TableRow> destination) { TableRow bqRow = destination.getValue(); TableSchema schema = new TableSchema(); List<TableFieldSchema> fields = new ArrayList<TableFieldSchema>(); List<TableCell> cells = bqRow.getF(); for (int i = 0; i < cells.size(); i++) { Map<String, Object> object = cells.get(i); String header = object.keySet().iterator().next(); /** currently all BQ data types are set to String */ fields.add(new TableFieldSchema().setName(checkHeaderName(header)).setType("STRING")); } schema.setFields(fields); return schema; }
Example 2
Source File: BigQueryDynamicConverters.java From DataflowTemplates with Apache License 2.0 | 6 votes |
@Override public TableSchema getSchema(KV<TableId, TableRow> destination) { TableRow bqRow = destination.getValue(); TableSchema schema = new TableSchema(); List<TableFieldSchema> fields = new ArrayList<TableFieldSchema>(); List<TableCell> cells = bqRow.getF(); for (int i = 0; i < cells.size(); i++) { Map<String, Object> object = cells.get(i); String header = object.keySet().iterator().next(); /** currently all BQ data types are set to String */ // Why do we use checkHeaderName here and not elsewhere, TODO if we add this back in // fields.add(new TableFieldSchema().setName(checkHeaderName(header)).setType("STRING")); fields.add(new TableFieldSchema().setName(header).setType("STRING")); } schema.setFields(fields); return schema; }
Example 3
Source File: DLPTextToBigQueryStreaming.java From DataflowTemplates with Apache License 2.0 | 6 votes |
@Override public TableSchema getSchema(KV<String, TableRow> destination) { TableRow bqRow = destination.getValue(); TableSchema schema = new TableSchema(); List<TableFieldSchema> fields = new ArrayList<TableFieldSchema>(); List<TableCell> cells = bqRow.getF(); for (int i = 0; i < cells.size(); i++) { Map<String, Object> object = cells.get(i); String header = object.keySet().iterator().next(); /** currently all BQ data types are set to String */ fields.add(new TableFieldSchema().setName(checkHeaderName(header)).setType("STRING")); } schema.setFields(fields); return schema; }
Example 4
Source File: BigQueryDynamicConverters.java From DataflowTemplates with Apache License 2.0 | 6 votes |
@Override public TableSchema getSchema(KV<TableId, TableRow> destination) { TableRow bqRow = destination.getValue(); TableSchema schema = new TableSchema(); List<TableFieldSchema> fields = new ArrayList<TableFieldSchema>(); List<TableCell> cells = bqRow.getF(); for (int i = 0; i < cells.size(); i++) { Map<String, Object> object = cells.get(i); String header = object.keySet().iterator().next(); /** currently all BQ data types are set to String */ // Why do we use checkHeaderName here and not elsewhere, TODO if we add this back in // fields.add(new TableFieldSchema().setName(checkHeaderName(header)).setType("STRING")); fields.add(new TableFieldSchema().setName(header).setType("STRING")); } schema.setFields(fields); return schema; }
Example 5
Source File: BigQueryInterpreter.java From zeppelin with Apache License 2.0 | 6 votes |
public static String printRows(final GetQueryResultsResponse response) { StringBuilder msg = new StringBuilder(); try { List<String> schemNames = new ArrayList<String>(); for (TableFieldSchema schem: response.getSchema().getFields()) { schemNames.add(schem.getName()); } msg.append(Joiner.on(TAB).join(schemNames)); msg.append(NEWLINE); for (TableRow row : response.getRows()) { List<String> fieldValues = new ArrayList<String>(); for (TableCell field : row.getF()) { fieldValues.add(field.getV().toString()); } msg.append(Joiner.on(TAB).join(fieldValues)); msg.append(NEWLINE); } return msg.toString(); } catch (NullPointerException ex) { throw new NullPointerException("SQL Execution returned an error!"); } }
Example 6
Source File: BigqueryMatcher.java From beam with Apache License 2.0 | 5 votes |
private String generateHash(@Nonnull List<TableRow> rows) { List<HashCode> rowHashes = Lists.newArrayList(); for (TableRow row : rows) { List<String> cellsInOneRow = Lists.newArrayList(); for (TableCell cell : row.getF()) { cellsInOneRow.add(Objects.toString(cell.getV())); Collections.sort(cellsInOneRow); } rowHashes.add(Hashing.sha1().hashString(cellsInOneRow.toString(), StandardCharsets.UTF_8)); } return Hashing.combineUnordered(rowHashes).toString(); }
Example 7
Source File: S3Import.java From dlp-dataflow-deidentification with Apache License 2.0 | 4 votes |
@Override public TableSchema getSchema(KV<String, TableRow> destination) { TableRow bqRow = destination.getValue(); TableSchema schema = new TableSchema(); List<TableFieldSchema> fields = new ArrayList<TableFieldSchema>(); // When TableRow is created in earlier steps, setF() was // used to setup TableCells so that Table Schema can be constructed List<TableCell> cells = bqRow.getF(); for (int i = 0; i < cells.size(); i++) { Map<String, Object> object = cells.get(i); String header = object.keySet().iterator().next(); String type = Util.typeCheck(object.get(header).toString()); LOG.debug("Type {}, header {}, value {}", type, header, object.get(header).toString()); if (type.equals("RECORD")) { String keyValuePair = object.get(header).toString(); String[] records = keyValuePair.split(","); List<TableFieldSchema> nestedFields = new ArrayList<TableFieldSchema>(); for (int j = 0; j < records.length; j++) { String[] element = records[j].substring(1).split("="); String elementValue = element[1].substring(0, element[1].length() - 1); String elementType = Util.typeCheck(elementValue.trim()); LOG.debug( "element header {} , element type {}, element Value {}", element[0], elementType, elementValue); nestedFields.add(new TableFieldSchema().setName(element[0]).setType(elementType)); } fields.add(new TableFieldSchema().setName(header).setType(type).setFields(nestedFields)); } else { fields.add(new TableFieldSchema().setName(header).setType(type)); } } schema.setFields(fields); return schema; }