Java API
The Ozone client factory creates the ozone client. To get a RPC client we can call
If the user want to create a client based on the configuration, then they can call.
and an appropriate client based on configuration will be returned.
Writing data using Ozone Client
Once we have a client, we need to get a reference to the ObjectStore. This is done via
An object store represents an active cluster against which the client is working.
// Let us create a volume to store our game assets.
// This uses default arguments for creating that volume.
objectStore.createVolume("assets");
// Let us verify that the volume got created.
OzoneVolume assets = objectStore.getVolume("assets");
It is possible to pass an array of arguments to the createVolume by creating volume arguments.
At this point we have a usable volume and a bucket. Our volume is called assets and bucket is called videos.
Now we can create a Key.
With a bucket object the users can now read and write keys. The following code reads a video called intro.mp4 from the local disk and stores in the video bucket that we just created.
// read data from the file, this is a user provided function.
// Create an output stream and write data.
OzoneOutputStream videoStream = video.createKey("intro.mp4", 1048576);
videoStream.write(videoData);
videoStream.close();
// We can use the same bucket to read the file that we just wrote, by creating an input Stream.
// Let us allocate a byte array to hold the video first.
byte[] data = new byte[(int)1048576];
OzoneInputStream introStream = video.readKey("intro.mp4");
// read intro.mp4 into the data buffer
introStream.read(data);