Data Client VolatileBlobApi

The VolatileBlobApi mirrors the Volatile Blob Rest Api.

It supports the upload and retrieval of volatile data from the storage of a catalog. Each discrete chunk of data is stored as a blob (Binary Large Object). Each blob has its own unique ID (data handle), which is stored as partition metadata. Unlike with BlobApi, data handles can be overwritten.

For the full VolatileBlobApi specification, see VolatileBlobApi.

The following pages describe the per-request configuration and metrics.

Example

Scala
Java
val client = BaseClient()
val volatileBlobApi = client.of[VolatileBlobApi]

val someHrn = "hrn:here:data::olp-here-test:whatever"
val someLayer = "whateverLayer"
val someDataHandle = "whateverDataHandle"
val result: Future[Array[Byte]] =
  volatileBlobApi.getVolatileBlob(someHrn, someLayer, someDataHandle).executeToEntity()

result
  .andThen {
    case Success(response) =>
      // do something with the byte array
      println(s"received ${response.length} bytes")
    case Failure(ex) =>
      ex.printStackTrace()
  }
  .andThen {
    case _ =>
      client.shutdown()
  }

Await.result(result, Duration.Inf)
BaseClient client = BaseClientJava.instance();
VolatileBlobApi volatileBlobApi = new VolatileBlobApi(client);

String someHrn = "hrn:here:data::olp-here-test:whatever";
String someLayer = "whateverLayer";
String someDataHandle = "whateverDataHandle";
byte[] result =
    volatileBlobApi
        .getVolatileBlob(someHrn, someLayer, someDataHandle, Optional.empty())
        .executeToBytes()
        .toCompletableFuture()
        .join();

// do something with the byte array
System.out.printf("received %d bytes\n", result.length);

client.shutdown().toCompletableFuture().join();

results matching ""

    No results matching ""