• 关于

    模糊化不可用

    的搜索结果

回答

web数据集成技术可以从web上自动获取数据,但是获取的信息存在着大量的脏数据,比如滥用缩写词,惯用语,数据输入错误,重复记录,丢失值,拼写变化,不同的计量单位。这些数据是没有意义的,根本就不可能为以后的数据挖掘决策分析提供任何支持。数据清洗主要是提高数据的可用性,目前,数据清洗主要应用于三个领域: 1 数据仓库(DW) 2数据库中的知识发现(KDD) 3数据质量管理(TDQM) 我在公司里的第一个项目就是数据质量管理,在这里在说下数据质量管理: 通过制定、实施数据质量检核,暴露各系统数据质量问题。持续监控各系统数据质量波动情况及数据质量规则占比分析,定期生成各系统关键数据质量报告,掌握系统数据质量状况。结合系统提供的清洗组件以及数据质量问题处理流程为各系统数据质量提升提供有效支撑。数据质量(DataQuality)管理是贯穿数据生命周期的全过程,覆盖质量评估,数据去噪,数据监控,数据探查,数据清洗,数据诊断等方面。数据度量和变化频度提供了衡量数据质量好坏的手段。数据度量主要包括完整性、唯一性、一致性、准确性、合法性。变化频度主要包括业务系统数据的变化周期和实体数据的刷新周期。数据质量管理准则包括测量、提高组织数据的质量和整合性的方法。数据质量处理包括数据标准化、匹配、生存和质量监测。数据必须具备适当的质量,以解决业务要求问题。 结合大数据的参考框架及数据处理实际需求情况,数据质量管理系统主要功能定位为:数据发现、质量管理、元数据、主数据管理和信息政策管理。在数据生命周期中,数据的获取和使用周期包括系列活动:评估,分析,调整,丢弃数据,目前数据清洗的模型: 基于粗糙集理论数据清洗 基于聚式模式数据清洗 基于模糊匹配数据清洗模型 基于遗传神经网络数据清洗 基于专家系统体系结构等数据校验及转换 数据校验的目的是确保抽取数据本身的正确性和完整性, 数据转换的目的是保证数据的一致性数据清洗流程1数据预处理: 包括数据元素化,保准化 2确定清洗方法: 3校验清洗方法:先验证所用的清洗方法是否合适,抽取小样本进行验证,判断其召回率和准确率 4执行清洗工具: 5数据归档:将新旧数据源进行归档处理,方便以后的清洗一般情况下,模式中反应的元数据对应判断一个数据源的质量远远不够,因此通过具体实例来获得有关数据熟悉和不寻常模式的元数据很重要。这些元数据可以帮助发现数据质量问题,也有助于发现属性间的依赖关系,

xuning715 2019-12-02 01:12:15 0 浏览量 回答数 0

回答

细致的解释看下面: 1、Alpha 滤镜 "Alpha"属性是把一个目标元素与背景混合。设计者可以指定数值来控制混合的程度。这种“与背景混合”通俗地说就是一个元素的透明度。通过指定坐标,可以指定各种不同范围的透明度。 Alpha 滤镜语法 {FILTER:ALPHA(opacity=opacity,finishopacity=finishopacity, style=style,startx=startx, starty=starty,finishx=finishx,finishy=finishy)} 参数含义分别如下: 参数 说明 opacity 透明度。默认的范围是从0 到 100,他们其实是百分比的形式。也就是说,0代表完全透明,100代表完全不透明。 finishopacity 是一个可选参数,如果想要设置渐变的透明效果,就可以使用他们来指定结束时的透明度。范围也是0 到 100。 style 指定透明区域的形状特征: 0 代表统一形状 1 代表线形 2 代表放射状 3 代表矩形 startx 渐变透明效果开始处的 X坐标。 starty 渐变透明效果开始处的 Y坐标。 finishx 渐变透明效果结束处的 X坐标。 finishy 渐变透明效果结束处的 Y坐标。 2、Blur 滤镜 用手指在一幅尚未干透的画面迅速划过时,画面就会变得模糊。”Blur"就是产生同样的模糊效果。 Blur滤镜语法 HTML:{filter:blur(add=add,direction=direction, strength=strength)} Script语言: [oblurfilter=] object.filters.blur 参数含义分别如下: 参数 说明 add 它指定图片是否被改变成印象派的模糊效果。模糊效果是按顺时针的方向进行的, 这是一个布尔值:ture (默认)或false direction 该参数用来设置模糊的方向。 0度代表垂直向上,每45度为一个单位,默认值是向左的270度 strength 只能使用整数来指定,代表有多少像素的宽度将受到模糊影响,默认是5个像素。 3、DropShadow 滤镜 “DropShaow",顾名思义就是添加对象的阴影效果。其工作原理是建立一个偏移量,加上色彩。 DropShadow 滤镜语法 {filter:dropshadow (color=color,offx=ofx,offy=offy,positive=positive)} 参数含义如下: 参数 说明 Color 代表投射阴影的颜色 offx X方向阴影的偏移量 offy Y方向阴影的偏移量 Positive 布尔值 如果为TRUE(非0),就为任何的非透明像素建立可见的投影 如果为FASLE(0),就为透明的像素部分建立透明效果 4、FlipH, FlipV 滤镜 FlipH 滤镜实现水平反转 FlipH 滤镜语法 {filter:filph} FlipV 滤镜实现垂直反转 FlipV 滤镜语法 {filter:filpv} 5、Glow 滤镜 对一个对象使用"glow"属性后,这个对象的边缘就会产生类似发光的效果。 Glow 滤镜语法 {filter:glow(color=color,strength)} 参数含义如下: 参数 说明 Color 指定发光的颜色 STRENGTH 强度,值为1到255之间的任何整数,指定发光色力度和范围。 6、Gray 滤镜 使用Gray滤镜可以把一张图片变成灰度图,语法很简单: Gray 滤镜语法 {filter:gray} 7、Invert滤镜 使用Invert滤镜可以把对象的可视化属性全部翻转,包括色彩、饱和度、和亮度值 Invert 滤镜语法 {filter:invert} 8、Xray滤镜 使用Xray滤镜可以让对象反映出它的轮廓并把这些轮廓加亮,类似于所谓的“X”光片。 Xray 滤镜语法 {filter:xray} 9、Mask 滤镜 Mask 滤镜语法 {filter:mask(color=color)} 使用"MASK"属性可以为对象建立一个覆盖于表面的膜,其效果就象戴着有色眼镜看物体一样 。 10、Light 滤镜 Light 滤镜语法 {filter:light} 这个属性模拟光源的投射效果。一旦为对象定义了“LIGHT"滤镜属性,那么就可以调用它的“方法(Method)"来设置或者改变属性。“LIGHT"可用的方法有: 参数 说明 AddAmbient 加入包围的光源 AddCone 加入锥形光源 AddPoint 加入点光源 Changcolor 改变光的颜色 Changstrength 改变光源的强度 Clear 清除所有的光源 MoveLight 移动光源 我们可以定义光源的虚拟位置,以及通过调整X轴和Y轴的数值来控制光源焦点的位置,还可以调整光源的形式(点光源或者锥形光源)指定光源是否模糊边界、光源的颜色、亮度等属性。如果动态的设置光源,可能会产生一些意想不到的效果。 11、Shadow 滤镜 Shadow 滤镜 语法 {filter:shadow(color=color,direction=direction)} 利用“Shadow”属性可以在指定的方向建立物体的投影,COLOR是投影色,DIRECTION是设置投影的方向。其中0度代表垂直向上,然后每45度为一个单位。它的默认值是向左的270度。 12、Wave 滤镜 Wave 滤镜 语法 {filter:wave(add=add,freq=freq, lightstrength=strength, phase=phase,strength=strength)} 参数 说明 wave 把对象按垂直的波形样式打乱。 默认是 TRUE(非0) ADD 是否要把对象按照波形样式打乱 FREQ 波纹的频率,也就是指定在对象上一共需要产生多少个完整的波纹 LIGHTSTRENGTH 可以对于波纹增强光影的效果,范围0----100 PHASE 设置正弦波的偏移量 STRENGTH 振幅大小 答案来源于网络

养狐狸的猫 2019-12-02 03:01:52 0 浏览量 回答数 0

问题

Python 爬虫的工具列表

驻云科技 2019-12-01 21:44:42 4079 浏览量 回答数 2

阿里云试用中心,为您提供0门槛上云实践机会!

0元试用32+款产品,最高免费12个月!拨打95187-1,咨询专业上云建议!

问题

应该如何使用阿里云?高级篇

rippletek 2019-12-01 21:14:53 20970 浏览量 回答数 18

回答

概述 1.1 媒体工作流的作用 媒体工作流支持截图、转码、转封装、水印、剪辑等功能,使您可以快速、灵活、按需搭建云端音视频处理流程;在媒体工作流开始执行和完成执行时,支持向指定的消息队列或消息通知发送工作流执行信息。具体包括以下功能:输入bucket路径,转码配置,截图配置,发布配置及消息通知配置。 消息服务检测到输入bucket路径中存在资源增量输入,就会触发媒体工作流中的转码或者截图任务进行转码及截图,对应的任务完成,如果您的输入配置中配置了消息服务的通知或者队列即会在工作流执行实例的开始和结束时通过消息服务发送消息供用户业务逻辑判断,而对应的转码或者截图结果将存储到工作流配置的输出bucket中。 1.2 媒体工作流配置流程 用户可以登陆控制台,在工作流管理中选择配置方案—>输入设置—>转码设置/截图设置/分析及转码设置—>发布设置—>配置cdn加速; 1 1.3 配置方案介绍 2 预置配置方案包括了:M3U8切片工作流,预置智能模板工作流,多码率多格式工作流,FLV多码率工作流,M3U8多码率工作流,MP4多码率工作流,以上工作流其实就是分析转码截图任务节点的组合,用户可以根据需求选择对应的组合或者自定义组合。 3 输入设置 2.1 输入设置基础设置 点击输入节点上的“铅笔”按钮—>进入输入配置页面—>选择输入bucket,转码管道,消息类别,填入输入路径,基础配置就完成了。 45 2.2 输入bucket设置 点击“选择”按钮可以进入到OSS文件管理页面,用户可以选择需求的bucket及bucket下的某个文件夹作为输入路径(文件夹选定后,会自动补全到输入路径的文本框中)。 6 输入bucket选择注意事项 在哪个区域新建工作流,对应的输入bucket也只能是对应区域的bucket,别的区域的bucket不能选择; 输入bucket中的可选择bucket,必须源自媒体bucket的输入bucket,媒体bucket如何添加,请看视频点播初始化设置文档; 输入路径是可编辑的,但注意目录的设置不需要以/结尾,如想存储资源到1目录下的2目录,那么对应的输入路径便为1/2/,而不是1/2; 目前工作流只支持在华东1,华东2,华北1,华南1 区域; 2.3 转码管道设置 转码管道,是处理转码作业的管道,选择对应的管道即可。关于管道的具体意义请参考:《视频点播的初始化设置》。 转码管道限制: 目前每个用户在每个服务可用域拥有1个管道; 每个管道可最多可容纳10000个排队作业; 每个管道最多可同时处理的作业不超过分配给该管道的转码资源数; 2.4 消息类别设置 其中消息类别分为:队列和通知。消息类别可以不进行设置。队列创建看【队列创建】; 通知创建看【通知创建】;队列与通知的区别请看【队列与通知的区别】;队列与通知的消息消费看【队列与通知的消息消费】;选择通知后,可以选择对应的通知名称,也可以增加通知。7选择队列后,可以选择对应的队列,也可以增加队列。8 转码设置 3.1 转码设置基础设置 点击转码按钮上的“铅笔”按钮—>进入基础配置页面—>选择转码模板,输出bucket,是否使用水印,填入输出路径,基础配置就完成了。1011 3.2 转码模板设置 点击选择按钮—>进入转码模板页面—>选择转码模板。转码模板分为预置静态模板及自定义模板。视频点播的转码模板源自媒体转码MTS的转码模板,也可以在视频点播初始化设置的时候添加。预置静态模板介绍看【预置静态模板】 12 转码模板选择注意事项 转码为不同的格式,建议选择转码模板,而不是转码封装模板,否则可能会有转码失败的可能。 3.3 输出bucket设置 点击选择按钮—>进入OSS文件管理页面—>选择输出bucket及对应的输出文件夹。13 输出bucket选择注意事项 在哪个区域新建工作流,对应的输出bucket也只能是对应区域的bucket,别的区域的bucket不能选择; 输出bucket中的可选择bucket,必须源自媒体bucket的输出bucket,媒体bucket如何添加,请看视频点播初始化设置文档; 输出路径是可编辑的,但注意目录的设置不需要以/结尾,如想存储资源到1目录下的2目录,那么对应的输出路径便为1/2/,而不是1/2; 目前工作流只支持在华东1,华东2,华北1和华南1 四个区域; 3.4 使用水印设置 水印设置是为用户的转码视频添加水印,用户可以选择对应的水印模板或者不使用水印。水印模板选择后,选择对应的水印图片—>进入OSS管理页面—>选择bucket中的图片。水印模板源自媒体转码MTS的水印模板,也可以在视频点播初始化设置的时候添加。14 注意: 水印图片所在bucket源自媒体bucket中的输出bucket。 4. 截图设置 4.1 截图设置基础设置 点击截图按钮上的“铅笔”标识—>进入截图页面—>选择是否进行多张截图,输出bucket,开始时间,是否设置为封面,是否截取关键帧,设置截图时间间隔,截图数量,输出路径,图片宽度,高度。1516 截图基础配置注意事项: 多张截图:表示是否开启多张截图,多张截图开启后,可以设置截图数量及截图间隔; 开始时间,表示从什么时间点开启截图,注意设置开始时间不要大于视频总时长,不然是不会截图的; 设置封面:表示对应的截图是否设置为封面,如果开启多张截图,默认第一张截图设置为封面; 关键帧:表示是否只截取关键帧的图片,截取非关键帧的图片,图片可能会存在模糊损坏的现象; 图片宽度高度表示截取图片的宽高; 4.1 输出bucket设置 点击选择按钮—>进入OSS文件管理页面—>选择输出bucket及对应的输出文件夹。17 输出bucket选择注意事项 在哪个区域新建工作流,对应的输出bucket也只能是对应区域的bucket,别的区域的bucket不能选择; 输出bucket中的可选择bucket,必须源自媒体bucket的输出bucket,媒体bucket如何添加,请看视频点播初始化设置文档; 输出路径是可编辑的,在选择bucket并选择文件夹后,对应的输出路径默认为:文件夹名称/ {RunId}/{SnapshotTime}/{Count}.jpg,{RunId}表示转码实例id, {SnapshotTime} 为截图时间点,单位为毫秒,此例中对视频第5秒截图,则变量取值为 5000,如果使用多张图片需要使用{Count}占位符,反之不需要; 目前工作流只支持在华东1,华东2,华北1和华南1 四个区域; 5. 分析/转码设置 5.1 分析/转码设置基础设置 点击转码按钮上的“铅笔”标识—>进入基础配置页面—>选择转码模板,输出bucket,是否使用水印,填入输出路径,基础配置就完成了。1819 5.2 转码模板设置 点击选择按钮—>进入转码模板页面—>选择转码模板。转码模板为预置智能模板,对应的转码任务要生效,得转码之前的分析作业执行后,分析得到到适用该视频的转码模板包含了转码设置中选择的模板,对应的转码任务才能执行,否则是不会执行,在执行实例中出现“跳过”的图示结果。预置智能模板介绍看【预置智能模板介绍】;如果想转码任务一定执行,请直接添加转码任务,不要加分析/转码任务并且使用MTS静态模板,不要使用MTS智能模板。 20 转码模板选择注意事项 转码为不同的格式,建议选择转码模板,而不是转码封装模板 5.3 输出bucket设置 点击选择按钮—>进入OSS文件管理页面—>选择输出bucket及对应的输出文件夹。21 输出bucket选择注意事项 在哪个区域新建工作流,对应的输出bucket也只能是对应区域的bucket,别的区域的bucket不能选择; 输出bucket中的可选择bucket,必须源自媒体bucket的输出bucket,媒体bucket如何添加,请看视频点播初始化设置文档; 输出路径是可编辑的,但注意目录的设置不需要以/结尾,如想存储资源到1目录下的2目录,那么对应的输出路径便为1/2/,而不是1/2; 目前工作流只支持在华东1,华东2,华北1和华南1 四个区域; 5.4 使用水印设置 水印设置是为用户的转码视频添加水印,用户可以选择对应的水印模板或者不使用水印。水印模板选择后,选择对应的水印图片—>进入OSS管理页面—>选择bucket中的图片。水印模板源自媒体转码MTS的水印模板,也可以在视频点播初始化设置的时候添加。22 注意: 水印图片所在bucket源自媒体bucket中的输出bucket。 6. 发布设置 点击发布边上的铅笔按钮—>进入发布页面—>选择媒体发布类型,基础配置就完成了。媒体发布类型分为自动及手动,默认为手动。2324 发布设置注意事项: 自动与手动的区别为:自动表示工作流处理后生成的object的acl 为default状态,这个状态表示object的权限继承自bucket的权限,当bucket是公共读的时候,object的acl 也是公共读,bucket私有,object acl 也是私有的;手动表示工作流处理后生成的object的acl为私有的,必须通过鉴权才能访问该object资源; 已有的媒体视频要修改发布状态,可以在媒体库中点击发布,进行发布;25 7. 配置cdn加速 点击下一步按钮—>进入配置内容分发网络(CDN)页面—>如果不存在cdn域名就点击添加,快速添加点播加速域名。26 注意:只有在新建工作流配置中有cdn 域名,对应转码输出后的资源才会带cdn域名地址的链接,如果当时创建工作流不存在CDN域名,之后在bucket中手动绑定域名并进行加速,这样的域名是不会在输出媒体地址中显示的。27

保持可爱mmm 2020-03-30 11:56:10 0 浏览量 回答数 0

问题

MathML 介绍:报错

kun坤 2020-06-08 11:09:17 2 浏览量 回答数 1

回答

92题 一般来说,建立INDEX有以下益处:提高查询效率;建立唯一索引以保证数据的唯一性;设计INDEX避免排序。 缺点,INDEX的维护有以下开销:叶节点的‘分裂’消耗;INSERT、DELETE和UPDATE操作在INDEX上的维护开销;有存储要求;其他日常维护的消耗:对恢复的影响,重组的影响。 需要建立索引的情况:为了建立分区数据库的PATITION INDEX必须建立; 为了保证数据约束性需要而建立的INDEX必须建立; 为了提高查询效率,则考虑建立(是否建立要考虑相关性能及维护开销); 考虑在使用UNION,DISTINCT,GROUP BY,ORDER BY等字句的列上加索引。 91题 作用:加快查询速度。原则:(1) 如果某属性或属性组经常出现在查询条件中,考虑为该属性或属性组建立索引;(2) 如果某个属性常作为最大值和最小值等聚集函数的参数,考虑为该属性建立索引;(3) 如果某属性经常出现在连接操作的连接条件中,考虑为该属性或属性组建立索引。 90题 快照Snapshot是一个文件系统在特定时间里的镜像,对于在线实时数据备份非常有用。快照对于拥有不能停止的应用或具有常打开文件的文件系统的备份非常重要。对于只能提供一个非常短的备份时间而言,快照能保证系统的完整性。 89题 游标用于定位结果集的行,通过判断全局变量@@FETCH_STATUS可以判断是否到了最后,通常此变量不等于0表示出错或到了最后。 88题 事前触发器运行于触发事件发生之前,而事后触发器运行于触发事件发生之后。通常事前触发器可以获取事件之前和新的字段值。语句级触发器可以在语句执行前或后执行,而行级触发在触发器所影响的每一行触发一次。 87题 MySQL可以使用多个字段同时建立一个索引,叫做联合索引。在联合索引中,如果想要命中索引,需要按照建立索引时的字段顺序挨个使用,否则无法命中索引。具体原因为:MySQL使用索引时需要索引有序,假设现在建立了"name,age,school"的联合索引,那么索引的排序为: 先按照name排序,如果name相同,则按照age排序,如果age的值也相等,则按照school进行排序。因此在建立联合索引的时候应该注意索引列的顺序,一般情况下,将查询需求频繁或者字段选择性高的列放在前面。此外可以根据特例的查询或者表结构进行单独的调整。 86题 建立索引的时候一般要考虑到字段的使用频率,经常作为条件进行查询的字段比较适合。如果需要建立联合索引的话,还需要考虑联合索引中的顺序。此外也要考虑其他方面,比如防止过多的所有对表造成太大的压力。这些都和实际的表结构以及查询方式有关。 85题 存储过程是一组Transact-SQL语句,在一次编译后可以执行多次。因为不必重新编译Transact-SQL语句,所以执行存储过程可以提高性能。触发器是一种特殊类型的存储过程,不由用户直接调用。创建触发器时会对其进行定义,以便在对特定表或列作特定类型的数据修改时执行。 84题 存储过程是用户定义的一系列SQL语句的集合,涉及特定表或其它对象的任务,用户可以调用存储过程,而函数通常是数据库已定义的方法,它接收参数并返回某种类型的值并且不涉及特定用户表。 83题 减少表连接,减少复杂 SQL,拆分成简单SQL。减少排序:非必要不排序,利用索引排序,减少参与排序的记录数。尽量避免 select *。尽量用 join 代替子查询。尽量少使用 or,使用 in 或者 union(union all) 代替。尽量用 union all 代替 union。尽量早的将无用数据过滤:选择更优的索引,先分页再Join…。避免类型转换:索引失效。优先优化高并发的 SQL,而不是执行频率低某些“大”SQL。从全局出发优化,而不是片面调整。尽可能对每一条SQL进行 explain。 82题 如果条件中有or,即使其中有条件带索引也不会使用(要想使用or,又想让索引生效,只能将or条件中的每个列都加上索引)。对于多列索引,不是使用的第一部分,则不会使用索引。like查询是以%开头。如果列类型是字符串,那一定要在条件中将数据使用引号引用起来,否则不使用索引。如果mysql估计使用全表扫描要比使用索引快,则不使用索引。例如,使用<>、not in 、not exist,对于这三种情况大多数情况下认为结果集很大,MySQL就有可能不使用索引。 81题 主键不能重复,不能为空,唯一键不能重复,可以为空。建立主键的目的是让外键来引用。一个表最多只有一个主键,但可以有很多唯一键。 80题 空值('')是不占用空间的,判断空字符用=''或者<>''来进行处理。NULL值是未知的,且占用空间,不走索引;判断 NULL 用 IS NULL 或者 is not null ,SQL 语句函数中可以使用 ifnull ()函数来进行处理。无法比较 NULL 和 0;它们是不等价的。无法使用比较运算符来测试 NULL 值,比如 =, <, 或者 <>。NULL 值可以使用 <=> 符号进行比较,该符号与等号作用相似,但对NULL有意义。进行 count ()统计某列的记录数的时候,如果采用的 NULL 值,会被系统自动忽略掉,但是空值是统计到其中。 79题 HEAP表是访问数据速度最快的MySQL表,他使用保存在内存中的散列索引。一旦服务器重启,所有heap表数据丢失。BLOB或TEXT字段是不允许的。只能使用比较运算符=,<,>,=>,= <。HEAP表不支持AUTO_INCREMENT。索引不可为NULL。 78题 如果想输入字符为十六进制数字,可以输入带有单引号的十六进制数字和前缀(X),或者只用(Ox)前缀输入十六进制数字。如果表达式上下文是字符串,则十六进制数字串将自动转换为字符串。 77题 Mysql服务器通过权限表来控制用户对数据库的访问,权限表存放在mysql数据库里,由mysql_install_db脚本初始化。这些权限表分别user,db,table_priv,columns_priv和host。 76题 在缺省模式下,MYSQL是autocommit模式的,所有的数据库更新操作都会即时提交,所以在缺省情况下,mysql是不支持事务的。但是如果你的MYSQL表类型是使用InnoDB Tables 或 BDB tables的话,你的MYSQL就可以使用事务处理,使用SET AUTOCOMMIT=0就可以使MYSQL允许在非autocommit模式,在非autocommit模式下,你必须使用COMMIT来提交你的更改,或者用ROLLBACK来回滚你的更改。 75题 它会停止递增,任何进一步的插入都将产生错误,因为密钥已被使用。 74题 创建索引的时候尽量使用唯一性大的列来创建索引,由于使用b+tree做为索引,以innodb为例,一个树节点的大小由“innodb_page_size”,为了减少树的高度,同时让一个节点能存放更多的值,索引列尽量在整数类型上创建,如果必须使用字符类型,也应该使用长度较少的字符类型。 73题 当MySQL单表记录数过大时,数据库的CRUD性能会明显下降,一些常见的优化措施如下: 限定数据的范围: 务必禁止不带任何限制数据范围条件的查询语句。比如:我们当用户在查询订单历史的时候,我们可以控制在一个月的范围内。读/写分离: 经典的数据库拆分方案,主库负责写,从库负责读。垂直分区: 根据数据库里面数据表的相关性进行拆分。简单来说垂直拆分是指数据表列的拆分,把一张列比较多的表拆分为多张表。水平分区: 保持数据表结构不变,通过某种策略存储数据分片。这样每一片数据分散到不同的表或者库中,达到了分布式的目的。水平拆分可以支撑非常大的数据量。 72题 乐观锁失败后会抛出ObjectOptimisticLockingFailureException,那么我们就针对这块考虑一下重试,自定义一个注解,用于做切面。针对注解进行切面,设置最大重试次数n,然后超过n次后就不再重试。 71题 一致性非锁定读讲的是一条记录被加了X锁其他事务仍然可以读而不被阻塞,是通过innodb的行多版本实现的,行多版本并不是实际存储多个版本记录而是通过undo实现(undo日志用来记录数据修改前的版本,回滚时会用到,用来保证事务的原子性)。一致性锁定读讲的是我可以通过SELECT语句显式地给一条记录加X锁从而保证特定应用场景下的数据一致性。 70题 数据库引擎:尤其是mysql数据库只有是InnoDB引擎的时候事物才能生效。 show engines 查看数据库默认引擎;SHOW TABLE STATUS from 数据库名字 where Name='表名' 如下;SHOW TABLE STATUS from rrz where Name='rrz_cust';修改表的引擎alter table table_name engine=innodb。 69题 如果是等值查询,那么哈希索引明显有绝对优势,因为只需要经过一次算法即可找到相应的键值;当然了,这个前提是,键值都是唯一的。如果键值不是唯一的,就需要先找到该键所在位置,然后再根据链表往后扫描,直到找到相应的数据;如果是范围查询检索,这时候哈希索引就毫无用武之地了,因为原先是有序的键值,经过哈希算法后,有可能变成不连续的了,就没办法再利用索引完成范围查询检索;同理,哈希索引也没办法利用索引完成排序,以及like ‘xxx%’ 这样的部分模糊查询(这种部分模糊查询,其实本质上也是范围查询);哈希索引也不支持多列联合索引的最左匹配规则;B+树索引的关键字检索效率比较平均,不像B树那样波动幅度大,在有大量重复键值情况下,哈希索引的效率也是极低的,因为存在所谓的哈希碰撞问题。 68题 decimal精度比float高,数据处理比float简单,一般优先考虑,但float存储的数据范围大,所以范围大的数据就只能用它了,但要注意一些处理细节,因为不精确可能会与自己想的不一致,也常有关于float 出错的问题。 67题 datetime、timestamp精确度都是秒,datetime与时区无关,存储的范围广(1001-9999),timestamp与时区有关,存储的范围小(1970-2038)。 66题 Char使用固定长度的空间进行存储,char(4)存储4个字符,根据编码方式的不同占用不同的字节,gbk编码方式,不论是中文还是英文,每个字符占用2个字节的空间,utf8编码方式,每个字符占用3个字节的空间。Varchar保存可变长度的字符串,使用额外的一个或两个字节存储字符串长度,varchar(10),除了需要存储10个字符,还需要1个字节存储长度信息(10),超过255的长度需要2个字节来存储。char和varchar后面如果有空格,char会自动去掉空格后存储,varchar虽然不会去掉空格,但在进行字符串比较时,会去掉空格进行比较。Varbinary保存变长的字符串,后面不会补\0。 65题 首先分析语句,看看是否load了额外的数据,可能是查询了多余的行并且抛弃掉了,可能是加载了许多结果中并不需要的列,对语句进行分析以及重写。分析语句的执行计划,然后获得其使用索引的情况,之后修改语句或者修改索引,使得语句可以尽可能的命中索引。如果对语句的优化已经无法进行,可以考虑表中的数据量是否太大,如果是的话可以进行横向或者纵向的分表。 64题 建立索引的时候一般要考虑到字段的使用频率,经常作为条件进行查询的字段比较适合。如果需要建立联合索引的话,还需要考虑联合索引中的顺序。此外也要考虑其他方面,比如防止过多的所有对表造成太大的压力。这些都和实际的表结构以及查询方式有关。 63题 存储过程是一些预编译的SQL语句。1、更加直白的理解:存储过程可以说是一个记录集,它是由一些T-SQL语句组成的代码块,这些T-SQL语句代码像一个方法一样实现一些功能(对单表或多表的增删改查),然后再给这个代码块取一个名字,在用到这个功能的时候调用他就行了。2、存储过程是一个预编译的代码块,执行效率比较高,一个存储过程替代大量T_SQL语句 ,可以降低网络通信量,提高通信速率,可以一定程度上确保数据安全。 62题 密码散列、盐、用户身份证号等固定长度的字符串应该使用char而不是varchar来存储,这样可以节省空间且提高检索效率。 61题 推荐使用自增ID,不要使用UUID。因为在InnoDB存储引擎中,主键索引是作为聚簇索引存在的,也就是说,主键索引的B+树叶子节点上存储了主键索引以及全部的数据(按照顺序),如果主键索引是自增ID,那么只需要不断向后排列即可,如果是UUID,由于到来的ID与原来的大小不确定,会造成非常多的数据插入,数据移动,然后导致产生很多的内存碎片,进而造成插入性能的下降。总之,在数据量大一些的情况下,用自增主键性能会好一些。 60题 char是一个定长字段,假如申请了char(10)的空间,那么无论实际存储多少内容。该字段都占用10个字符,而varchar是变长的,也就是说申请的只是最大长度,占用的空间为实际字符长度+1,最后一个字符存储使用了多长的空间。在检索效率上来讲,char > varchar,因此在使用中,如果确定某个字段的值的长度,可以使用char,否则应该尽量使用varchar。例如存储用户MD5加密后的密码,则应该使用char。 59题 一. read uncommitted(读取未提交数据) 即便是事务没有commit,但是我们仍然能读到未提交的数据,这是所有隔离级别中最低的一种。 二. read committed(可以读取其他事务提交的数据)---大多数数据库默认的隔离级别 当前会话只能读取到其他事务提交的数据,未提交的数据读不到。 三. repeatable read(可重读)---MySQL默认的隔离级别 当前会话可以重复读,就是每次读取的结果集都相同,而不管其他事务有没有提交。 四. serializable(串行化) 其他会话对该表的写操作将被挂起。可以看到,这是隔离级别中最严格的,但是这样做势必对性能造成影响。所以在实际的选用上,我们要根据当前具体的情况选用合适的。 58题 B+树的高度一般为2-4层,所以查找记录时最多只需要2-4次IO,相对二叉平衡树已经大大降低了。范围查找时,能通过叶子节点的指针获取数据。例如查找大于等于3的数据,当在叶子节点中查到3时,通过3的尾指针便能获取所有数据,而不需要再像二叉树一样再获取到3的父节点。 57题 因为事务在修改页时,要先记 undo,在记 undo 之前要记 undo 的 redo, 然后修改数据页,再记数据页修改的 redo。 Redo(里面包括 undo 的修改) 一定要比数据页先持久化到磁盘。 当事务需要回滚时,因为有 undo,可以把数据页回滚到前镜像的状态,崩溃恢复时,如果 redo log 中事务没有对应的 commit 记录,那么需要用 undo把该事务的修改回滚到事务开始之前。 如果有 commit 记录,就用 redo 前滚到该事务完成时并提交掉。 56题 redo log是物理日志,记录的是"在某个数据页上做了什么修改"。 binlog是逻辑日志,记录的是这个语句的原始逻辑,比如"给ID=2这一行的c字段加1"。 redo log是InnoDB引擎特有的;binlog是MySQL的Server层实现的,所有引擎都可以使用。 redo log是循环写的,空间固定会用完:binlog 是可以追加写入的。"追加写"是指binlog文件写到一定大小后会切换到下一个,并不会覆盖以前的日志。 最开始 MySQL 里并没有 InnoDB 引擎,MySQL 自带的引擎是 MyISAM,但是 MyISAM 没有 crash-safe 的能力,binlog日志只能用于归档。而InnoDB 是另一个公司以插件形式引入 MySQL 的,既然只依靠 binlog 是没有 crash-safe 能力的,所以 InnoDB 使用另外一套日志系统,也就是 redo log 来实现 crash-safe 能力。 55题 重做日志(redo log)      作用:确保事务的持久性,防止在发生故障,脏页未写入磁盘。重启数据库会进行redo log执行重做,达到事务一致性。 回滚日志(undo log)  作用:保证数据的原子性,保存了事务发生之前的数据的一个版本,可以用于回滚,同时可以提供多版本并发控制下的读(MVCC),也即非锁定读。 二进 制日志(binlog)    作用:用于主从复制,实现主从同步;用于数据库的基于时间点的还原。 错误日志(errorlog) 作用:Mysql本身启动,停止,运行期间发生的错误信息。 慢查询日志(slow query log)  作用:记录执行时间过长的sql,时间阈值可以配置,只记录执行成功。 一般查询日志(general log)    作用:记录数据库的操作明细,默认关闭,开启后会降低数据库性能 。 中继日志(relay log) 作用:用于数据库主从同步,将主库发来的bin log保存在本地,然后从库进行回放。 54题 MySQL有三种锁的级别:页级、表级、行级。 表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低。 行级锁:开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高。 页面锁:开销和加锁时间界于表锁和行锁之间;会出现死锁;锁定粒度界于表锁和行锁之间,并发度一般。 死锁: 是指两个或两个以上的进程在执行过程中。因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。 死锁的关键在于:两个(或以上)的Session加锁的顺序不一致。 那么对应的解决死锁问题的关键就是:让不同的session加锁有次序。死锁的解决办法:1.查出的线程杀死。2.设置锁的超时时间。3.指定获取锁的顺序。 53题 当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性(脏读,不可重复读,幻读等),可能产生死锁。 乐观锁:乐观锁不是数据库自带的,需要我们自己去实现。 悲观锁:在进行每次操作时都要通过获取锁才能进行对相同数据的操作。 共享锁:加了共享锁的数据对象可以被其他事务读取,但不能修改。 排他锁:当数据对象被加上排它锁时,一个事务必须得到锁才能对该数据对象进行访问,一直到事务结束锁才被释放。 行锁:就是给某一条记录加上锁。 52题 Mysql是关系型数据库,MongoDB是非关系型数据库,数据存储结构的不同。 51题 关系型数据库优点:1.保持数据的一致性(事务处理)。 2.由于以标准化为前提,数据更新的开销很小。 3. 可以进行Join等复杂查询。 缺点:1、为了维护一致性所付出的巨大代价就是其读写性能比较差。 2、固定的表结构。 3、高并发读写需求。 4、海量数据的高效率读写。 非关系型数据库优点:1、无需经过sql层的解析,读写性能很高。 2、基于键值对,数据没有耦合性,容易扩展。 3、存储数据的格式:nosql的存储格式是key,value形式、文档形式、图片形式等等,文档形式、图片形式等等,而关系型数据库则只支持基础类型。 缺点:1、不提供sql支持,学习和使用成本较高。 2、无事务处理,附加功能bi和报表等支持也不好。 redis与mongoDB的区别: 性能:TPS方面redis要大于mongodb。 可操作性:mongodb支持丰富的数据表达,索引,redis较少的网络IO次数。 可用性:MongoDB优于Redis。 一致性:redis事务支持比较弱,mongoDB不支持事务。 数据分析:mongoDB内置了数据分析的功能(mapreduce)。 应用场景:redis数据量较小的更性能操作和运算上,MongoDB主要解决海量数据的访问效率问题。 50题 如果Redis被当做缓存使用,使用一致性哈希实现动态扩容缩容。如果Redis被当做一个持久化存储使用,必须使用固定的keys-to-nodes映射关系,节点的数量一旦确定不能变化。否则的话(即Redis节点需要动态变化的情况),必须使用可以在运行时进行数据再平衡的一套系统,而当前只有Redis集群可以做到这样。 49题 分区可以让Redis管理更大的内存,Redis将可以使用所有机器的内存。如果没有分区,你最多只能使用一台机器的内存。分区使Redis的计算能力通过简单地增加计算机得到成倍提升,Redis的网络带宽也会随着计算机和网卡的增加而成倍增长。 48题 除了缓存服务器自带的缓存失效策略之外(Redis默认的有6种策略可供选择),我们还可以根据具体的业务需求进行自定义的缓存淘汰,常见的策略有两种: 1.定时去清理过期的缓存; 2.当有用户请求过来时,再判断这个请求所用到的缓存是否过期,过期的话就去底层系统得到新数据并更新缓存。 两者各有优劣,第一种的缺点是维护大量缓存的key是比较麻烦的,第二种的缺点就是每次用户请求过来都要判断缓存失效,逻辑相对比较复杂!具体用哪种方案,可以根据应用场景来权衡。 47题 Redis提供了两种方式来作消息队列: 一个是使用生产者消费模式模式:会让一个或者多个客户端监听消息队列,一旦消息到达,消费者马上消费,谁先抢到算谁的,如果队列里没有消息,则消费者继续监听 。另一个就是发布订阅者模式:也是一个或多个客户端订阅消息频道,只要发布者发布消息,所有订阅者都能收到消息,订阅者都是平等的。 46题 Redis的数据结构列表(list)可以实现延时队列,可以通过队列和栈来实现。blpop/brpop来替换lpop/rpop,blpop/brpop阻塞读在队列没有数据的时候,会立即进入休眠状态,一旦数据到来,则立刻醒过来。Redis的有序集合(zset)可以用于实现延时队列,消息作为value,时间作为score。Zrem 命令用于移除有序集中的一个或多个成员,不存在的成员将被忽略。当 key 存在但不是有序集类型时,返回一个错误。 45题 1.热点数据缓存:因为Redis 访问速度块、支持的数据类型比较丰富。 2.限时业务:expire 命令设置 key 的生存时间,到时间后自动删除 key。 3.计数器:incrby 命令可以实现原子性的递增。 4.排行榜:借助 SortedSet 进行热点数据的排序。 5.分布式锁:利用 Redis 的 setnx 命令进行。 6.队列机制:有 list push 和 list pop 这样的命令。 44题 一致哈希 是一种特殊的哈希算法。在使用一致哈希算法后,哈希表槽位数(大小)的改变平均只需要对 K/n 个关键字重新映射,其中K是关键字的数量, n是槽位数量。然而在传统的哈希表中,添加或删除一个槽位的几乎需要对所有关键字进行重新映射。 43题 RDB的优点:适合做冷备份;读写服务影响小,reids可以保持高性能;重启和恢复redis进程,更加快速。RDB的缺点:宕机会丢失最近5分钟的数据;文件特别大时可能会暂停数毫秒,或者甚至数秒。 AOF的优点:每个一秒执行fsync操作,最多丢失1秒钟的数据;以append-only模式写入,没有任何磁盘寻址的开销;文件过大时,不会影响客户端读写;适合做灾难性的误删除的紧急恢复。AOF的缺点:AOF日志文件比RDB数据快照文件更大,支持写QPS比RDB支持的写QPS低;比RDB脆弱,容易有bug。 42题 对于Redis而言,命令的原子性指的是:一个操作的不可以再分,操作要么执行,要么不执行。Redis的操作之所以是原子性的,是因为Redis是单线程的。而在程序中执行多个Redis命令并非是原子性的,这也和普通数据库的表现是一样的,可以用incr或者使用Redis的事务,或者使用Redis+Lua的方式实现。对Redis来说,执行get、set以及eval等API,都是一个一个的任务,这些任务都会由Redis的线程去负责执行,任务要么执行成功,要么执行失败,这就是Redis的命令是原子性的原因。 41题 (1)twemproxy,使用方式简单(相对redis只需修改连接端口),对旧项目扩展的首选。(2)codis,目前用的最多的集群方案,基本和twemproxy一致的效果,但它支持在节点数改变情况下,旧节点数据可恢复到新hash节点。(3)redis cluster3.0自带的集群,特点在于他的分布式算法不是一致性hash,而是hash槽的概念,以及自身支持节点设置从节点。(4)在业务代码层实现,起几个毫无关联的redis实例,在代码层,对key进行hash计算,然后去对应的redis实例操作数据。这种方式对hash层代码要求比较高,考虑部分包括,节点失效后的代替算法方案,数据震荡后的自动脚本恢复,实例的监控,等等。 40题 (1) Master最好不要做任何持久化工作,如RDB内存快照和AOF日志文件 (2) 如果数据比较重要,某个Slave开启AOF备份数据,策略设置为每秒同步一次 (3) 为了主从复制的速度和连接的稳定性,Master和Slave最好在同一个局域网内 (4) 尽量避免在压力很大的主库上增加从库 (5) 主从复制不要用图状结构,用单向链表结构更为稳定,即:Master <- Slave1 <- Slave2 <- Slave3...这样的结构方便解决单点故障问题,实现Slave对Master的替换。如果Master挂了,可以立刻启用Slave1做Master,其他不变。 39题 比如订单管理,热数据:3个月内的订单数据,查询实时性较高;温数据:3个月 ~ 12个月前的订单数据,查询频率不高;冷数据:1年前的订单数据,几乎不会查询,只有偶尔的查询需求。热数据使用mysql进行存储,需要分库分表;温数据可以存储在ES中,利用搜索引擎的特性基本上也可以做到比较快的查询;冷数据可以存放到Hive中。从存储形式来说,一般情况冷数据存储在磁带、光盘,热数据一般存放在SSD中,存取速度快,而温数据可以存放在7200转的硬盘。 38题 当访问量剧增、服务出现问题(如响应时间慢或不响应)或非核心服务影响到核心流程的性能时,仍然需要保证服务还是可用的,即使是有损服务。系统可以根据一些关键数据进行自动降级,也可以配置开关实现人工降级。降级的最终目的是保证核心服务可用,即使是有损的。而且有些服务是无法降级的(如加入购物车、结算)。 37题 分层架构设计,有一条准则:站点层、服务层要做到无数据无状态,这样才能任意的加节点水平扩展,数据和状态尽量存储到后端的数据存储服务,例如数据库服务或者缓存服务。显然进程内缓存违背了这一原则。 36题 更新数据的时候,根据数据的唯一标识,将操作路由之后,发送到一个 jvm 内部队列中。读取数据的时候,如果发现数据不在缓存中,那么将重新读取数据+更新缓存的操作,根据唯一标识路由之后,也发送同一个 jvm 内部队列中。一个队列对应一个工作线程,每个工作线程串行拿到对应的操作,然后一条一条的执行。 35题 redis分布式锁加锁过程:通过setnx向特定的key写入一个随机值,并同时设置失效时间,写值成功既加锁成功;redis分布式锁解锁过程:匹配随机值,删除redis上的特点key数据,要保证获取数据、判断一致以及删除数据三个操作是原子的,为保证原子性一般使用lua脚本实现;在此基础上进一步优化的话,考虑使用心跳检测对锁的有效期进行续期,同时基于redis的发布订阅优雅的实现阻塞式加锁。 34题 volatile-lru:当内存不足以容纳写入数据时,从已设置过期时间的数据集中挑选最近最少使用的数据淘汰。 volatile-ttl:当内存不足以容纳写入数据时,从已设置过期时间的数据集中挑选将要过期的数据淘汰。 volatile-random:当内存不足以容纳写入数据时,从已设置过期时间的数据集中任意选择数据淘汰。 allkeys-lru:当内存不足以容纳写入数据时,从数据集中挑选最近最少使用的数据淘汰。 allkeys-random:当内存不足以容纳写入数据时,从数据集中任意选择数据淘汰。 noeviction:禁止驱逐数据,当内存使用达到阈值的时候,所有引起申请内存的命令会报错。 33题 定时过期:每个设置过期时间的key都需要创建一个定时器,到过期时间就会立即清除。该策略可以立即清除过期的数据,对内存很友好;但是会占用大量的CPU资源去处理过期的数据,从而影响缓存的响应时间和吞吐量。 惰性过期:只有当访问一个key时,才会判断该key是否已过期,过期则清除。该策略可以最大化地节省CPU资源,却对内存非常不友好。极端情况可能出现大量的过期key没有再次被访问,从而不会被清除,占用大量内存。 定期过期:每隔一定的时间,会扫描一定数量的数据库的expires字典中一定数量的key,并清除其中已过期的key。该策略是前两者的一个折中方案。通过调整定时扫描的时间间隔和每次扫描的限定耗时,可以在不同情况下使得CPU和内存资源达到最优的平衡效果。 32题 缓存击穿,一个存在的key,在缓存过期的一刻,同时有大量的请求,这些请求都会击穿到DB,造成瞬时DB请求量大、压力骤增。如何避免:在访问key之前,采用SETNX(set if not exists)来设置另一个短期key来锁住当前key的访问,访问结束再删除该短期key。 31题 缓存雪崩,是指在某一个时间段,缓存集中过期失效。大量的key设置了相同的过期时间,导致在缓存在同一时刻全部失效,造成瞬时DB请求量大、压力骤增,引起雪崩。而缓存服务器某个节点宕机或断网,对数据库服务器造成的压力是不可预知的,很有可能瞬间就把数据库压垮。如何避免:1.redis高可用,搭建redis集群。2.限流降级,在缓存失效后,通过加锁或者队列来控制读数据库写缓存的线程数量。3.数据预热,在即将发生大并发访问前手动触发加载缓存不同的key,设置不同的过期时间。 30题 缓存穿透,是指查询一个数据库一定不存在的数据。正常的使用缓存流程大致是,数据查询先进行缓存查询,如果key不存在或者key已经过期,再对数据库进行查询,并把查询到的对象,放进缓存。如果数据库查询对象为空,则不放进缓存。一些恶意的请求会故意查询不存在的 key,请求量很大,对数据库造成压力,甚至压垮数据库。 如何避免:1:对查询结果为空的情况也进行缓存,缓存时间设置短一点,或者该 key 对应的数据 insert 了之后清理缓存。2:对一定不存在的 key 进行过滤。可以把所有的可能存在的 key 放到一个大的 Bitmap 中,查询时通过该 bitmap 过滤。 29题 1.memcached 所有的值均是简单的字符串,redis 作为其替代者,支持更为丰富的数据类型。 2.redis 的速度比 memcached 快很多。 3.redis 可以持久化其数据。 4.Redis支持数据的备份,即master-slave模式的数据备份。 5.Redis采用VM机制。 6.value大小:redis最大可以达到1GB,而memcache只有1MB。 28题 Spring Boot 推荐使用 Java 配置而非 XML 配置,但是 Spring Boot 中也可以使用 XML 配置,通过spring提供的@ImportResource来加载xml配置。例如:@ImportResource({"classpath:some-context.xml","classpath:another-context.xml"}) 27题 Spring像一个大家族,有众多衍生产品例如Spring Boot,Spring Security等等,但他们的基础都是Spring的IOC和AOP,IOC提供了依赖注入的容器,而AOP解决了面向切面的编程,然后在此两者的基础上实现了其他衍生产品的高级功能。Spring MVC是基于Servlet的一个MVC框架,主要解决WEB开发的问题,因为 Spring的配置非常复杂,各种xml,properties处理起来比较繁琐。Spring Boot遵循约定优于配置,极大降低了Spring使用门槛,又有着Spring原本灵活强大的功能。总结:Spring MVC和Spring Boot都属于Spring,Spring MVC是基于Spring的一个MVC框架,而Spring Boot是基于Spring的一套快速开发整合包。 26题 YAML 是 "YAML Ain't a Markup Language"(YAML 不是一种标记语言)的递归缩写。YAML 的配置文件后缀为 .yml,是一种人类可读的数据序列化语言,可以简单表达清单、散列表,标量等数据形态。它通常用于配置文件,与属性文件相比,YAML文件就更加结构化,而且更少混淆。可以看出YAML具有分层配置数据。 25题 Spring Boot有3种热部署方式: 1.使用springloaded配置pom.xml文件,使用mvn spring-boot:run启动。 2.使用springloaded本地加载启动,配置jvm参数-javaagent:<jar包地址> -noverify。 3.使用devtools工具包,操作简单,但是每次需要重新部署。 用

游客ih62co2qqq5ww 2020-03-27 23:56:48 0 浏览量 回答数 0

问题

2020年热门编程语言的发展方向

珍宝珠 2020-02-17 17:58:58 3889 浏览量 回答数 3

问题

2.2.2.1浏览器

福利达人 2019-12-01 21:58:36 2466 浏览量 回答数 0

回答

批量增加计算节点。 描述 可以批量增加 1-99 个计算节点,在增加计算节点前,您可以: 调用 ListRegions 查询可用地域列表 调用 DescribeCluster 查询集群信息 请求参数 名称 类型 是否必需 默认值 描述 Action String 是 - 操作接口名,系统规定参数,取值:AddNodes。 RegionId String 是 - 地域 ID。 ClusterId String 是 - 集群 ID。 Count Integer 是 - 添加的计算节点数量,取值范围:1-99。 ComputeSpotStrategy String 否 - 计算节点竞价策略,取值NoSpot、SpotWithPriceLimit 或 SpotAsPriceGo。 ComputeSpotPriceLimit String 否 - 设置实例的每小时最高价格,取值是浮点数,取值范围是当前的价格区间。 ImageOwnerAlias String 否 system 镜像类型,system、self、others 或 marketplace ImageId String 否 - 镜像 Id, 如果 ImageType 是system, 就只根据 OsTag 来决定基础镜像 ID; 如果是self、others 或 marketplace, ImageId 就是必填的。 InstanceType String 否 - 扩容的实例规格,如果没有配置,就使用上次扩容或者创建集群时的计算节点实例规格。 EcsChargeType String 否 PostPaid 集群使用ECS实例的付费类型,PostPaid:按量付费,PrePaid:包年包月。若选择包年包月类型,默认开启自动续费,节点释放后将关闭自动续费。 Period Integer 否 - 购买资源的时长,单位为:月。当参数 EcsChargeType 取值为 PrePaid 时才生效且为必选值。 PeriodUnit String 否 - 购买资源的时长。可选值 Week/Month。 AutoRenew Boolean 否 false true:自动续费;false:不自动续费。 AutoRenewPeriod Integer 否 1 每次自动续费的时长,当参数 AutoRenew 取值 True 时生效。 CreateMode String 否 manual 节点是如何创建的,manual 手动扩容, autoscale 自动扩容 返回参数 公共返回参数 注: 由于AddNodes是异步操作,请求成功就会立即返回,不会等待实例创建,所以没有返回InstanceId,可以通过ListNodes查询节点列表来获取InstanceId 示例 请求示例 https://ehpc.cn-hangzhou.aliyuncs.com/?Action=AddNodes&RegionId=cn-hangzhou&ClusterId=<集群ID>&Count=1&<公共请求参数> 返回示例 XML格式 04F0F334-1335-436C-A1D7-6C044FE73368 JSON格式 { "RequestId": "04F0F334-1335-436C-A1D7-6C044FE73368", "InstanceIds": { "InstanceId": [] } } 错误码 查询 E-HPC 接口错误码请访问 错误码。更多错误码,请访问 API 错误中心。 批量删除计算节点。 描述 批量删除集群中的计算节点,请您确认已经导出节点上所有作业数据后再进行操作。在删除计算节点前,您可以: 调用 ListRegions 查询可用地域列表 调用 DescribeCluster 查询指定集群信息 请求参数 名称 类型 是否必需 默认值 描述 Action String 是 - 操作接口名,系统规定参数,取值:DeleteNodes。 RegionId String 是 - 地域 ID。 ClusterId String 是 - 集群 ID。 Instance.n.Id String 是 - 第 n 个(n 从 1 开始编号,可以有多条)要移除的节点实例 ID。 ReleaseInstance Boolean 否 true 是否释放由 E-HPC 创建的实例 返回参数 公共参数,了解更多请参阅 公共参数。 示例 请求示例 https://ehpc.cn-hangzhou.aliyuncs.com/?Action=DeleteNodes&RegionId=cn-hangzhou&ClusterId=<集群ID>&Instance.1.Id=<实例ID>&Instance.2.Id=<实例ID>&<公共请求参数> 返回示例 XML格式 04F0F334-1335-436C-A1D7-6C044FE73368 JSON格式 { "RequestId": "04F0F334-1335-436C-A1D7-6C044FE73368" } 错误码 查询 E-HPC 接口错误码请访问 错误码。更多错误码,请访问 API 错误中心。 查询集群中节点列表。 描述 查询用户集群中的节点列表,接口会返回所有节点信息。 请求参数 名称 类型 是否必需 默认值 描述 Action String 是 - 操作接口名,系统规定参数,取值:ListNodes。 RegionId String 是 - 地域 ID。 ClusterId String 是 - 集群 ID。 Role String 否 - 节点角色,可选项包括 Manager:管控节点,Login:跳板机,Compute:计算节点。 HostName String 否 - 节点名称,支持模糊查询, 支持 MySQL 的正则表达式。 OnlyDetached Boolean 否 false 是否仅查询不由 E-HPC 管理的节点信息。如果为true, 则仅返回不由 E-HPC 释放的节点(比如包月节点或者非 E-HPC 创建的节点)。 PageNumber Integer 否 1 显示的页码,起始值为 1。 PageSize Integer 否 10 每页显示的条数,1-50。 返回参数 除公共返回参数外返回如下结果: 名称 类型 描述 Nodes Array 节点信息数组。 TotalCount Integer 列表条目总数。 PageNumber Integer 当前页码。 PageSize Integer 本页条数。 其中,NodeInfo 结构包含以下字段: 名称 类型 描述 Id String 节点实例 ID。 RegionId String 地域 ID。 Status String 节点状态。 CreateByEhpc Boolean 是否由 E-HPC 创建,目前都是。 Role String 节点类别,Scheduler:主调度器,SchedulerBackup:备用调度器,Account:主域服务器,AccountBackup:备用域服务器,Login:跳板机,Compute:计算节点。调度器和域服务器都属于管控节点(Manager)。 Roles Array 否 TotalResources Struct 资源总量。 UsedResources Struct 计算节点资源使用量,其他类型节点返回值为空。 AddTime Date 加入集群时间。 SpotStrategy String 后付费实例的竞价策略。 LockReason String 节点被锁定类型,默认返回为空字符串。 ExpiredTime Date 包月节点到期时间。如果节点是按量节点,则此项为空。 Expired Boolean 包月节点是否到期。如果节点是按量节点,则为false。 ImageOwnerAlias String 镜像类型,system、self、others 或 marketplace。 ImageId String 镜像 ID。 Location String 节点所在位置,是本地节点 OnPremise 还是公共云上节点 PublicCloud 。 CreateMode String 节点是如何创建的,manual 手动扩容, autoscale 自动扩容 其中,计算节点资源 ResourceType 结构包含以下字段: 名称 类型 描述 Cpu Integer CPU资源总量,单位:核。 Memory Integer 内存资源总量,单位:GB。 Gpu Integer GPU资源总量,单位:卡。 节点状态 Status 的可能取值: 取值 描述 uninit 未初始化 init 初始化中 ready 空闲 running 运行中 exception 异常 示例 请求示例 https://ehpc.cn-hangzhou.aliyuncs.com/?Action=ListNodes&RegionId=cn-shanghai&ClusterId=<集群ID>&<公共请求参数> 返回示例 XML格式 04F0F334-1335-436C-A1D7-6C044FE73368 1 1 1 i-uf68t1zu3jkhs8wyxhil cn-shanghai running 2018-05-28T02:59:44.000Z false NoSpot system centos_7_02_64_20G_alibase_20170818.vhd public_cloud Compute 2 4096 0 0 0 0 JSON格式 { "RequestId": "04F0F334-1335-436C-A1D7-6C044FE73368" "TotalCount": 1, "PageNumber": 1, "PageSize": 1, "Nodes": { "NodeInfo" : [ { "Id": "i-uf68t1zu3jkhs8wyxhil", "RegionId": "cn-shanghai", "Status": "running", "AddTime": "2018-05-28T02:59:44.000Z", "Expired": false, "SpotStrategy": "NoSpot", "LockReason": "", "ImageOwnerAlias": "system", "ImageId": "centos_7_02_64_20G_alibase_20170818.vhd", "Location": "public_cloud", "TotalResources": { "Cpu": 2, "Memory": 4096, "Gpu": 0 }, "UsedResources": { "Cpu": 0, "Memory": 0, "Gpu": 0 } } ] } } 错误码 查询 E-HPC 接口错误码请访问 错误码。更多错误码,请访问 API 错误中心。 描述 不分页查询用户指定集群中的节点列表,接口会返回查询到的所有节点信息。 请求参数 名称 类型 是否必需 默认值 描述 Action String 是 - 操作接口名,系统规定参数,取值:ListNodesNoPaging。 RegionId String 是 - 地域 ID。 ClusterId String 是 - 集群 ID。 Role String 否 - 节点角色,可选项包括 Manager:管控节点,Login:跳板机,Compute:计算节点。 HostName String 否 - 节点名称,支持模糊查询, 支持MySQL的正则表达式。 OnlyDetached Boolean 否 false 是否仅查询不由 E-HPC 管理的节点信息。如果为true, 则仅返回不由 E-HPC 释放的节点(比如包月节点或者非 E-HPC 创建的节点)。 返回参数 除公共返回参数外返回如下结果: 名称 类型 描述 Nodes Array 节点信息数组。 其中,NodeInfo 结构包含以下字段: 名称 类型 描述 Id String 节点实例 ID。 RegionId String 地域 ID。 Status String 节点状态。 CreateByEhpc Boolean 是否由 E-HPC 创建,目前都是。 Role String 节点类别,Scheduler:主调度器,SchedulerBackup:备用调度器,Account:主域服务器,AccountBackup:备用域服务器,Login:跳板机,Compute:计算节点。调度器和域服务器都属于管控节点(Manager)。 Roles Array 节点角色类型数组 TotalResources Struct 资源总量。 UsedResources Struct 计算节点资源使用量,其他类型节点返回值为空。 AddTime Date 加入集群时间。 SpotStrategy String 后付费实例的竞价策略。 LockReason String 节点被锁定类型,默认返回为空字符串。 ExpiredTime Date 包月节点到期时间。如果节点是按量节点,则此项为空。 Expired Boolean 包月节点是否到期。如果节点是按量节点,则为false。 ImageOwnerAlias String 镜像类型,system、self、others 或 marketplace。 ImageId String 镜像 ID。 Location String 节点所在位置,是本地节点 OnPremise 还是公共云上节点 PublicCloud。 其中,计算节点资源 ResourceType 结构包含以下字段: 名称 类型 描述 Cpu Integer CPU资源总量,单位:核。 Memory Integer 内存资源总量,单位:GB。 Gpu Integer GPU资源总量,单位:卡。 节点状态 Status 的可能取值: 取值 描述 uninit 未初始化 init 初始化中 ready 空闲 running 运行中 exception 异常 示例 请求示例 https://ehpc.cn-hangzhou.aliyuncs.com/?Action=ListNodesNoPaging&RegionId=cn-shanghai&ClusterId=<集群ID>&<公共请求参数> 返回示例 XML格式 04F0F334-1335-436C-A1D7-6C044FE73368 i-uf68t1zu3jkhs8wyxhil cn-shanghai running 2018-05-28T02:59:44.000Z false NoSpot system centos_7_02_64_20G_alibase_20170818.vhd public_cloud Compute 2 4096 0 0 0 0 JSON格式 { "RequestId": "04F0F334-1335-436C-A1D7-6C044FE73368", "Nodes": { "NodeInfo" : [ { "Id": "i-uf68t1zu3jkhs8wyxhil", "RegionId": "cn-shanghai", "Status": "running", "AddTime": "2018-05-28T02:59:44.000Z", "Expired": false, "SpotStrategy": "NoSpot", "LockReason": "", "ImageOwnerAlias": "system", "ImageId": "centos_7_02_64_20G_alibase_20170818.vhd", "Location": "public_cloud", "TotalResources": { "Cpu": 2, "Memory": 4096, "Gpu": 0 }, "UsedResources": { "Cpu": 0, "Memory": 0, "Gpu": 0 } } ] } } 错误码 查询 E-HPC 接口错误码请访问 错误码。更多错误码,请访问 API 错误中心。 批量重置计算节点。 描述 批量重置集群中的计算节点,在重置计算节点前,您可以: 调用 ListRegions 查询可用地域列表 调用 DescribeCluster 查询指定集群信息 请求参数 名称 类型 是否必需 默认值 描述 Action String 是 - 操作接口名,系统规定参数,取值:ResetNodes。 RegionId String 是 - 地域 ID。 ClusterId String 是 - 集群 ID。 Instance.n.Id String 是 - 第 n 个(n 从 1 开始编号,可以有多条)要重置的节点实例 ID。 返回参数 公共参数,了解更多请参阅 公共参数。 示例 请求示例 https://ehpc.cn-hangzhou.aliyuncs.com/?Action=ResetNodes&RegionId=cn-hangzhou&ClusterId=<集群ID>&Instance.1.Id=<实例ID>&Instance.2.Id=<实例ID>&<公共请求参数> 返回示例 XML格式 04F0F334-1335-436C-A1D7-6C044FE73368 JSON格式 { "RequestId": "04F0F334-1335-436C-A1D7-6C044FE73368" } 错误码 查询 E-HPC 接口错误码请访问 错误码。更多错误码,请访问 API 错误中心。 启动集群中节点列表。 描述 在停止集群中节点实例(StopNodes)后,可以批量启动集群中节点实例。 请求参数 名称 类型 是否必需 默认值 描述 Action String 是 - 操作接口名,系统规定参数,取值:StartNodes。 RegionId String 是 - 地域 ID。 ClusterId String 是 - 集群 ID。 Instance.n.Id String 是 - 第 n 个(n 从 1 开始编号,可以有多条)要移除的节点实例 ID。 Role String 否 Compute 节点角色,可选项包括 Manager:管控节点,Login:跳板机,Compute:计算节点。 返回参数 公共参数,了解更多请参阅 公共参数。 示例 请求示例 https://ehpc.cn-hangzhou.aliyuncs.com/?Action=StartNodes&RegionId=cn-hangzhou&ClusterId=<集群ID>&Instance.1.Id=<实例ID>&Instance.2.Id=<实例ID>&<公共请求参数> 返回示例 XML格式 04F0F334-1335-436C-A1D7-6C044FE73368 JSON格式 { "RequestId": "04F0F334-1335-436C-A1D7-6C044FE73368" } 错误码 查询 E-HPC 接口错误码请访问 错误码。更多错误码,请访问 API 错误中心。 停止集群中节点列表。 描述 批量停止集群中节点实例,在停止节点实例后,可以使用 StartNodes 接口来重新启动节点实例。 请求参数 名称 类型 是否必需 默认值 描述 Action String 是 - 操作接口名,系统规定参数,取值:StopNodes。 RegionId String 是 - 地域 ID。 ClusterId String 是 - 集群 ID。 Instance.n.Id String 是 - 第 n 个(n 从 1 开始编号,可以有多条)要移除的节点实例 ID。 Role String 否 Compute 节点角色,可选项包括 Manager:管控节点,Login:跳板机,Compute:计算节点。 返回参数 公共参数,了解更多请参阅 公共参数。 示例 请求示例 https://ehpc.cn-hangzhou.aliyuncs.com/?Action=StopNodes&RegionId=cn-hangzhou&ClusterId=<集群ID>&Instance.1.Id=<实例ID>&Instance.2.Id=<实例ID>&<公共请求参数> 返回示例 XML格式 04F0F334-1335-436C-A1D7-6C044FE73368 JSON格式 { "RequestId": "04F0F334-1335-436C-A1D7-6C044FE73368" } 错误码 查询 E-HPC 接口错误码请访问 错误码。更多错误码,请访问 API 错误中心。 按队列查询节点信息。 描述 按队列分组查询用户账户下单个集群的节点信息。 请求参数 名称 类型 是否必需 默认值 描述 Action String 是 - 操作接口名,系统规定参数,取值:ListNodesByQueue。 ClusterId String 是 - 集群ID。 RegionId String 是 - 地域 ID。 QueueName String 是 - 队列名。 PageNumber int 否 1 显示的页码,起始值为 1。 PageSize int 否 10 每页显示的条数,1-50。 返回参数 除公共返回参数外返回如下结果: 名称 类型 描述 Nodes Array 节点信息数组。 TotalCount Integer 列表条目总数。 PageNumber Integer 当前页码。 PageSize Integer 本页条数。 其中,NodeInfo 结构包含以下字段: 名称 类型 描述 AddTime Date 加入集群时间。 CreateMode String 节点是如何创建的,manual 手动扩容, autoscale 自动扩容 HostName String 主机名称。 Id String 节点实例 ID。 ImageId String 镜像 ID。 ImageOwnerAlias String 镜像类型,system、self、others 或 marketplace。 InstanceInfo String 实例详细信息。 IpInfo String IP详细信息。其中包含:PrivateIpAddress和PublicIpAddress两种。 Location String 节点所在位置,是本地节点 OnPremise 还是公共云上节点 PublicCloud 。 LockReason String 节点被锁定类型,默认返回为空字符串。 SpotStrategy String 后付费实例的竞价策略。 Status String 节点状态。 TotalResources Struct 资源总量。 UsedResources Struct 计算节点资源使用量,其他类型节点返回值为空。 VSwitchId String 虚拟交换机ID。 VpcId String 专有网络ID。 ZoneId String 实例可用区ID。 其中,计算节点资源 ResourceType 结构包含以下字段: 名称 类型 描述 Cpu Integer CPU资源总量,单位:核。 Memory Integer 内存资源总量,单位:GB。 Gpu Integer GPU资源总量,单位:卡。 节点状态 Status 的可能取值: 取值 描述 Uninit 未初始化 Init 初始化中 Ready 空闲 Running 运行中 Exception 异常 示例 请求示例 https://ehpc.cn-hangzhou.aliyuncs.com/?Action=ListNodesByQueue&RegionId=cn-hangzhou&ClusterId=<集群ID>&QueueName=workq&<公共请求参数> 返回示例 XML格式 1 3 50 5457B047-AC0A-4C75-B212-59759E38810F m-bpcccccccccccccccekw4cd 170.6.1.208 2 16384 m-bpcccccccccccccccccccc2ekw4cd cn-hangzhou-g true adb22432-ccccccccccccccccccccc219f784bfc7 2 16384 true sg-bp1ecccccccccoi6dtz linux CentOS 7.2 64位 vpc compute0 2019-04-22T11:53Z none cn-hangzhou false 2099-12-31T15:59Z ecs.r5 i-bpccccccccc9v788g 00:16:3e:11:8e:dd 172.16.1.208 eni-bp1ccccccccccccccueuoggzn5 0 PayByTraffic NoSpot Not-applicable 0 172.16.1.208 vsw-bp16ccccccccced144r vpc-bp1ccccccccq4txlicvt 0 2019-04-22T14:29Z ehpc-hz-5ccccc28c_compute0 CentOS 7.2 64 bit ecs.r5.large Running false PostPaid 0 public_cloud cn-hangzhou-g self vsw-bpccccccz6ted144r compute0 NoSpot manual vpc-bcccccccccubaq4txlicvt 0 0 running i-bp1ccccccv6e9v788g 2019-04-22T11:53:01.000Z JSON格式 { "PageNumber": 1, "TotalCount": 3, "PageSize": 50, "RequestId": "5457B047-AC0A-4C75-B212-59759E38810F", "Nodes": { "NodeInfo": [ { "ImageId": "m-bpcccccccccccccccekw4cd", "IpInfo": { "PrivateIpAddress": { "IpAddress": [ "100.16.1.208" ] }, "PublicIpAddress": { "IpAddress": [ "" ] } }, "TotalResources": { "Cpu": 2, "Memory": 16384 }, "InstanceInfo": { "ImageId": "m-bpcccccccccccccccccccc2ekw4cd", "VlanId": "", "EipAddress": { "IpAddress": "", "AllocationId": "", "InternetChargeType": "" }, "ZoneId": "cn-hangzhou-g", "IoOptimized": true, "SerialNumber": "adb22432-ccccccccccccccccccccc219f784bfc7", "Cpu": 2, "Memory": 16384, "DeviceAvailable": true, "SecurityGroupIds": { "SecurityGroupId": [ "sg-bp1ecccccccccoi6dtz" ] }, "SaleCycle": "", "AutoReleaseTime": "", "ResourceGroupId": "", "OSType": "linux", "OSName": "CentOS 7.2 64位", "InstanceNetworkType": "vpc", "HostName": "compute0", "CreationTime": "2019-04-22T11:53Z", "EcsCapacityReservationAttr": { "CapacityReservationPreference": "none", "CapacityReservationId": "" }, "RegionId": "cn-hangzhou", "DeletionProtection": false, "OperationLocks": { "LockReason": [] }, "ExpiredTime": "2099-12-31T15:59Z", "InnerIpAddress": { "IpAddress": [] }, "InstanceTypeFamily": "ecs.r5", "InstanceId": "i-bpccccccccc9v788g", "NetworkInterfaces": { "NetworkInterface": [ { "MacAddress": "00:16:3e:11:8e:dd", "PrimaryIpAddress": "172.16.1.208", "NetworkInterfaceId": "eni-bp1ccccccccccccccueuoggzn5" } ] }, "InternetMaxBandwidthIn": 0, "CreditSpecification": "", "InternetChargeType": "PayByTraffic", "SpotStrategy": "NoSpot", "StoppedMode": "Not-applicable", "InternetMaxBandwidthOut": 0, "VpcAttributes": { "NatIpAddress": "", "PrivateIpAddress": { "IpAddress": [ "172.16.1.208" ] }, "VSwitchId": "vsw-bp16ccccccccced144r", "VpcId": "vpc-bp1ccccccccq4txlicvt" }, "SpotPriceLimit": 0, "StartTime": "2019-04-22T14:29Z", "InstanceName": "ehpc-hz-5ccccc28c_compute0", "Description": "", "OSNameEn": "CentOS 7.2 64 bit", "PublicIpAddress": { "IpAddress": [] }, "InstanceType": "ecs.r5.large", "Status": "Running", "Recyclable": false, "ClusterId": "", "GPUSpec": "", "InstanceChargeType": "PostPaid", "GPUAmount": 0, "DedicatedHostAttribute": { "DedicatedHostId": "", "DedicatedHostName": "" }, "DeploymentSetId": "" }, "Location": "public_cloud", "ZoneId": "cn-hangzhou-g", "ImageOwnerAlias": "self", "VSwitchId": "vsw-bpccccccz6ted144r", "HostName": "compute0", "SpotStrategy": "NoSpot", "CreateMode": "manual", "VpcId": "vpc-bcccccccccubaq4txlicvt", "UsedResources": { "Cpu": 0, "Memory": 0 }, "Status": "running", "Id": "i-bp1ccccccv6e9v788g", "LockReason": "", "AddTime": "2019-04-22T11:53:01.000Z" }, ] } } 错误码 查询 E-HPC 接口错误码请访问 错误码。更多错误码,请访问 API 错误中心。 更新队列配置信息。 描述 为集群中的队列更新资源组和计算节点实例的信息。 请求参数 字段 类型 是否必须 默认值 描述 Action String 是 - 操作接口名,系统规定参数,取值:UpdateQueueConfig ClusterId String 是 - 集群ID RegionId String 是 - 地域ID QueueName String 是 - 任务队列名 ResourceGroupId String 是 - 资源组ID ComputeInstanceType String 否 - 计算节点实例类型 返回参数 返回公共返回参数。 示例 请求示例 https://ehpc.cn-hangzhou.aliyuncs.com/?Action=UpdateQueueConfig&RegionId=cn-hangzhou&ClusterId=<集群ID>&QueueName=workq&ResourceGroupId=<资源组ID>&<公共请求参数> 返回示例 XML格式 5198C3E8-85F5-4280-8547-687C1710FE08 JSON格式 { "requestId": "5198C3E8-85F5-4280-8547-687C1710FE08", } 错误码 查询E-HPC接口错误码请访问 错误码。更多错误码,请访问 API 错误中心。

1934890530796658 2020-03-23 18:25:01 0 浏览量 回答数 0
阿里云大学 云服务器ECS com域名 网站域名whois查询 开发者平台 小程序定制 小程序开发 国内短信套餐包 开发者技术与产品 云数据库 图像识别 开发者问答 阿里云建站 阿里云备案 云市场 万网 阿里云帮助文档 免费套餐 开发者工具 企业信息查询 小程序开发制作 视频内容分析 企业网站制作 视频集锦 代理记账服务 企业建站模板