You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ratis.apache.org by "runzhiwang (Jira)" <ji...@apache.org> on 2021/02/07 12:16:00 UTC
[jira] [Issue Comment Deleted] (RATIS-979) Ratis streaming
[ https://issues.apache.org/jira/browse/RATIS-979?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
runzhiwang updated RATIS-979:
-----------------------------
Comment: was deleted
(was: [~szetszwo] Hi, I have test the performance of HDFS and Ratis streaming. But Ratis streaming is about 30% slower than HDFS. When 2 clients * 128MB * 200 files, Ratis streaming cost about 80 seconds, HDFS cost about 60 seconds. Not sure why.
In my test, as the following code shows, I did not call startTransaction to avoid submitting raft request, so that we can only compare the performance of network and write disk.
If you need the flame graph, I can attach them.
{code:java}
composeAsync(info.getPrevious(), requestExecutor, n -> JavaUtils.allOf(remoteWrites)
.thenCombineAsync(localWrite, (v, bytesWritten) -> {
if (request.getType() == Type.STREAM_HEADER
|| (request.getType() == Type.STREAM_DATA && !close)) {
sendReply(remoteWrites, request, bytesWritten, ctx);
} else if (close) {
sendReply(remoteWrites, request, bytesWritten, ctx);
// if (info.isPrimary()) {
// // after all server close stream, primary server start transaction
// startTransaction(info, request, bytesWritten, ctx);
// } else {
// sendReply(remoteWrites, request, bytesWritten, ctx);
// }
} else {
throw new IllegalStateException(this + ": Unexpected type " + request.getType() + ", request=" + request);
}
return null;
}, requestExecutor)).whenComplete((v, exception) -> {
{code}
)
> Ratis streaming
> ---------------
>
> Key: RATIS-979
> URL: https://issues.apache.org/jira/browse/RATIS-979
> Project: Ratis
> Issue Type: New Feature
> Components: Streaming
> Reporter: Tsz-wo Sze
> Assignee: Tsz-wo Sze
> Priority: Major
> Attachments: RatisStreaming20200929.pdf, screenshot-1.png, screenshot-2.png, screenshot-3.png
>
>
> In this JIRA, we design and implement Ratis Streaming with zero buffer copying and asynchronous event driven.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)