123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131 |
- package model
- // SQLAttrs get attrs from db
- type SQLAttrs struct {
- AppID string
- DBName string
- ESName string
- DtbName string
- TablePrefix string
- TableFormat string
- IndexAliasPrefix string //写和读数据时,指向的索引。是别名索引
- IndexVersion string //创建索引时,指向的索引。这里是实体索引版本号
- IndexFormat string
- IndexType string
- IndexID string
- IndexMapping string
- DataIndexSuffix string
- DataExtraInfo string
- ReviewNum int64
- ReviewTime int64
- Sleep float64
- Size int
- Business string
- DataFields string
- SQLByID string
- SQLByMTime string
- SQLByIDMTime string
- DatabusInfo string
- DatabusIndexID string
- }
- // Attrs parse AppAttrs
- type Attrs struct {
- Business string
- AppID string
- DBName string
- ESName string
- DtbName string
- Table *AttrTable
- Index *AttrIndex
- DataSQL *AttrDataSQL
- DataExtras []AttrDataExtra //appID需要关联其他库的数据
- Databus *AttrDatabus
- Other *AttrOther
- }
- // AttrTable .
- type AttrTable struct {
- TablePrefix string
- TableFormat string
- TableSplit string
- TableFrom int
- TableTo int
- TableZero string
- TableFixed bool
- }
- // AttrIndex .
- type AttrIndex struct {
- IndexAliasPrefix string //写和读数据时,指向的索引。是别名索引
- IndexEntityPrefix string //创建索引时,指向的索引。是实体索引名
- IndexFormat string
- IndexSplit string
- IndexFrom int
- IndexTo int
- IndexType string
- IndexID string
- IndexMapping string
- IndexZero string
- IndexFixed bool
- }
- // AttrDataSQL .
- type AttrDataSQL struct {
- DataIndexSuffix string //索引数据归属
- DataFields string
- DataFieldsV2 map[string]AttrDataFields //存放json转换得到的data_fields字段信息, 替换老的DataFields
- DataIndexFields []string //来自DataFields左数第一位
- DataIndexRemoveFields []string //ES需要移除的字段
- DataIndexFormatFields map[string]string //ES每个字段的格式化,如int64,time,int等
- DataDtbFields map[string][]string //databus的字段对应的es字段, TODO 改成 map[string]map[string]bool 或 map[string][]string,应对一个数据库字段用在多个es字段
- DataExtraInfo string
- SQLFields string //来自DataFields左数第二位,含表名和字段的alias以及mysql函数等其他表达式
- SQLByID string //因为有left join的缘故,顾提供完整sql(抛除字段部分,下同)
- SQLByMTime string
- SQLByIDMTime string
- }
- // AttrDataFields .
- type AttrDataFields struct {
- ESField string `json:"es"`
- Field string `json:"field"`
- SQL string `json:"sql"`
- Expect string `json:"expect"`
- Stored string `json:"stored"`
- InDtb string `json:"in_dtb"`
- }
- // AttrDataExtra .
- type AttrDataExtra struct {
- Type string `json:"type"`
- Tag string `json:"tag"`
- Condition map[string]string `json:"condition"`
- SliceField string `json:"slice_field"` // 逗号分隔,支持多个字段
- DBName string `json:"dbname"`
- Table string `json:"table"`
- TableFormat string `json:"table_format"`
- InField string `json:"in_field"`
- FieldsStr string `json:"fields_str"`
- Fields []string `json:"fields"`
- RemoveFields []string `json:"remove_fields"`
- SQL string `json:"sql"`
- }
- // AttrDatabus .
- type AttrDatabus struct {
- DatabusInfo string
- Ticker int // 定时时间(毫秒)
- AggCount int // 聚合数量
- Databus string // databus Map key
- PrimaryID string // 主表索引id
- RelatedID string // 关联表索引id
- }
- // AttrOther .
- type AttrOther struct {
- ReviewNum int64
- ReviewTime int64
- Sleep float64
- Size int
- }
|