图表

1. 业务场景

进入数据可视化后,默认处于图表列表页面,点击报表/数据大屏图标则可切换至对应列表;支持从模型获取数据后,过滤数据后创建可视化图表,维护的图表信息可以被报表、数据大屏、以及业务系统引用。

2. 操作流程

1)进入数据可视化,进入图表tab,维护分组信息;

2)在二级分组名称后点击“+”【添加图表】,对图表进行编辑设计;

3)创建完成后可以【编辑】图表;

4)图表完善后,可以点击【发布】图表,则图表此时可以被引用;

5)如果图表有更新,则可以点击【更新发布】,使业务系统引用对图表变为最新的图表信息;

6)如果图表数据不再可以公开使用,则需要通过【隐藏】功能将图表的引用权限收起,此时报表、数据大屏、前端业务系统均不可再引用该图表,但不影响已被引用的图表;

7)隐藏后可以【取消隐藏】,图表恢复隐藏前的状态和功能,可以被引用。

3. 操作流程图解

3.1 创建分组

1)操作流程:创建分组

2)操作路径:数据可视化-图表-创建分组

3)点击搜索框后的「+」创建一级分组,输入一级分组名称后,点击一级分组后的「+」创建二级分组,输入二级分组名称后,此时分组创建完成,可以在二级分组下创建图表

image.png

3.2 编辑分组名称

1)操作流程:选择分组-编辑分组名称

2)操作路径:数据可视化-图表-编辑分组名称

3)鼠标移动至需要修改的分组上,点击出现的「编辑图标」,可以修改分组名称,修改后分组名称实时更新

image.png

3.3 删除分组

1)操作流程:选择分组-删除分组

2)操作路径:数据可视化-图表-删除分组

3)鼠标移动至需要删除的分组上,当分组下无图表时出现「删除图标」,可以点击图标后删除分组,删除一级分组时对应所有的二级分组也会被删除,删除后消失,只有分组下没有图表的分组才能直接删除成功

image.png

3.4 创建图表

1)操作流程:选择二级分组-创建图表

2)操作路径:数据可视化-图表-二级分组-创建图表

3)鼠标移动至需要创建图表的二级分组上,出现「+」,点击图标后弹出“创建图表”弹窗,需要填写图表标题、模型、方法;

a图表标题:最大支持20个字,支持汉字、数字、大小写字母、-;同个一级分组下不允许重复;

b模型:需要选择来源数据对应的模型;

c方法:选择模型后需要选择方法,方法是用来提取模型数据的逻辑;

4)选择成功后进入图表设计页面

image.png

3.5 编辑图表

1)操作流程:选择图表-编辑图表

2)操作路径:数据可视化-图表-二级分组-图表-编辑图表

3)只能编辑未发布或者已发布但没有被隐藏的图表,且存在三种编辑情况

a第一种:点击图表标题后的编辑图标,仅能编辑图表标题;

b第二种:点击图表中的图表标题、图表副标题、图表描述后的编辑图标,可以直接编辑图表标题、图表副标题、图表描述;

c第三种:点击【编辑】按钮,进入图表设计页面,带出已有的数据字段、样式、图表内容,编辑时的规则与创建时一致,编辑后可以点击保存进行更新,如果未保存直接返回,则编辑无效;

4)编辑后实时生效,图表信息保持展示最新效果

3.6 删除图表

1)操作流程:选择图表-删除图表

2)操作路径:数据可视化-图表-二级分组-图表-删除图表

3)未发布或者已发布但没有被隐藏的图表,并且没被前端或者报表引用,才展示图表菜单名称后的删除图标

4)删除后图表消失

3.7 复制

1)操作流程:选择图表-复制图表

2)操作路径:数据可视化-图表-二级分组-图表-复制图表

3)点击【复制】按钮,复制成功,名称为copy of 原图表标题,展示在原图表分组的最后一个

image.png

3.8 发布

1)操作流程:选择图表-发布图表

2)操作路径:数据可视化-图表-二级分组-图表-发布

3)选择单个未发布且没有被隐藏的图表,点击【发布】按钮,图表发布后可以被前端引用,图表状态变为已发布,展示最近发布时间;

4)如果图表发布后有更新内容,会展示的更新类型:更新图表信息/更新图表内容

3.9 查看最近一次发布的版本

1)操作流程:选择图表-查看最近一次发布的版本

2)操作路径:数据可视化-图表-二级分组-图表-查看最近一次发布的版本

3)当图表发布后有更新,在最近发布时间左侧展示【查看】,在最近发布时间下展示更新的类型,点击查看可以查看最近发布的版本image.png

3.10 更新发布

1)操作流程:选择图表-更新发布图表

2)操作路径:数据可视化-图表-二级分组-图表-更新发布图表

3)选择单个已发布且没有被隐藏的图表,并且该图表在上次发布后有所更新,可以点击【更新发布】按钮,将最新的图表内容发布至业务系统,业务系统引用的图表为最新内容;

4)如果更新了内容,但未点击更新发布,则前端业务系统查看的图表仍为最近发布的图表

3.11 隐藏

1)操作流程:选择图表-隐藏图表

2)操作路径:数据可视化-图表-二级分组-图表-隐藏图表

3)图表默认不隐藏,点击图表左侧的是否隐藏可以切换,切换是否隐藏=是

a未发布的图表,较隐藏前,不可以操作【发布】,可以【取消隐藏】;

b已发布的图表,较隐藏前,只能操作【导出图片、导出excel、取消隐藏】;

4)隐藏后的图表不可以被引用,但不影响已经被引用的数据

3.12 取消隐藏

1)操作流程:选择图表-取消隐藏图表

2)操作路径:数据可视化-图表-二级分组-图表-取消隐藏图表

3)隐藏后的图表可以取消隐藏,切换是否隐藏=否,取消隐藏后,图表恢复隐藏前的状态和功能,可以被引用

3.13 查看引用

1)流程:选择图表-查看被哪些报表/数据大屏/页面引用

2)操作路径:数据可视化-图表-二级分组-图表-更多-查看引用

3)选择具体的图表,查看当前图表被引用的所有信息

image.png

3.14 不允许别人编辑

1)流程:选择图表-不允许别人编辑

2)操作路径:数据可视化-图表-二级分组-图表-更多-不允许别人编辑

3)选择自己创建的图表,对图表是否允许其他人编辑进行设置;如果设置为不允许,则其他人无法编辑图表

image.png

3.15 不允许别人引用

1)流程:选择图表-更多-不允许别人引用

2)操作路径:数据可视化-图表-二级分组-图表-更多-不允许别人引用

3)选择自己创建的图表,对图表是否允许他人引用进行设置;如果设置为不允许,则其他人无法在报表、数据大屏、界面设计器引用到该图表

image.png

3.16 导出图片

1)操作流程:选择图表-导出图片

2)操作路径:数据可视化-图表-二级分组-图表-图表导出图片

3)选择图表后,点击【导出图片】按钮可以将当前图表导出为图片

3.17 导出EXCEL

1)操作流程:选择图表-导出EXCEL

2)操作路径:数据可视化-图表-二级分组-图表-图表导出EXCEL

3)选择图表后,点击【导出EXCEL】按钮可以将当前图表导出为EXCEL

4. 图表设计页面

4.1 修改模型、方法

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)在“创建图表”弹窗中选择了模型和方法后,可以在进入图表设计页面修改

4)图表设计页面,点击模型后的设置图标后,右侧弹出弹窗,可以修改模型和获取模型数据的方法,需要注意的是:修改模型后,图表信息会清空

image.png

4.2 维度

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)维度字段:布尔、文本、枚举、日期时间、年份、日期、时间、用户ID、手机号、邮箱

4.2.1 维度的添加

1)图表设计页面,点击维度后的「+」,右侧弹出弹窗,展示所有的维度字段,可以选择对应的字段进行分析

a拖动字段进入维度列表

b点击字段,则字段进入维度列表

2)不同的图表支持的维度个数不同,当维度字段个数已达上限后不可再添加;此时拖动新字段到旧字段上后,新字段会代替旧字段进行数据分析,且会保留相同的样式

image.png

4.2.2 维度的删除

1)维度选择后,鼠标放到维度字段上,显示「删除图标」

2)点击则字段删除成功,维度字段的效果消失

image.png

4.2.3 修改维度展示名称

1)维度选择后,鼠标放到维度字段上,显示「设置图标」

2)点击后下方弹出「修改展示名称」的设置选项,点击后右侧出现修改展示名称的弹窗,可以进行修改,在输入框下方可以查看原字段名称

image.png

4.3 数值

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)数值字段:整数、浮点数、金额、(连续的日期时间、年份、日期、时间)

4.3.1 数值的添加

1)图表设计页面,点击数值后的「+」,右侧弹出弹窗,展示所有的数值字段,可以选择对应的字段进行分析

a拖动字段进入数值列表

b点击字段,则字段进入数值列表

2)不同的图表支持的数值个数不同,当数值字段个数已达上限后不可再添加;此时拖动新字段到旧字段上后,新字段会代替旧字段进行数据分析,且会保留相同的样式

3)拖入的数值字段中,可以同时拖入整数、浮点数、金额;但是拖入字段类型=年份/日期时间/日期/时间后,不可以拖入其他字段类型的数值字段

4)饼图、漏斗图不可以在数值列表中拖入字段类型=年份/日期时间/日期/时间的字段

4.3.2 数值的删除

1)数值选择后,鼠标放到数值字段上,显示「删除图标」

2)点击则字段删除成功,数值字段的效果消失

4.3.3 修改数值展示名称

1)维度选择后,鼠标放到数值字段上,显示「设置图标」

2)点击后下方弹出可以设置的选项,点击「修改展示名称」选项,点击后右侧出现修改展示名称的弹窗,可以进行修改,在输入框下方可以查看原字段名称

4.3.4 修改数值聚合方式

1)维度选择后,鼠标放到数值字段上,显示「设置图标」

2)点击后下方弹出可以设置的选项,点击「聚合方式」选项,点击后右侧出现修改展示名称的弹窗,可以进行修改

3)默认是求和,可以修改为「无处理、最小值、最大值、平均值、计数」

a求和:将维度值对应的所有数值进行加和

b无处理:取维度值对应数值中的最近一条不为空的值

c最小值:取维度值对应数值中的最小值

d最大值:取维度值对应数值中的最大值

e平均值:取维度值对应数值的平均值

f计数:计算维度值对应的数值个数

4)修改后实时更新图表信息,会影响辅助线取数值字段时的值

image.png

4.3.5 修改数值数据格式

1)维度选择后,鼠标放到数值字段上,显示「设置图标」

2)点击后下方弹出可以设置的选项,点击「数据格式」选项,点击后右侧出现修改数据格式的弹窗,可以进行修改

3)可以设置字段的数据类型、单位;

a数据类型:默认为「默认」,可修改为「数值、货币、百分比」

ⅰ类型=默认:与原数据保持一致

ⅱ类型=数值:选择数值保留的小数精度,默认是两位小数,最大支持6位

ⅲ类型=货币:需要选择一种货币,也可以设置需要展示的精度;选择后货币会展示在图表的数值字段后,也会展示在数值上

ⅳ类型=百分比:选择数值保留的小数精度,可以选择处以100,选择后数值会展示为处以100后的百分比

b单位:设置数值字段对应的单位名称,设置后会展示在图表的数值字段后

4)修改后实时更新图表信息

image.png

4.4 筛选

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

4.4.1 筛选的添加

1)图表设计页面,点击筛选后的「+」,右侧弹出弹窗,展示所有的维度、数值字段,可以选择对应的字段进行筛选,支持筛选多个字段

a拖动字段进入筛选列表

b点击字段,则字段进入筛选列表

2)选择字段后,可以设置具体的筛选条件

image.png

4.4.2筛选的删除

1)筛选字段选择后,鼠标放到筛选字段上,显示「删除图标」

2)点击则字段删除成功,筛选字段的效果消失

4.4.3 维度字段设置筛选条件

1)鼠标放到筛选字段上,显示「设置图标」,点击后针对当前字段值进行筛选

2)筛选字段的字段类型=维度时,需要选择进入图表的数据,此时如果勾选了排除,则是未勾选的数据进入图表

4.4.4 数值字段设置筛选条件

1)鼠标放到筛选字段上,显示「设置图标」,点击后针对当前字段值进行筛选

2)筛选字段的字段类型=数值时,需要选择条件、填写条件对应的数值

a条件:默认为「大于」,可修改为「大于等于、小于、小于等于、等于、不等于、区间」;修改为区间时,必须填写区间的起始值和终点值

3)填写完成后点击【确认】,筛选过滤成功,图表上展示的数据仅为筛选后的内容

4.5 排序

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

4.5.1 排序的添加

1)图表设计页面,点击排序后的「+」,右侧弹出弹窗,展示所有的维度、数值字段,可以选择对应的字段进行排序,最多按一个字段进行排序

a拖动字段进入排序列表

b点击字段,则字段进入排序列表

2)选择字段后,默认为按排序字段的值升序排列,可以设置其他顺序,维度值会按照指定的顺序从上到下/从左到右进行排列

3)字段值的默认排序:数字>大写字母>小写字母>汉字>符号>null

4.5.2 排序的删除

1)排序字段选择后,鼠标放到排序字段上,显示「删除图标」

2)点击则字段删除成功,排序字段的效果消失,字段恢复原始排序

4.5.3 维度字段设置排序

1)鼠标放到排序字段上,显示「设置图标」,可以设置维度字段的自定义排序,以及对应的升序/降序

a自定义排序

b升序/降序:默认为升序排序,此时展示降序,点击降序则变为降序排序

2)排序字段的字段类型=维度时,需要选择进入图表的数据,此时如果勾选了排除,则是未勾选的数据进入图表

4.5.4 数值字段设置排序

1)鼠标放到排序字段上,显示「设置图标」,可以设置数值字段的聚合方式,以及对应的升序/降序

a聚合方式:默认为求和,可以修改为「无处理、最小值、最大值、平均值、计数」

b升序/降序:默认为按当前聚合方式升序排序,此时展示降序,点击降序则变为按数据聚合方式从大到小排序

2)修改完成后点击【确认】,设置排序成功,图表上展示的维度值顺序按照设置的顺序进行排列,数值一致时,按照默认的维度字段值顺序排序

image.png

4.6 图内筛选项

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)将常用的筛选字段通过拖入/点击的方式进入图内筛选项列表,最多拖入6个维度字段,不可以拖入数值字段

4)拖入后可以根据字段进行筛选,筛选后图表展示的数据重新计算

4.7 切换为标准样式

1)操作流程:图表设计页面-进切换为标准样式

2)操作路径:数据可视化-图表-编辑/创建图表进入图表设计页面

3)切换为标准样式后可以恢复字体的默认大小和颜色

4.8 图表样式

进入图表设计页面,默认为单条柱状图,可以进行切换;本期支持的图表有:单条柱状图、多条柱状图、单条形图、多条形图、单条折线图、多条折线图、双Y轴折线图、基础面积图、饼图、环形图、基础漏斗图、表格、地图、仪表盘图、散点图、气泡图、动态气泡图、指标统计图

1)图表标题:需要设置标题/副标题/描述的是否展示、位置、字号大小、字体颜色;默认标题、副标题、描述均展示

2)坐标轴:需要设置是否展示x轴刻度线、y轴刻度线,以及坐标轴上字段的字号大小、字体颜色

3)标签:需要设置是否展示标签,展示的标签内容(一般是维度字段的值、

4)数值字段名称、数值字段的值,饼图、漏斗图除外)和标签的字号大小、字体颜色

5)图例:需要设置是否展示图例(一般是展示维度字段对应的值,漏斗图除外),展示的位置和图例的字号大小、字体颜色

6)辅助线:支持添加多条辅助线,可以输入数值,也可以根据图表上的数值字段的平均值/最小值/最大值

7)基本格式(表格):针对表格图表,设置表头/表体的对齐方式、行高、字号大小、字体颜色、背景颜色

8)小计(表格):针对表格图表,设置是否展示小计,以及展示的小计对齐方式、行高、字号大小、字体颜色、背景颜色

image.png

4.8.1 单条形图

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)切换图表为基础条形图,此时可以选择一个维度字段和一个数值字段生成图表

4)图表生成后可以配置样式:图表标题、坐标轴、标签、辅助线、显示设置、下钻

5)样式效果配置后即时生效

image.png

4.8.2 多条形图

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)切换图表为多条形图,此时可以选择一个维度字段和多个数值字段生成图表

4)图表生成后可以配置样式:图表标题、坐标轴、标签、辅助线、显示设置、下钻

5)样式效果配置后即时生效

image.png

4.8.3 单条柱状图

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)默认为单条柱状图,此时可以选择一个维度字段和一个数值字段生成图表

4)图表生成后可以配置样式:图表标题、坐标轴、标签、图例、辅助线

5)样式效果配置后即时生效

4.8.4 多条柱状图

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)切换图表为多条柱状图,此时可以选择一个维度字段和多个数值字段生成图表

4)图表生成后可以配置样式:图表标题、坐标轴、标签、图例、辅助线、显示设置、下钻

5)样式效果配置后即时生效

image.png

4.8.5 单条折线图

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)切换图表为单条折线图,此时可以选择一个维度字段和一个数值字段生成图表

4)图表生成后可以配置样式:图表标题、坐标轴、标签、图例、辅助线、显示设置、下钻

5)样式效果配置后即时生效

image.png

4.8.6 多条折线图

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)切换图表为多条折线图,此时可以选择一个维度字段和多个数值字段生成图表

4)图表生成后可以配置样式:图表标题、坐标轴、标签、图例、辅助线、显示设置、下钻

5)样式效果配置后即时生效

image.png

4.8.7 双y轴折线图

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)切换图表为双Y轴折线图,此时可以选择一个维度字段和多个数值字段生成图表

4)图表生成后可以配置样式:图表标题、坐标轴、标签、图例、辅助线、显示设置、下钻

5)样式效果配置后即时生效

image.png

4.8.8 面积图

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)切换图表为面积图,此时可以选择一个维度字段和一个数值字段生成图表

4)图表生成后可以配置样式:图表标题、标签(还可以选择展示百分比)、图例

5)样式效果配置后即时生效

image.png

4.8.9 饼图

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)切换图表为饼图,此时可以选择一个维度字段和一个数值字段生成图表

4)图表生成后可以配置样式:图表标题、标签(还可以选择展示百分比)、图例、下钻

5)样式效果配置后即时生效

image.png

4.8.10 环形图

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)切换图表为环形图,此时可以选择一个维度字段和一个数值字段生成图表

4)图表生成后可以配置样式:图表标题、标签、图例、下钻

5)样式效果配置后即时生效

image.png

4.8.11 漏斗图

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)切换图表为漏斗图,此时可以选择一个维度字段和一个数值字段、或者0个维度字段和多个数值字段生成图表

4)图表生成后可以配置样式:图表标题、标签、图例、下钻

a标签:一个维度字段和一个数值字段的标签是维度字段的值、数值字段名称、数值字段的值;0个维度字段和多个数值字段的标签是数值字段名称、数值字段的值;

b图例:一个维度字段和一个数值字段的标签是维度字段的值;0个维度字段和多个数值字段的标签是数值字段名称;

5)样式效果配置后即时生效

image.png

4.8.12 表格

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)切换图表为表格,此时可以选择多个维度字段和多个数值字段生成图表

4)图表生成后可以配置样式:图表标题、基本格式、小计、显示设置、下钻

5)样式效果配置后即时生效

image.png

4.8.13 地图

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)切换图表为地图,此时可以选择一个维度字段和一个数值字段生成图表

4)图表生成后可以配置样式:图表标题、标签、图例、显示设置、下钻

5)样式效果配置后即时生效

image.png

4.8.14 仪表盘图

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)切换图表为仪表盘,此时可以选择一个当前数值字段字段和一个目标数值字段生成图表

4)图表生成后可以配置样式:图表标题、标签、颜色设置、角度设置

5)样式效果配置后即时生效

image.png

4.8.15 散点图

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)切换图表为散点图,此时可以选择一个维度字段和一个数值X轴、一个数值Y轴字段生成图表

4)图表生成后可以配置样式:图表标题、坐标轴、辅助线、下钻

5)样式效果配置后即时生效

image.png

4.8.16 气泡图

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)切换图表为气泡图,此时可以选择一个维度字段和一个数值X轴、一个数值Y轴、一个气泡大小字段生成图表

4)图表生成后可以配置样式:图表标题、坐标轴、图例、

5)样式效果配置后即时生效

image.png

4.8.17 动态气泡图

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)切换图表为动态气泡图,此时可以选择一个维度字段和一个数值X轴、一个数值Y轴、一个气泡大小、一个动态值字段生成图表

4)图表生成后可以配置样式:图表标题、坐标轴、图例、下钻、动画设置

5)样式效果配置后即时生效

image.png

4.8.18 指标统计图

1)操作流程:创建图表-进入图表设计页面

2)操作路径:数据可视化-图表-二级分组-图表-创建图表

3)切换图表为指标统计图,此时可以选择多个数值字段生成图表

4)图表生成后可以配置样式:图表标题、显示设置

5)样式效果配置后即时生效

image.png

Oinone社区 作者:史, 昂原创文章,如若转载,请注明出处:https://doc.oinone.top/oio4/9422.html

访问Oinone官网:https://www.oinone.top获取数式Oinone低代码应用平台体验

(0)
史, 昂的头像史, 昂数式管理员
上一篇 2024年6月20日 am9:49
下一篇 2024年6月20日 am9:49

相关推荐

  • 庄卓然

    从2009年加入阿里至今,经历了“三淘”时期、天猫时期、双十一,到最后的all in无线手淘时期,几乎是赶上了淘系发展的所有历史性事件。在这个过程中,每一次业务的变革都催生着技术的变迁,倒逼着我们用技术的方式去解决业务问题:在存储、IO、网络等环节满足不了淘系的业务规模时,开始去IOE,最后演化成了阿里云;当业务的规模大到不能通过简单加机器的方式去做调整、当开发的规模大到所有人在一起开发会互相影响的的时候,我们开始做SOA改造,最后演化成了业务中台;在经历了几届双十一后的巨大挑战后,我们开创了里程碑式的全链路压测;在手淘时代,为了解决动态发版问题,我们植入容器概念,搭建了可动态插拔的三层架构,一年实现了500多次的发版;为了同时满足写一套代码就解决多端开发和高并发的性能问题,我们做了weex,最后还捐给了开源社区…… 每一次的业务需求推动技术进步,而技术的进步永远会超出我们的想象! 同为技术宅,我在Oinone身上能清晰地感受到技术演进的脉络,企业在数字化时代,需要一个能快速上手、全面设计、灵活适应且低成本的技术工具,时代的变迁推动了Oinone的诞生。Oinone是一种全新的开发方式,在数字化时代,Oinone在提升研发效率上做出的创新性“低无一体”的设计对传统软件代码开发或者无代码开发一定会有巨大冲击,这种冲击会对软件市场格局造成什么样的变化,我拭目以待。 最后,愿我们这些追光人,在时代的洪流中,都能留下一抹印迹,不辜负时代,不辜负自己。 现任阿里巴巴副总裁,飞猪总裁,曾任阿里大文娱CTO兼优酷COO、淘宝CTO 庄卓然(南天)

    Oinone 7天入门到精通 2024年5月23日
    1.1K00
  • 4.1.25 框架之搜索引擎

    一、使用场景 在碰到大数据量并且需要全文检索的场景,我们在分布式架构中基本会架设ElasticSearch来作为一个常规解决方案。在oinone体系中增强模型就是应对这类场景,其背后也是整合了ElasticSearch。 二、整体介绍 oinone与es整合设计图 图4-1-25-1 Oinone与es整合设计图 基础环境安装 Canal安装 详见4.1.10【函数之触发与定时】一文 修改Canal配置并重启 新增Canal的实例【destinaion: pamirs】,监听分表模型的binlog【filter: demo.demo_core_sharding_model……】用于增量同步 pamirs: middleware: data-source: jdbc-url: jdbc:mysql://localhost:3306/canal_tsdb?useUnicode=true&characterEncoding=utf-8&verifyServerCertificate=false&useSSL=false&requireSSL=false driver-class-name: com.mysql.cj.jdbc.Driver username: root password: oinone canal: ip: 127.0.0.1 port: 1111 metricsPort: 1112 zkClusters: – 127.0.0.1:2181 destinations: – destinaion: pamirschangedata name: pamirschangedata desc: pamirschangedata slaveId: 1235 filter: demo\.demo_core_pet_talent dbUserName: root dbPassword: oinone memoryStorageBufferSize: 65536 topic: CHANGE_DATA_EVENT_TOPIC dynamicTopic: false dbs: – { address: 127.0.0.1, port: 3306 } – destinaion: pamirs id: 1234 name: pamirs desc: pamirs slaveId: 1234 filter: demo\.demo_core_sharding_model_0,demo\.demo_core_sharding_model_1,demo\.demo_core_sharding_model_2,demo\.demo_core_sharding_model_3,demo\.demo_core_sharding_model_4,demo\.demo_core_sharding_model_5,demo\.demo_core_sharding_model_6,demo\.demo_core_sharding_model_7 dbUserName: root dbPassword: oinone memoryStorageBufferSize: 65536 topic: BINLOG_EVENT_TOPIC dynamicTopic: false dbs: – { address: 127.0.0.1, port: 3306 } tsdb: enable: true jdbcUrl: "jdbc:mysql://127.0.0.1:3306/canal_tsdb" userName: root password: oinone mq: rocketmq rocketmq: namesrv: 127.0.0.1:9876 retryTimesWhenSendFailed: 5 dubbo: application: name: canal-server version: 1.0.0 registry: address: zookeeper://127.0.0.1:2181 protocol: name: dubbo port: 20881 scan: base-packages: pro.shushi server: address: 0.0.0.0 port: 10010 sessionTimeout: 3600 图4-1-25-2 修改Canal配置并重启 ES安装 下载安装包官方下载地址,也可以直接下载elasticsearch-8.4.1-darwin-x86_64.tar.gz.txt(361.7 MB),下载后去除后缀.txt,然后解压文件 替换安装目录/config下的[elasticsearch.yml](elasticsearch)(1 KB),主要是文件中追加了三个配置 xpack.security.enabled: false xpack.security.http.ssl.enabled: false xpack.security.transport.ssl.enabled: false 图4-1-25-3 elasticsearc.yml追加三个配置 启动 a. 导入环境变量(ES运行时需要JDK18及以上版本JDK运行环境, ES安装包中包含了一个JDK18版本) # export JAVA_HOME=/Users/oinone/Documents/oinone/es/elasticsearch-8.4.1/jdk.app/Contents/Home/ export JAVA_HOME=ES解压安装目录/jdk.app/Contents/Home/ 图4-1-25-4 导入环境变量 b. 运行ES ## nohup /Users/oinone/Documents/oinone/es/elasticsearch-8.4.1/bin/elasticsearch >> $TMPDIR/elastic.log 2>&1 & nohup ES安装目录/bin/elasticsearch >> $TMPDIR/elastic.log 2>&1 & 图4-1-25-5 运行ES 停止ES lsof…

    2024年5月23日
    95200
  • 4.1.7 函数之元数据详解

    介绍Function相关元数据,以及对应代码注解方式。大家还是可以通读下,以备不时之需 如您还不了解Function的定义,可以先看下2.3【oinone独特之源,元数据与设计原则】对Function的描述,本节主要带大家了解Function元数据构成,能让小伙伴非常清楚oinone从哪些维度来描述Function, 一、元数据说明 FunctionDefinition 元素数据构成 含义 对应注解 备注 namespace 函数命名空间 @Fun("") @Model.model("") @Fun或@Model.model name 技术名称 @Function( name=””, scene={}, summary=””, openLevel=FunctionOpenEnum.REMOTE ) scene 可用场景 见:FunctionSceneEnum description 描述 openLevel 开放级别 见:FunctionOpenEnum fun 编码 @Function.fun("") displayName 显示名称 @Function.Advanced( displayName=””, type=FunctionTypeEnum.UPDATE, dataManager=false, language=FunctionLanguageEnum.JAVA, isBuiltin=false, category=FunctionCategoryEnum.OTHER, group=”pamirs”, version=”1.0.0″, timeout=5000, retries=0, isLongPolling=false, longPollingKey=”userId” longPollingTimeout=1 ) type 函数类型默认:4(改) 见 FunctionTypeEnum dataManager 数据管理器函数默认:false language 函数语言默认:DSL 见FunctionLanguageEnum isBuiltin 是否内置函数 默认:false category 分类 默认:OTHER 见:FunctionCategoryEnum group 系统分组 默认:pamirs version 系统版本 默认:1.0.0 timeout 超时时间 默认:5000 retries 重试次数 默认:0 isLongPolling 是否支持long polling,默认false longPollingKey 支持从上下文中获取字段作为key longPollingTimeout long polling超时时间 默认值为1 transactionConfig 事务配置 JSON存储 见TransactionConfig 配置@PamirsTransactional source 来源 系统推断值,见:FunctionSourceEnum extPointList 函数包含扩展点 系统推断值 module 所属模块 系统推断值 bitOptions 位 系统推断值 attributes 属性 系统推断值 imports 上下文引用 系统推断值 context 上下文变量 系统推断值 codes 函数内容 系统推断值 beanName bean名称 系统推断值 rule 前端规则 系统推断值,一般Action.rule传递下来的 clazz 函数位置 系统推断值 method 函数方法 系统推断值 argumentList 函数参数 系统推断值,List<Argument> returnType 返回值类型 系统推断值 表4-1-7-1 FunctionDefinition TransactionConfig 函数事务管理之配置项事务,具体事务使用详见4.1.8【函数之事务管理】一文。 元素数据构成 含义 对应注解 备注 transactionManager 事务管理器 @PamirsTransactional( transactionManager=””, enableXa=false, isolation=Isolation.DEFAULT, propagation=Propagation.REQUIRED, timeout=-1, readOnly=false, rollbackFor={}, rollbackForClassName={}, noRollbackFor={}, noRollbackForClassName={}, rollbackForExpCode={}, noRollbackForExpCode={} ) enableXa 分布式事务默认为false isolation 事务隔离级别 propagation 事务传递类型 timeout 过期时间 默认:-1 readOnly 只读 默认:false rollbackForExpCode 回滚异常编码 rollbackForExpCode 忽略异常编码 namespace 函数命名空间 系统推断值 fun 函数编码 系统推断值 active…

  • 4.1.23 框架之信息传递

    在4.1.13【Action之校验】、3.4.1【构建第一个Function】等文章中,都用到PamirsSession.getMessageHub()来设置返回消息,基本上都是在传递后端逻辑判断的异常信息,而且在系统报错时也会通过它来返回错误信息,前端接收到错误信息则会以提示框的方式进行错误提示。其实后端除了可以返回错误信息以外,还可以返回调试、告警、成功、信息等级别的信息给前端。但是默认情况下前端只提示错误信息,可以通过前端的统一配置放开提示级别,有点类似后端的日志级别。 一、不同信息类型的举例 Step1 新建PetTypeAction 借用PetType模型的表格页做为信息传递的测试入口,为PetType模型新增一个ServerAction,在代码中对信息的所有类型进行模拟 package pro.shushi.pamirs.demo.core.action; import org.springframework.stereotype.Component; import pro.shushi.pamirs.demo.api.model.PetCatItem; import pro.shushi.pamirs.demo.api.model.PetType; import pro.shushi.pamirs.meta.annotation.Action; import pro.shushi.pamirs.meta.annotation.Model; import pro.shushi.pamirs.meta.api.dto.common.Message; import pro.shushi.pamirs.meta.api.session.PamirsSession; import pro.shushi.pamirs.meta.enmu.ActionContextTypeEnum; import pro.shushi.pamirs.meta.enmu.InformationLevelEnum; import pro.shushi.pamirs.meta.enmu.ViewTypeEnum; @Model.model(PetType.MODEL_MODEL) @Component public class PetTypeAction { @Action(displayName = "消息",bindingType = ViewTypeEnum.TABLE,contextType = ActionContextTypeEnum.CONTEXT_FREE) public PetType message(PetType data){ PamirsSession.getMessageHub().info("info1"); PamirsSession.getMessageHub().info("info2"); PamirsSession.getMessageHub().error("error1"); PamirsSession.getMessageHub().error("error2"); PamirsSession.getMessageHub().msg(new Message().msg("success1").setLevel(InformationLevelEnum.SUCCESS)); PamirsSession.getMessageHub().msg(new Message().msg("success2").setLevel(InformationLevelEnum.SUCCESS)); PamirsSession.getMessageHub().msg(new Message().msg("debug1").setLevel(InformationLevelEnum.DEBUG)); PamirsSession.getMessageHub().msg(new Message().msg("debug2").setLevel(InformationLevelEnum.DEBUG)); PamirsSession.getMessageHub().msg(new Message().msg("warn1").setLevel(InformationLevelEnum.WARN)); PamirsSession.getMessageHub().msg(new Message().msg("warn2").setLevel(InformationLevelEnum.WARN)); return data; } } 图4-1-23-1 为PetType模型新增一个ServerAction Step2 (前端)修改提示级别 在项目初始化时使用CLI构建初始化前端工程,在src/middleware有拦截器的默认实现,修改信息提示的默认级别为【ILevel.SUCCESS】 图4-1-23-2(前端)修改提示级别 const DEFAULT_MESSAGE_LEVEL = ILevel.SUCCESS; 图4-1-23-3(前端)修改提示级别 Step3 重启系统看效果 从页面效果中看到已经不在是只提示错误信息。从协议端看错误级别的信息是在errors下,其他级别的信息是在extensions下。 图4-1-23-4 示例效果 图4-1-23-5 系统提示的返回结果 二、MessageHub的其他说明 是实现上看MessageHub是基于GQL协议,前后端都有配套实现。同时前端还提供了订阅MessageHub的信息功能,以满足前端更多交互要求,前端MessageHub提供的订阅能力使用教程详见4.2.2前端高级特性之【框架之MessageHub】一文。

    2024年5月23日
    65600

Leave a Reply

登录后才能评论