18 #ifndef KUDU_CLIENT_SCHEMA_H
19 #define KUDU_CLIENT_SCHEMA_H
24 #include "kudu/client/value.h"
25 #include "kudu/util/kudu_export.h"
41 class GetTableSchemaRpc;
49 class KuduSchemaBuilder;
50 class KuduWriteOperation;
68 DEFAULT_COMPRESSION = 0,
89 int32_t block_size = 0)
90 : encoding_(encoding),
91 compression_(compression),
92 block_size_(block_size) {
106 std::string ToString()
const;
109 EncodingType encoding_;
110 CompressionType compression_;
134 static std::string DataTypeToString(DataType type);
154 bool is_nullable =
false,
155 const void* default_value = NULL,
191 const std::string& name()
const;
194 DataType type()
const;
197 bool is_nullable()
const;
332 class KUDU_NO_EXPORT Data;
403 class KUDU_NO_EXPORT Data;
439 Status Reset(
const std::vector<KuduColumnSchema>& columns,
int key_columns)
456 size_t num_columns()
const;
466 void GetPrimaryKeyColumnIndexes(std::vector<int>* indexes)
const;
486 friend class ScanConfiguration;
487 friend class internal::GetTableSchemaRpc;
488 friend class internal::LookupRpc;
489 friend class internal::MetaCacheEntry;
490 friend class internal::WriteRpc;
491 friend class kudu::tools::TsAdminClient;
493 friend KuduSchema KuduSchemaFromSchema(
const Schema& schema);
501 size_t num_key_columns()
const;
509 #endif // KUDU_CLIENT_SCHEMA_H
A representation of a table's schema.
Definition: schema.h:409
A representation of an operation's outcome.
Definition: status.h:106
A constant cell value with a specific type.
Definition: value.h:33
Representation of column storage attributes.
Definition: schema.h:53
Builder API for specifying or altering a column within a table schema.
Definition: schema.h:222
Representation of the column schema.
Definition: schema.h:115
KuduColumnStorageAttributes(EncodingType encoding=AUTO_ENCODING, CompressionType compression=DEFAULT_COMPRESSION, int32_t block_size=0)
Definition: schema.h:87
const EncodingType encoding() const
Definition: schema.h:96
Builds scan tokens for a table.
Definition: client.h:1724
Alters an existing table based on the provided steps.
Definition: client.h:749
A handle for a connection to a cluster.
Definition: client.h:242
A representation of a table on a particular cluster.
Definition: client.h:648
This class is a representation of a single scan.
Definition: client.h:1299
A single-row write operation to be sent to a Kudu table.
Definition: write_op.h:55
CompressionType
Column compression types.
Definition: schema.h:67
Builder API for constructing a KuduSchema object.
Definition: schema.h:369
DataType
Supported data types for columns.
Definition: schema.h:118
A scan descriptor limited to a single physical contiguous location.
Definition: client.h:1657
A helper class to create a new table with the desired options.
Definition: client.h:433
const CompressionType compression() const
Definition: schema.h:101
A row which may only contain values for a subset of the columns.
Definition: partial_row.h:53
EncodingType
Column encoding types.
Definition: schema.h:56