Bigtable stores data in rows, indexes by row keys. Each row may contain multiple column families, each column family might contain multiple columns, and each column has multiple cells indexed by timestamp. Notice that the storage is sparse, column families, columns, and timestamps might contain zero cells.
This function does not participate in overload resolution ifValueTypeis not an integral type. The case for integral types is handled by a separate overload.
Create a cell and fill it with data, but with empty labels.
Parameters
Name
Description
row_key
KeyType &&
family_name
std::string
column_qualifier
ColumnType &&
timestamp
std::int64_t
value
ValueType &&
typename KeyType
typename ColumnType
typename ValueType
Functions
row_key() const
Return the row key this cell belongs to.
The returned value is not valid after this object is deleted.
Returns
Type
Description
RowKeyType const &
family_name() const
Return the family this cell belongs to.
The returned value is not valid after this object is deleted.
Returns
Type
Description
std::string const &
column_qualifier() const
Return the column this cell belongs to.
The returned value is not valid after this object is deleted.
Returns
Type
Description
ColumnQualifierType const &
timestamp() const
Return the timestamp of this cell.
Returns
Type
Description
std::chrono::microseconds
value() const &
Return the contents of this cell.
The returned value is not valid after this object is deleted.
Returns
Type
Description
CellValueType const &
value() &&
Return the contents of this cell.
Returns
Type
Description
CellValueType &&
decode_big_endian_integer() const
Interpret the value as a big-endian encodedTand return it.
Google Cloud Bigtable stores arbitrary blobs in each cell. Some applications interpret these blobs as strings, other as encoded protos, and sometimes as big-endian integers. This is a helper function to convert the blob into a T value.
Parameter
Name
Description
typename T
Returns
Type
Description
StatusOr< T >
labels() const
Return the labels applied to this cell by label transformer read filters.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[[["\u003cp\u003eThe document details the \u003ccode\u003eCell\u003c/code\u003e class in the Google Cloud Bigtable C++ client library, which represents an in-memory representation of a Bigtable cell, storing data within rows, column families, and columns indexed by timestamps.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eCell\u003c/code\u003e class offers multiple constructors to create cells with varying data types, including support for 64-bit integers encoded as big-endian values and options for including or excluding labels.\u003c/p\u003e\n"],["\u003cp\u003eThe class provides methods like \u003ccode\u003erow_key()\u003c/code\u003e, \u003ccode\u003efamily_name()\u003c/code\u003e, \u003ccode\u003ecolumn_qualifier()\u003c/code\u003e, \u003ccode\u003etimestamp()\u003c/code\u003e, \u003ccode\u003evalue()\u003c/code\u003e, and \u003ccode\u003elabels()\u003c/code\u003e to retrieve the respective attributes of a cell, such as its row key, column family, column qualifier, timestamp, content, and labels.\u003c/p\u003e\n"],["\u003cp\u003eA helper function called \u003ccode\u003edecode_big_endian_integer()\u003c/code\u003e is available to interpret the cell's value as a big-endian encoded integer, allowing for the conversion of the stored blob into a specified type.\u003c/p\u003e\n"],["\u003cp\u003eThe document contains links to the documentation for various versions of the Bigtable C++ client library, ranging from version 2.11.0 up to 2.37.0-rc, with the current page focusing on version 2.27.0.\u003c/p\u003e\n"]]],[],null,["# Class Cell (2.27.0)\n\nVersion 2.27.0keyboard_arrow_down\n\n- [2.42.0-rc (latest)](/cpp/docs/reference/bigtable/latest/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.41.0](/cpp/docs/reference/bigtable/2.41.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.40.0](/cpp/docs/reference/bigtable/2.40.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.39.0](/cpp/docs/reference/bigtable/2.39.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.38.0](/cpp/docs/reference/bigtable/2.38.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.37.0](/cpp/docs/reference/bigtable/2.37.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.36.0](/cpp/docs/reference/bigtable/2.36.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.35.0](/cpp/docs/reference/bigtable/2.35.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.34.0](/cpp/docs/reference/bigtable/2.34.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.33.0](/cpp/docs/reference/bigtable/2.33.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.32.0](/cpp/docs/reference/bigtable/2.32.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.31.0](/cpp/docs/reference/bigtable/2.31.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.30.0](/cpp/docs/reference/bigtable/2.30.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.29.0](/cpp/docs/reference/bigtable/2.29.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.28.0](/cpp/docs/reference/bigtable/2.28.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.27.0](/cpp/docs/reference/bigtable/2.27.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.26.0](/cpp/docs/reference/bigtable/2.26.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.25.1](/cpp/docs/reference/bigtable/2.25.1/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.24.0](/cpp/docs/reference/bigtable/2.24.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.23.0](/cpp/docs/reference/bigtable/2.23.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.22.1](/cpp/docs/reference/bigtable/2.22.1/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.21.0](/cpp/docs/reference/bigtable/2.21.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.20.0](/cpp/docs/reference/bigtable/2.20.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.19.0](/cpp/docs/reference/bigtable/2.19.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.18.0](/cpp/docs/reference/bigtable/2.18.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.17.0](/cpp/docs/reference/bigtable/2.17.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.16.0](/cpp/docs/reference/bigtable/2.16.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.15.1](/cpp/docs/reference/bigtable/2.15.1/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.14.0](/cpp/docs/reference/bigtable/2.14.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.13.0](/cpp/docs/reference/bigtable/2.13.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.12.0](/cpp/docs/reference/bigtable/2.12.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell)\n- [2.11.0](/cpp/docs/reference/bigtable/2.11.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell) \nThe in-memory representation of a Bigtable cell. \nBigtable stores data in rows, indexes by row keys. Each row may contain multiple column families, each column family might contain multiple columns, and each column has multiple cells indexed by timestamp. Notice that the storage is sparse, column families, columns, and timestamps might contain zero cells.\n\nThe [Cell](/cpp/docs/reference/bigtable/2.27.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell) class owns all its data.\n\nConstructors\n------------\n\n### Cell(KeyType \\&\\&, std::string, ColumnType \\&\\&, std::int64_t, ValueType \\&\\&, std::vector\\\u003c std::string \\\u003e)\n\nCreates a [Cell](/cpp/docs/reference/bigtable/2.27.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell) and fill it with data. \nThis function does not participate in overload resolution if `ValueType` is not an integral type. The case for integral types is handled by a separate overload.\n\n### Cell(KeyType \\&\\&, std::string, ColumnType \\&\\&, std::int64_t, std::int64_t, std::vector\\\u003c std::string \\\u003e)\n\nCreate a [Cell](/cpp/docs/reference/bigtable/2.27.0/classgoogle_1_1cloud_1_1bigtable_1_1Cell) and fill it with a 64-bit value encoded as big endian.\n\n### Cell(KeyType \\&\\&, std::string, ColumnType \\&\\&, std::int64_t, ValueType \\&\\&)\n\nCreate a cell and fill it with data, but with empty labels.\n\nFunctions\n---------\n\n### row_key() const\n\nReturn the row key this cell belongs to. \nThe returned value is not valid after this object is deleted.\n\n### family_name() const\n\nReturn the family this cell belongs to. \nThe returned value is not valid after this object is deleted.\n\n### column_qualifier() const\n\nReturn the column this cell belongs to. \nThe returned value is not valid after this object is deleted.\n\n### timestamp() const\n\nReturn the timestamp of this cell.\n\n### value() const \\&\n\nReturn the contents of this cell. \nThe returned value is not valid after this object is deleted.\n\n### value() \\&\\&\n\nReturn the contents of this cell.\n\n### decode_big_endian_integer() const\n\nInterpret the value as a big-endian encoded `T` and return it. \nGoogle Cloud Bigtable stores arbitrary blobs in each cell. Some applications interpret these blobs as strings, other as encoded protos, and sometimes as big-endian integers. This is a helper function to convert the blob into a T value.\n\n### labels() const\n\nReturn the labels applied to this cell by label transformer read filters."]]