public class StreamWriterV2 implements AutoCloseable
A BigQuery Stream Writer that can be used to write data into BigQuery Table.
TODO: Support batching.
TODO: Support schema change.
This client lib is deprecated, please use v1 instead.
Implements
AutoCloseableStatic Methods
getApiMaxRequestBytes()
public static long getApiMaxRequestBytes()
The maximum size of one request. Defined by the API.
Returns | |
---|---|
Type | Description |
long |
newBuilder(String streamName)
public static StreamWriterV2.Builder newBuilder(String streamName)
Constructs a new StreamWriterV2.Builder using the given stream.
Parameter | |
---|---|
Name | Description |
streamName | String |
Returns | |
---|---|
Type | Description |
StreamWriterV2.Builder |
newBuilder(String streamName, BigQueryWriteClient client)
public static StreamWriterV2.Builder newBuilder(String streamName, BigQueryWriteClient client)
Constructs a new StreamWriterV2.Builder using the given stream and client. AppendRows needs special headers to be added to client, so a passed in client will not work. This should be used by test only.
Parameters | |
---|---|
Name | Description |
streamName | String |
client | BigQueryWriteClient |
Returns | |
---|---|
Type | Description |
StreamWriterV2.Builder |
Methods
append(ProtoRows rows, long offset)
public ApiFuture<AppendRowsResponse> append(ProtoRows rows, long offset)
Schedules the writing of a message.
Example of writing a message.
AppendRowsRequest message;
ApiFuture<AppendRowsResponse> messageIdFuture = writer.append(message);
ApiFutures.addCallback(messageIdFuture, new ApiFutureCallback<AppendRowsResponse>() {
public void onSuccess(AppendRowsResponse response) {
if (!response.hasError()) {
System.out.println("written with offset: " + response.getAppendResult().getOffset());
} else {
System.out.println("received an in stream error: " + response.getError().toString());
}
}
public void onFailure(Throwable t) {
System.out.println("failed to write: " + t);
}
}, MoreExecutors.directExecutor());
Parameters | |
---|---|
Name | Description |
rows | ProtoRows the rows in serialized format to write to BigQuery. |
offset | long the offset of the first row. |
Returns | |
---|---|
Type | Description |
ApiFuture<AppendRowsResponse> | the append response wrapped in a future. |
close()
public void close()
Close the stream writer. Shut down all resources.