1-3 superset数据模型

在models.py中大部分的class对应数据库中的表,那么我们就从AuditMixinNullable这个类开始我们的模型解析。

AuditMixin:这个类是FAB(Flask  AppBuild)中的,它的作用是向子类中加入create_by_fk、create_by、changed_by_fk、changed_by、changed_on、create_on等属性,并且这些值不能为空

AuditMixinNullable:这个类是AuditMixin子类,但是对AuditMixin类的属性进行了修改,让AuditMixin相关属性值可以为空

AuditMixinNullable的子类:AuditMixinNullable的13个子类,对应数据库中13张表,类与表的对应关系如下:


Model类


数据表


说明


Database


dbs


对应superset中对数据库连接配置。


SqlaTable


tables


dbs中数据库引入到superset中的表,与dbs表是一对多的关系。


TableColumn


table_columns


对应tables中表的数据字段,与tables表是一对多的关系。


SqlMetric


sql_metrics


对表字段进行可聚合纬度度量,与tables表是一对多的关系。


Slice


slices


切片表。


slice_user


slices与ab_user的关联表,slices与ab_user多对多关系


Dashboard


dashboards


仪表盘表。


dashboard_slices


仪表盘与切片之间的关联表,由此可以看出,slices表与dashboards表是多对多的关系。


dashboard_user


dashboards与ab_user的关联表,dashbaoards与ab_user是多对多关系。


DruidCluster


clusters


druid集群配置表


DruidDatasource


datasources


druid的数据源配置,与clusters是一对多关系


DruidColumn


columns


druid数据源的字段表,与datasource是一对多关系


DruidMettic


metrics


druid数据源的度量表,与datasource是一对多关系


DatasourceAccessRequest


access_request


访问datarource和dbs访问请求表


Url


url


用于短url功能


CssTemplate


css_templates


css的模板表

对比ORM类,查看对应数据库表,我们发现以上16张表除了dashboard_slices、dashboard_user、slice_user关联表之外,其余13张表中都有created_by_fk和changed_by_fk这2个字段,AuditMixin及其子类AuditMixinNullable的功能不言而喻。

Datasource不对应数据库中的表,它的功能是提供其子类SqlaTable、DruidDatasource类公用的的部分。


Model类


数据表


说明


Query


query


记录在SQL Lab菜单中,SQL Query子菜单中执行Run Query的查询历史


FavStar


favstar


用于记录用户喜欢的仪表盘或切片


Log


logs


记录superset对数据库的操作


KeyValue


keyvalue


用户任何类型的键值对存储

此外,在models.py中还有其它单独的类需要介绍,请看下面:


Model类


说明


QueryResult


此类用于在SQL Lab菜单中,SQL Query子菜单中执行Run Query时对查询结果的反馈。


JavascriptPostAggregator

下面介绍下fab中的用户权限的实体类:8


Model类


数据表


说明


User


ab_user


用户表。


RegisterUser


ab_register_user


注册用户表。


Role


ab_role


角色表。


ab_user_role


用户与角色的关联表,ab_user与ab_role是多对多关系。


ab_permission_view_role


权限视图与角色的关联表,ab_permission_view与ab_role是多对多关系


Permission


ab_permission


权限表


PermissionView


ab_permission_view


权限与视图菜单的关联表,ab_permission与ab_view_menu是多对多关系


ViewMenu


ab_view_menu


视图菜单表

表之间的关联图

时间: 2024-10-01 02:29:02

1-3 superset数据模型的相关文章

定义你的数据模型

在本课程中,您将定义和测试的应用程序FoodTracker数据模型.一个数据模型表示在APP中的的信息结构. 学习目标 在课程结束时,你将能够: 1.创建数据模型2.写failable初始化一个自定义类3.证明failable和nonfailable的不同,理解他们之间的差异和概念4.通过编写和运行单元测试来测试数据模型 创建一个数据模型 现在你需要创建一个数据模型来存储菜谱场景所需要显示的信息.要做到这一点,我们需要定义个简单的类,里面有name,photo,rating 创建一个新的数据模型

Google Dremel数据模型详解

首先简单介绍一下Dremel是什么,能解决什么问题.第二部分着重讲Dremel的数据模型,即数据结构.第三部分将谈一下在此数据结构上设计的算法. 1 起源 Dremel的数据模型起源于分布式系统的应用环境(Protocol Buffers,一种在Google内广泛使用,现已开源的实现).其数据模型是基于强类型的嵌套记录,抽象语法可以表示成下面公式: 一个例子: 2 嵌套列式存储 2.1 记录结构的无损表示 首先来看一下Dremel的数据模型是如何在列式存储下无损的表示出记录的结构的(lossle

主流存储系统的数据模型

主流存储系统的数据模型是这三类:文件模型.关系模型.键值模型. 文件模型 文件模型很常见,基本每个操作系统的的文件子系统都是文件模型.Linux根目录为/,下面挂/home./usr等目录,目录下面有子目录或文件.Windows是每个分区一个文件系统,下面也是目录树结构. 目前云服务提供商提供的存储服务如Amazon Simple Storeage Service(S3).Aliyun Open Storage Service(OSS)是对象模型,对象模型是文件模型的一个变种,简化了文件模型的特

Visual Studio2017中如何让Entity Framework工具【ADO.NET实体数据模型】支持MYSQL数据源

熟悉Entity Framework应该对以下图片不陌生,他就是ADO.NET实体数据模型向导:可以将数据库的表自动生成模型类,或者创建Code First的模型文件. 但是这个模型向导默认只显示微软自己的SQL Server数据源,如果想使用Mysql数据源,得做一些配置. 自己得解决方案如下: 1,导入Entity Framework 6.1.3. 这个是出现ADO.NET实体数据模型选项的前提.如果没有Entity Framework包,新建项菜单中没有ADO.NET实体数据模型选项. 6

SpringMVC 处理数据模型

处理模型数据 Spring MVC 提供了以下几种途径输出模型数据: ModelAndView: 处理方法返回值类型为 ModelAndView 时, 方法体即可通过该对象添加模型数据 Map 及 Model: 入参为org.springframework.ui.Model.org.springframework.ui.ModelMap 或 java.uti.Map 时,处理方法返回时,Map 中的数据会自动添加到模型中. @SessionAttributes: 将模型中的某个属性暂存到 Htt

数据模型和数据访问类以及属性扩展和泛型集合

数据模型: 数据模型就是将一个表中一行的所有属性利用封装写到一个类里面,将数据表中的行数据组成一个同样结构的对象,方便使用. 1 public class Car 2 { 3 SqlConnection conn = null; 4 SqlCommand com = null; 5 public Car() 6 { 7 conn = new SqlConnection("server=.;database=ADOlianxi0425;user=sa;pwd=123;"); 8 com

数据仓库的多维数据模型

可能很多人理解的数据仓库就是基于多维数据模型构建,用于OLAP的数据平台,通过上一篇文章——数据仓库的基本架构,我们已经看到数据仓库的应用可能远不止这些.但不得不承认多维数据模型是数据仓库的一大特点,也是数据仓库应用和实现的一个重要的方面,通过在数据的组织和存储上的优化,使其更适用于分析型的数据查询和获取. 多维数据模型的定义和作用 多维数据模型是为了满足用户从多角度多层次进行数据查询和分析的需要而建立起来的基于事实和维的数据库模型,其基本的应用是为了实现OLAP(Online Analytic

常用组件 —— 数据模型组件 Model

Model 组件专门用来存放 Data 组件. 属性 component-name 组件名称 xid WeX5 中组件的唯一性标识 事件 onActive 页面激活 onInactive 页面离开 onModelContruct 数据模型创建时 onModelContructDone 数据模型创建完成 onLoad 页面初始化完成 onunLoad 页面关闭 onParamsReceive 接收参数 示例 验证 Model 各个事件的执行优先顺序 define(function(require)

数据模型的构建及懒加载数据

1.数据模型的构建 #import <Foundation/Foundation.h> @interface AppModel : NSObject @property (nonatomic, strong) NSString *icon; @property (nonatomic, strong) NSString *name; - (instancetype)initWithDict:(NSDictionary *)dict; + (instancetype)appModelWithDic