Class BigtableRowToBeamRow

java.lang.Object
org.apache.beam.sdk.transforms.PTransform<PCollection<com.google.bigtable.v2.Row>,PCollection<Row>>
org.apache.beam.sdk.io.gcp.bigtable.BigtableRowToBeamRow
All Implemented Interfaces:
Serializable, HasDisplayData

public class BigtableRowToBeamRow extends PTransform<PCollection<com.google.bigtable.v2.Row>,PCollection<Row>> implements Serializable
Bigtable reference: .

Bigtable Row is mapped to Beam Row in the following way:

row: key, columnFamily[] -> BEAM_ROW

columnFamily: familyName, column[] -> FAMILY

column: columnQualifier, cell[] -> most recent cell or ARRAY

cell: value, timestampMicros, labels -> VALUE

Mapped Beam Row:

BEAM_ROW: ROWinvalid input: '<'key STRING, [familyName FAMILY]+>

FAMILY: ROWinvalid input: '<'[columnName ARRAY or VALUE]+>

VALUE:ROW_CELL or Schema type except for: ARRAY, DECIMAL, ITERABLE, MAP, ROW

ROW_CELL: ROWinvalid input: '<'val VALUE [, timestampMicros INT64] [, labels ARRAY]>

Note: ARRAY is not supported for now.

See Also:
  • Constructor Details

    • BigtableRowToBeamRow

      public BigtableRowToBeamRow(Schema schema)
  • Method Details

    • expand

      public PCollection<Row> expand(PCollection<com.google.bigtable.v2.Row> input)
      Description copied from class: PTransform
      Override this method to specify how this PTransform should be expanded on the given InputT.

      NOTE: This method should not be called directly. Instead apply the PTransform should be applied to the InputT using the apply method.

      Composite transforms, which are defined in terms of other transforms, should return the output of one of the composed transforms. Non-composite transforms, which do not apply any transforms internally, should return a new unbound output and register evaluators (via backend-specific registration methods).

      Specified by:
      expand in class PTransform<PCollection<com.google.bigtable.v2.Row>,PCollection<Row>>