@Override
    public <T> T execute(DirectIOOp<T> op) throws IOException {
      try (DirectIoByteChannelAligner directIo = DirectIoByteChannelAligner.open(file, 2 * 1024 * 1024, false)) {
        return op.run(directIo);
      }
    }
A non-buffered implementation of {@link DirectIOExecutor}. It will open a direct io file every time an operation
is executed.
ambry-store/src/main/java/com/github/ambry/store/LogSegment.java