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 if ValueType is 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 encoded T and 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"]],[["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-14 UTC."],[[["\u003cp\u003eThe provided content is a reference document for the \u003ccode\u003eCell\u003c/code\u003e class within the Google Cloud Bigtable C++ client library, specifically detailing its various versions and functionalities, with the latest being version 2.37.0-rc.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eCell\u003c/code\u003e class represents a single cell within a Bigtable database, containing information like the row key, family name, column qualifier, timestamp, value, and optional labels.\u003c/p\u003e\n"],["\u003cp\u003eThe document highlights the multiple constructors for creating a \u003ccode\u003eCell\u003c/code\u003e object, accommodating different data types and the presence or absence of labels.\u003c/p\u003e\n"],["\u003cp\u003eSeveral functions are documented, detailing how to retrieve various components of the cell, such as \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, all of which return a constant reference to the specific element.\u003c/p\u003e\n"],["\u003cp\u003eThe function \u003ccode\u003edecode_big_endian_integer()\u003c/code\u003e will interpret the data within the cell as a big-endian encoded \u003ccode\u003eT\u003c/code\u003e and return it as a \u003ccode\u003eStatusOr<T>\u003c/code\u003e, this is useful because it allows for the conversion of the cell into a variety of types.\u003c/p\u003e\n"]]],[],null,["# Class Cell (2.24.0)\n\nVersion 2.24.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.24.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.24.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.24.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."]]