public sealed class ReadRowsResponse.Types.CellChunk : IMessage<ReadRowsResponse.Types.CellChunk>, IEquatable<ReadRowsResponse.Types.CellChunk>, IDeepCloneable<ReadRowsResponse.Types.CellChunk>, IBufferMessage, IMessage
Reference documentation and code samples for the Google Bigtable v2 API class ReadRowsResponse.Types.CellChunk.
Specifies a piece of a row's contents returned as part of the read
response stream.
The column family name for this chunk of data. If this message
is not present this CellChunk is a continuation of the same column
family as the previous CellChunk. The empty string can occur as a
column family name in a response so clients must check
explicitly for the presence of this message, not just for
family_name.value being non-empty.
The column qualifier for this chunk of data. If this message
is not present, this CellChunk is a continuation of the same column
as the previous CellChunk. Column qualifiers may be empty so
clients must check for the presence of this message, not just
for qualifier.value being non-empty.
The row key for this chunk of data. If the row key is empty,
this CellChunk is a continuation of the same row as the previous
CellChunk in the response stream, even if that CellChunk was in a
previous ReadRowsResponse message.
The cell's stored timestamp, which also uniquely identifies it
within its column. Values are always expressed in
microseconds, but individual tables may set a coarser
granularity to further restrict the allowed values. For
example, a table which specifies millisecond granularity will
only allow values of timestamp_micros which are multiples of
Timestamps are only set in the first CellChunk per cell
(for cells split into multiple chunks).
The value stored in the cell. Cell values can be split across
multiple CellChunks. In that case only the value field will be
set in CellChunks after the first: the timestamp and labels
will only be present in the first CellChunk, even if the first
CellChunk came in a previous ReadRowsResponse.
If this CellChunk is part of a chunked cell value and this is
not the final chunk of that cell, value_size will be set to the
total length of the cell value. The client can use this size
to pre-allocate memory to hold the full cell value.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-12 UTC."],[[["\u003cp\u003eThis document provides reference documentation for the \u003ccode\u003eReadRowsResponse.Types.CellChunk\u003c/code\u003e class within the Google Bigtable v2 API for .NET.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eCellChunk\u003c/code\u003e class represents a piece of a row's content, which is returned as part of the read response stream when interacting with Google Bigtable.\u003c/p\u003e\n"],["\u003cp\u003eThe latest version of the \u003ccode\u003eReadRowsResponse.Types.CellChunk\u003c/code\u003e class is 3.17.0, with previous versions ranging from 3.16.0 down to 2.2.0, each with their respective documentation links.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eCellChunk\u003c/code\u003e class implements several interfaces, including \u003ccode\u003eIMessage\u003c/code\u003e, \u003ccode\u003eIEquatable\u003c/code\u003e, \u003ccode\u003eIDeepCloneable\u003c/code\u003e, and \u003ccode\u003eIBufferMessage\u003c/code\u003e, and also inherits from the object class, adding to the functionality of the class.\u003c/p\u003e\n"],["\u003cp\u003eKey properties of the \u003ccode\u003eCellChunk\u003c/code\u003e class include \u003ccode\u003eCommitRow\u003c/code\u003e, \u003ccode\u003eFamilyName\u003c/code\u003e, \u003ccode\u003eQualifier\u003c/code\u003e, \u003ccode\u003eRowKey\u003c/code\u003e, \u003ccode\u003eTimestampMicros\u003c/code\u003e, and \u003ccode\u003eValue\u003c/code\u003e, which collectively define the data content and characteristics of each chunk.\u003c/p\u003e\n"]]],[],null,["# Google Bigtable v2 API - Class ReadRowsResponse.Types.CellChunk (3.23.0)\n\nVersion latestkeyboard_arrow_down\n\n- [3.23.0 (latest)](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/latest/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.22.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.22.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.21.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.21.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.20.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.20.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.19.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.19.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.18.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.18.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.17.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.17.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.16.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.16.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.15.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.15.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.14.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.14.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.13.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.13.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.12.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.12.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.11.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.11.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.10.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.10.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.9.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.9.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.8.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.8.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.7.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.7.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.6.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.6.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.5.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.5.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.4.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.4.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.3.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.3.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.2.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.2.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.1.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.1.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [3.0.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.0.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [2.6.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/2.6.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [2.5.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/2.5.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [2.4.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/2.4.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [2.3.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/2.3.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk)\n- [2.2.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/2.2.0/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk) \n\n public sealed class ReadRowsResponse.Types.CellChunk : IMessage\u003cReadRowsResponse.Types.CellChunk\u003e, IEquatable\u003cReadRowsResponse.Types.CellChunk\u003e, IDeepCloneable\u003cReadRowsResponse.Types.CellChunk\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Google Bigtable v2 API class ReadRowsResponse.Types.CellChunk.\n\nSpecifies a piece of a row's contents returned as part of the read\nresponse stream. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e ReadRowsResponse.Types.CellChunk \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[ReadRowsResponse](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/latest/Google.Cloud.Bigtable.V2.ReadRowsResponse)[Types](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/latest/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types)[CellChunk](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/latest/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[ReadRowsResponse](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/latest/Google.Cloud.Bigtable.V2.ReadRowsResponse)[Types](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/latest/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types)[CellChunk](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/latest/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[ReadRowsResponse](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/latest/Google.Cloud.Bigtable.V2.ReadRowsResponse)[Types](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/latest/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types)[CellChunk](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/latest/Google.Cloud.Bigtable.V2.ReadRowsResponse.Types.CellChunk), [IBufferMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IBufferMessage.html), [IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage.html) \n\nInherited Members\n-----------------\n\n[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode) \n[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype) \n[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\nNamespace\n---------\n\n[Google.Cloud.Bigtable.V2](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/latest/Google.Cloud.Bigtable.V2)\n\nAssembly\n--------\n\nGoogle.Cloud.Bigtable.V2.dll\n\nConstructors\n------------\n\n### CellChunk()\n\n public CellChunk()\n\n### CellChunk(CellChunk)\n\n public CellChunk(ReadRowsResponse.Types.CellChunk other)\n\nProperties\n----------\n\n### CommitRow\n\n public bool CommitRow { get; set; }\n\nIndicates that the client can safely process all previous chunks for\n`row_key`, as its data has been fully read.\n\n### FamilyName\n\n public string FamilyName { get; set; }\n\nThe column family name for this chunk of data. If this message\nis not present this CellChunk is a continuation of the same column\nfamily as the previous CellChunk. The empty string can occur as a\ncolumn family name in a response so clients must check\nexplicitly for the presence of this message, not just for\n`family_name.value` being non-empty.\n\n### HasCommitRow\n\n public bool HasCommitRow { get; }\n\nGets whether the \"commit_row\" field is set\n\n### HasResetRow\n\n public bool HasResetRow { get; }\n\nGets whether the \"reset_row\" field is set\n\n### Labels\n\n public RepeatedField\u003cstring\u003e Labels { get; }\n\nLabels applied to the cell by a\n\\[RowFilter\\]\\[google.bigtable.v2.RowFilter\\]. Labels are only set\non the first CellChunk per cell.\n\n### Qualifier\n\n public ByteString Qualifier { get; set; }\n\nThe column qualifier for this chunk of data. If this message\nis not present, this CellChunk is a continuation of the same column\nas the previous CellChunk. Column qualifiers may be empty so\nclients must check for the presence of this message, not just\nfor `qualifier.value` being non-empty.\n\n### ResetRow\n\n public bool ResetRow { get; set; }\n\nIndicates that the client should drop all previous chunks for\n`row_key`, as it will be re-read from the beginning.\n\n### RowKey\n\n public ByteString RowKey { get; set; }\n\nThe row key for this chunk of data. If the row key is empty,\nthis CellChunk is a continuation of the same row as the previous\nCellChunk in the response stream, even if that CellChunk was in a\nprevious ReadRowsResponse message.\n\n### RowStatusCase\n\n public ReadRowsResponse.Types.CellChunk.RowStatusOneofCase RowStatusCase { get; }\n\n### TimestampMicros\n\n public long TimestampMicros { get; set; }\n\nThe cell's stored timestamp, which also uniquely identifies it\nwithin its column. Values are always expressed in\nmicroseconds, but individual tables may set a coarser\ngranularity to further restrict the allowed values. For\nexample, a table which specifies millisecond granularity will\nonly allow values of `timestamp_micros` which are multiples of\n\n1. Timestamps are only set in the first CellChunk per cell (for cells split into multiple chunks).\n\n### Value\n\n public ByteString Value { get; set; }\n\nThe value stored in the cell. Cell values can be split across\nmultiple CellChunks. In that case only the value field will be\nset in CellChunks after the first: the timestamp and labels\nwill only be present in the first CellChunk, even if the first\nCellChunk came in a previous ReadRowsResponse.\n\n### ValueSize\n\n public int ValueSize { get; set; }\n\nIf this CellChunk is part of a chunked cell value and this is\nnot the final chunk of that cell, value_size will be set to the\ntotal length of the cell value. The client can use this size\nto pre-allocate memory to hold the full cell value."]]