@AutoService(value=TableProvider.class) public class PubsubLiteTableProvider extends InMemoryMetaTableProvider
Pub/Sub Lite tables may be constructed with:
CREATE EXTERNAL TABLE tableName(
message_key BYTES [NOT NULL], // optional, always present on read
publish_timestamp TIMESTAMP [NOT NULL], // optional, readable tables only, always present on read
event_timestamp TIMESTAMP [NOT NULL], // optional, null if not present in readable table, unset in message if null in writable table. NOT NULL enforces field presence on read
attributes ARRAY<ROW<key VARCHAR, values ARRAY<BYTES>>>, // optional, null values never present on reads or handled on writes
payload BYTES | ROW<[INSERT SCHEMA HERE]>,
)
TYPE pubsublite
// For writable tables
LOCATION 'projects/[PROJECT]/locations/[CLOUD ZONE]/topics/[TOPIC]'
// For readable tables
LOCATION 'projects/[PROJECT]/locations/[CLOUD ZONE]/subscriptions/[SUBSCRIPTION]'
TBLPROPERTIES '{
"deadLetterQueue": "[DLQ_KIND]:[DLQ_ID]", // optional
"format": "[FORMAT]", // optional
// format params
}'
Constructor and Description |
---|
PubsubLiteTableProvider() |
Modifier and Type | Method and Description |
---|---|
BeamSqlTable |
buildBeamSqlTable(Table table)
Build a
BeamSqlTable using the given table meta info. |
java.lang.String |
getTableType()
Gets the table type this provider handles.
|
createTable, dropTable, getTables
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getSubProvider, getSubProviders, getTable
public java.lang.String getTableType()
TableProvider
public BeamSqlTable buildBeamSqlTable(Table table)
TableProvider
BeamSqlTable
using the given table meta info.