-
Notifications
You must be signed in to change notification settings - Fork 862
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DynamoDB unmarshalling slow #3551
Comments
We are currently working on a V4 of the SDK. As part of that V4 we hoping to switch the SDK's JSON parsing to System.Text.Json from the its internal usage of a JSON library called LitJson. We aren't far enough yet with the change to measure the performance difference but we will use your sample code for measure the difference. |
Needs review with the team as v4 backlog item. |
Does this mean that this is not going to be fixed until V4? . . . and when would V4 be available? |
We're not planning to change the serialization in V3 as that'd be too much of a breaking change. For V4, you can track the progress here: #3362 See also Norm's latest comment about V4's timeline: #3362 (comment) |
I see . . . I tried with the v4 preview and the unmarshalling time is better but still not great:
(it is 2 times slower than the raw DynamoDB call instead of 4+ . . . ) |
Keep in mind that |
Ah I see, thanks |
Describe the bug
Unmarshalling DynamoDB GetItem / BatchGetItem response is slow - ~700 msec for a 1.7 MB response
Regression Issue
Expected Behavior
Unmarshalling time << of the HTTP request time
Current Behavior
Unmarshalling time >> of the HTTP request time
Reproduction Steps
Copy the following files in a S3 folder:
djk7enshnmzkphkldeszvgzole.json.gz
ikhj4i2zsi4ptfwkszjkizzvly.json.gz
jmknnpggim2u3fd3lknw5njlsq.json.gz
m5lnl37q7a7z7hvykktyqt2mn4.json.gz
Use the DynamoDB 'Import from S3' function on that folder to create a table
dbperftest
@rid
(string)-No sort key
Download, compile and run
DBPerfTestConsole.zip
AWS_PROFILE
andAWS_REGION
environment variables (SSO is fine)dbperftest
table in various ways - main one being reading 100 items using a single BatchGetItemCall - whose statistics are:with an unmarshall time that is more than three times the HTTP request time
Possible Solution
No response
Additional Information/Context
No response
AWS .NET SDK and/or Package version used
AWSSDK.DynamoDBv2 3.7.403.3
Targeted .NET Platform
.NET Core 8
Operating System and version
Windows 11, Amazon Linux
The text was updated successfully, but these errors were encountered: