Documentation ¶
Index ¶
- Constants
- func BuildPlaceInKey(dcids []string, placeType string) bigtable.RowList
- func BuildPlaceMetaDataKey(places []string) bigtable.RowList
- func BuildPlaceStatsVarKey(dcids []string) bigtable.RowList
- func BuildPropertyLabelKey(dcids []string) bigtable.RowList
- func BuildPropertyValuesKey(dcids []string, prop string, arcOut bool) bigtable.RowList
- func BuildStatExistenceKey(places []string, statVars []string) (bigtable.RowList, map[string]*util.PlaceStatVar)
- func BuildStatSetWithinPlaceKey(parentPlace, childType, date string, statVars []string) (bigtable.RowList, map[string]string)
- func BuildStatVarSummaryKey(statVars []string) bigtable.RowList
- func BuildStatsKey(places []string, statVars []string) (bigtable.RowList, map[string]*util.PlaceStatVar)
- func BuildTriplesKey(dcids []string) bigtable.RowList
- func Read(ctx context.Context, btGroup *Group, rowSet cbt.RowSet, ...) (map[string]interface{}, map[string]interface{}, error)
- func SetupBigtable(ctx context.Context, data map[string]string) (*bigtable.Table, error)
- type Group
Constants ¶
const ( // BtPlaceStatsVarPrefix for place to statsvar list cache. BtPlaceStatsVarPrefix = "d/0/" // BtStatVarGroup is the key for statvar group cache. BtStatVarGroup = "d/1" // BtSVAndSVGExistence is the key for stat var and stat var group existence cache. BtSVAndSVGExistence = "d/2/" // BtPlacePagePrefix for place page cache. BtPlacePagePrefix = "d/4/" // BtProteinPagePrefix for protein page cache. BtProteinPagePrefix = "d/6/" // BtTriplesPrefix for internal GetTriples cache. BtTriplesPrefix = "d/7/" // BtArcsPrefix for internal arcs cache. BtArcsPrefix = "d/9/" // BtStatVarSummary for stat var summary cache. BtStatVarSummary = "d/a/" // BtPlacesInPrefix for GetPlacesIn cache. BtPlacesInPrefix = "d/c/" // BtPlacesMetadataPrefix for GetPlaceMetadata cache. BtPlacesMetadataPrefix = "d/d/" // BtChartDataPrefix for chart data. BtChartDataPrefix = "d/f/" // BtInPropValPrefix for in-arc prop value. BtInPropValPrefix = "d/l/" // BtOutPropValPrefix for out-arc prop value. BtOutPropValPrefix = "d/m/" // BtRelatedLocationsSameTypePrefix for related places with same type. BtRelatedLocationsSameTypePrefix = "d/o/" // BtRelatedLocationsSameTypeAndAncestorPrefix for related places with same type and ancestor. BtRelatedLocationsSameTypeAndAncestorPrefix = "d/q/" // BtRelatedLocationsSameTypePCPrefix for related places with same type, per capita. BtRelatedLocationsSameTypePCPrefix = "d/o0/" // BtRelatedLocationsSameTypeAndAncestorPCPrefix for related places with same type and ancestor, // per capita. BtRelatedLocationsSameTypeAndAncestorPCPrefix = "d/q0/" // BtFamily is the key for the row. BtFamily = "csv" // BtCacheLimit is the cache limit. The limit is per predicate and neighbor type. BtCacheLimit = 500 // BtBatchQuerySize is the size of BigTable batch query. BtBatchQuerySize = 1000 )
Variables ¶
This section is empty.
Functions ¶
func BuildPlaceInKey ¶
BuildPlaceInKey builds bigtable key for place in cache
func BuildPlaceMetaDataKey ¶
BuildPlaceMetaDataKey builds Bigtable key for place metadata cache
func BuildPlaceStatsVarKey ¶
BuildPlaceStatsVarKey builds bigtable key for place stat vars cache
func BuildPropertyLabelKey ¶
BuildPropertyLabelKey builds bigtable key for property label cache
func BuildPropertyValuesKey ¶
BuildPropertyValuesKey builds bigtable key for property value cache
func BuildStatExistenceKey ¶
func BuildStatExistenceKey( places []string, statVars []string) ( bigtable.RowList, map[string]*util.PlaceStatVar)
BuildStatExistenceKey builds bigtable key for stat existence cache
func BuildStatSetWithinPlaceKey ¶
func BuildStatSetWithinPlaceKey(parentPlace, childType, date string, statVars []string) ( bigtable.RowList, map[string]string)
BuildStatSetWithinPlaceKey builds bigtable key for stat within-place cache
func BuildStatVarSummaryKey ¶
BuildStatVarSummaryKey builds bigtable key for place stat var summary cache
func BuildStatsKey ¶
func BuildStatsKey( places []string, statVars []string) ( bigtable.RowList, map[string]*util.PlaceStatVar)
BuildStatsKey builds bigtable key for stat cache
func BuildTriplesKey ¶
BuildTriplesKey builds bigtable key for triples cache
func Read ¶
func Read( ctx context.Context, btGroup *Group, rowSet cbt.RowSet, action func(string, []byte) (interface{}, error), getToken func(string) (string, error), readBranch bool, ) ( map[string]interface{}, map[string]interface{}, error, )
bigTableReadRowsParallel reads BigTable rows from base Bigtable and branch Bigtable in parallel.
Reading multiple rows is chunked as the size limit for RowSet is 500KB.
Args: baseBt: The bigtable that holds the base cache branchBt: The bigtable that holds the branch cache. rowSet: BigTable rowSet containing the row keys. action: A callback function that converts the raw bytes into appropriate
go struct based on the cache content.
getToken: A function to get back the indexed token (like place dcid) from
bigtable row key.
Types ¶
type Group ¶
type Group struct {
// contains filtered or unexported fields
}
Group represents all the cloud bigtables that mixer talks to.
func NewBigtableGroup ¶
NewBigtableGroup creates a BigtableGroup
func (*Group) UpdateBranchBt ¶
UpdateBranchBt updates the branch bigtable