Skip to main content
NetApp Knowledge Base

What is the difference between Consistency level Read-after-new-write and Available?

Views:
1,306
Visibility:
Public
Votes:
1
Category:
storagegrid
Specialty:
sgrid
Last Updated:

Applies to

NetApp StorageGRID

Answer

WARNING

Bucket consistency "Available" is NOT recommended for ONTAP FabricPool as it may cause user data inconsistencies.

For pre-11.5.0.3 release:

Available (eventual consistency for HEAD operations) Behaves the same as the Read-after-new-write consistency level, but only provides eventual consistency for HEAD operations. Offers higher availability for HEAD operations than Read-after-new-write if Storage Nodes are unavailable. Differs from Amazon S3 consistency guarantees for HEAD operations only.

clipboard_e4d264697451b4ac5cae1b47fb217cc4c.png

For post-11.5.0.3 release:

Note: From 11.5.0.3, non-existent GET matches to HEAD to return 404 when bucket consistency is set to Available

Behaves the same as the Read-after-new-write consistency level, but provides eventual consistency for HEAD and GET operations. Offers higher availability for HEAD and GET operations than Read-after-new-write if Storage Nodes are unavailable. Differs from Amazon S3 consistency guarantees for HEAD and GET operations.

Consistency_KB.png

Additional Information

Changing the consistency level

Starting in 11.5, a customer can detect if one or more applications are doing non-existent reads via metrics. If this metrics indicates frequent use of non-existent reads (eg, once every few minutes), this is a good indication they should change from Read-after-new-write to Available so that they can tolerate one node down. This assumes the application does not require read-after-write consistency. To identify the exact bucket or tenant performing non-existent reads requires further log analysis or discussions with application owners as the metric does not include bucket/tenant information.
 
storagegrid_s3_requests_total{operation=~"get_object|head_object",code="404"}

 

 

NetApp provides no representations or warranties regarding the accuracy or reliability or serviceability of any information or recommendations provided in this publication or with respect to any results that may be obtained by the use of the information or observance of any recommendations provided herein. The information in this document is distributed AS IS and the use of this information or the implementation of any recommendations or techniques herein is a customer's responsibility and depends on the customer's ability to evaluate and integrate them into the customer's operational environment. This document and the information contained herein may be used solely in connection with the NetApp products discussed in this document.