Bases: ceilometer.storage.hbase.base.Connection, ceilometer.storage.base.Connection
Put the metering data into a HBase database
Collections:
meter (describes sample actually):
row-key: consists of reversed timestamp, meter and a message uuid for purposes of uniqueness
Column Families:
f: contains the following qualifiers:
counter_name: <name of counter>
counter_type: <type of counter>
counter_unit: <unit of counter>
counter_volume: <volume of counter>
message: <raw incoming data>
message_id: <id of message>
message_signature: <signature of message>
resource_metadata: raw metadata for corresponding resource of the meter
project_id: <id of project>
resource_id: <id of resource>
user_id: <id of user>
recorded_at: <datetime when sample has been recorded (utc.now)>
flattened metadata with prefix r_metadata. e.g.:
f:r_metadata.display_name or f:r_metadata.tagrts: <reversed timestamp of entry>
timestamp: <meter’s timestamp (came from message)>
source for meter with prefix ‘s’
resource:
row_key: uuid of resource
Column Families:
f: contains the following qualifiers:
resource_metadata: raw metadata for corresponding resource
project_id: <id of project>
resource_id: <id of resource>
user_id: <id of user>
flattened metadata with prefix r_metadata. e.g.:
f:r_metadata.display_name or f:r_metadata.tagsources for all corresponding meters with prefix ‘s’
all meters with prefix ‘m’ for this resource in format:
"%s:%s:%s:%s:%s" % (rts, source, counter_name, counter_type, counter_unit)
Return an iterable of models.Statistics instances.
Items are containing meter statistics described by the query parameters. The filter must have a meter value set.
Note
Due to HBase limitations the aggregations are implemented in the driver itself, therefore this method will be quite slow because of all the Thrift traffic it is going to create.
Return an iterable of models.Meter instances
Parameters: |
|
---|
Return an iterable of models.Resource instances
Parameters: |
|
---|
Return an iterable of models.Sample instances.
Parameters: |
|
---|