Uploaded image for project: 'Apache Ozone'
  1. Apache Ozone
  2. HDDS-10283

Apply zero copy to Ozone client reads chunks

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • None
    • None
    • Ozone Client

    Description

      Ozone client, or ChunkInputStream, reads chunks via grpc call. The chunk data is included in the `ReadChunkResponseProto` serialized by GRPC. By default, GRPC serializes bytes data by copying the data it receives from network (in the native memory zone) to heap buffers (LiteralByteString). The ChunkInputStream uses these buffers to back the read.

      We can apply zero-copy marshaller (ZeroCopyMessageMarshaller) to client reads to instruct GRPC to serialize chunks by wrapping the direct buffers of data received from the network. This will eliminate the need to allocate extra heap buffers when reading data.

       

       

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              duongnguyen Duong
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated: