• [技术干货] GaussDB(DWS)性能调优系列之CBO模型------转载
    数据库执行SQL语句的时候,会把执行拆分为若干步骤,如下SQL select * from t1 join t2 on t1.a=t2.b where t1.b = 2 and t2.a = 3; 在具体执行的时候会拆分为表扫描和表关联两个主要查询动作。这两个查询动作都存在多种执行方式,比如表扫描均存在SeqScan、IndexScan、IndexOnlyScan、BitmapScan等多种执行方式、表关联存在NestLoop、HashJoin、MergeJoin三种执行方式,那么在具体的业务场景下什么样的查询动作才是代价最小的执行方式,这就是优化器的核心工作。 CBO主要工作原理是通过代价模型(Cost Model)和统计信息估算每种执行方式的代价,然后选择一种执行代价最优的执行方式。这里面代价模型是核心算法逻辑,统计信息是cost计算的数据源,二者配合完成cost计算;如果统计信息缺失,计算时代价模型会使用默认值来计算cost,当然这时cost会跟真实值存在较大偏差,大概率会出现选择非最优执行计划的情况,因此统计信息是CBO模型中 cost计算的数据输入,是CBO最核心的科技之一。
  • [技术干货] GaussDB(DWS)性能调优系列之query执行流程------转载
    词法&语法解析按照约定的SQL语句规则,把输入的SQL语句从字符串转化为格式化结构(Stmt),如果SQL语句存在语法错误,都会在这个环节报错。语义解析语义解析类似一个翻译器,把外部输入的可视化的对象翻译为数据库内部可识别的对象(比如把Stmt中以字符串记录的表名称转化为数据库内部可识别的oid),如果语句存在语义错误(比如查询的表对象不存在),数据库会在这个环节报错。  查询重写根据规则将“语义解析”的输出等价转化为执行上更为优化的结构,比如把查询语句中的视图逐层展开至最低层的表查询。查询优化数据库确认SQL执行方式、生成执行计划的过程查询执行根据执行计划执行SQL并输出结果的过程 整个执行流程中,优化器决定了查询语句的具体执行方式,对SQL语句的性能起着关键性的作用。数据库查询优化器分为两类:基于规则的优化器(Rule-Based Optimizer,RBO) 和基于代价的优化器(Cost-Based Optimizer,CBO)。RBO是一种基于规则的优化,对于指定的场景采用指定的执行方式,这种优化模型对数据不敏感;SQL的写法往往会影响执行计划,不了解RBO的细则的人员开发的SQL性能不可控,因此RBO逐渐被抛弃,目前GaussDB等数据库厂商的优化器都是CBO模型。CBO模型是根据SQL语句生成一组可能被使用的执行计划,并估算出每种执行计划的代价,最终选择选择一个代价最小的执行方式。
  • [技术干货] GaussDB(DWS)之EXPLAIN用法介绍
    SQL执行计划是一个节点数,显示执一条SQL语句执行时的详细步骤。每一个步骤是一个数据库运算符,也叫作一个执行算子。使用explain命令可以查看优化器为每个查询生成的具体执行计划。EXPLAIN的语法其中,option中COSTS与NODES的默认值为ON,其他参数默认为OFF。    说明:EXPLAIN + QUERY并不会真正执行,只会将计划打印出来,指定option中的ANALYZE可以进行实际执行PERFORMANCE 选项默认会将所有的选项置为ON,即显示所有的执行信息。CPU/BUFFER/DETAIL 选项依赖于ANALYZE,只有ANALYZE置为ON的时候,才能使用这几个选项。DETAIL选项用来控制输出,DETAIL 置为ON时,会显示各个DN上具体的执行信息;DATAIL 置为OFF时,显示所有DN的汇总信息,即最大最小值信息。EXPLAIN显示格式GaussDB中提供了两种显示格式(normal/pretty),通过设置参数explain_perf_mode进行控制。其中,normal格式为默认的显示格式。normal格式如下:pretty格式如下:改进后的显示格式,层次清晰,计划包含了plan node id,性能分析会更加简单直接。使用之前可以使用show explain_perf_mode;来查看当前数据库使用的显示风格。同时可以使用set explain_perf_mode=pretty/normal;来设置输出的格式。转载:https://mp.weixin.qq.com/s/UU04YBWVsBkEK_Smfdn6Qg
  • [技术干货] GaussDB(DWS)执行算子介绍------转载
    执行计划(又称解释计划)是数据库执行SQL语句的具体步骤,例如通过索引还是全表扫描访问表中的数据,连接查询的实现方式和连接的顺序等。如果 SQL 语句性能不够理想,我们首先应该查看它的执行计划。本文主要介绍如何如何详细解读GaussDB(DWS)产生的分布式执行计划,从计划中发现性能调优点。1、执行算子介绍下面重点介绍下基于sharing nothing的分布式计划中最重要的一类算子——STREAM算子1、  三种类型的stream算子Gather Stream (N:1) – 每个源结点都将其数据发送给目标结点        Redistribute Stream (N:N) – 每个源节点将其数据根据连接条件计算Hash值,根据重新计算的Hash值进行分布,发给对应的目标节点        Broadcast Stream (1:N) – 由一个源节点将其数据发给N个目标节点        其中1)主要用于CN与DN间的数据交换,2)与3)主要用于DN间的数据交换
  • [技术干货] GaussDB(DWS)性能调优系列实战篇之十八般武艺------转载
    整体调优思路通过前面对SQL语句执行流程的介绍,我们可以知道,性能瓶颈可能发生在CN端、DN端,以及结果集返回,驱动数据处理等环节,性能调优的第一步就是定位瓶颈点主要发生在哪个环节。由于GaussDB DWS大数据量处理时,大部分执行时间消耗在DN端,故本博文主要针对DN端语句执行进行总体调优思路的分享。谈到执行性能,其实从数据模型建模、集群部署、表结构设计,到最终的SQL语句优化,都与之紧密相关,如上图所示,我们使用金字塔来描述整个调优过程。越接近塔尖,其对于整个业务性的影响范围越广,需要调优时,调优成本也越高,所以在设计之初需要投入足够精力,从上至下,我们需要全面的设计,才能减少在最终SQL调优时返工的可能。整个调优过程其实是一个不断迭代的过程,如上图所示。即使设计再严密,也有可能出现SQL语句性能的优化需要导致数据建模更改、集群部署、表分布键调整的情况,这时一发动全身将引起较高的成本,同时会对其它已经调优完毕的SQL产生影响,导致重新调优,成本较高。我们统一将前三阶段归结为静态调优,将SQL语句级调优归结为执行态调优。下面重点来探讨执行态调优-SQL语句调优,从调优步骤来看可以分为性能瓶颈诊断、性能原因分析和调优项实施,从调优实施对象来看,可能包括前面提到的数据建模、集群部署、表结构设计方面的修改,SQL语句层调优可以分为系统级调优和语句级调优。当然,有一些调优项,例如系统调优项,可以作为经验固化下来,在集群部署的时候就一并设置好,减少这方面调优花费的成本。同时,SQL调优也是一个迭代的过程,在实施一次调优项后,需要继续重新进行调优分析,直至性能达到标准为止。后面的章节,将围绕调优步骤和SQL层的调优项来开展。性能瓶颈诊断 GaussDB DWS提供了丰富的计划信息显示工具Explain,以及动态执行信息分析工具Top SQL。 Explain工具主要针对单个语句进行展示,可以使用explain命令显示CN生成的SQL语句的计划,也可以使用explain analyze/performance命令显示执行态信息。通过执行态信息,我们可以分析出算子为单位的性能,也可以分析出算子内部各步骤的性能,进一步为诊断性能的瓶颈打下了基础。Explain工具相关内容请参考博文《GaussDB(DWS)性能调优系列基础篇二:大道至简explain计划信息》。 Top SQL工具则针对集群中运行的语句进行整体性能分析,其包含12个视图,可以将执行时间超过一定设置阈值的语句的执行状态、执行结果进行实时查询,同时可以设置将其转储用作后续分析。附加于该工具之上的SQL自诊断调优工具,则通过瓶颈点的分析,给出可能的性能原因分析。同时,我们还提供Unique SQL工具,进行一类SQL的性能持续跟踪,可以用于发现系统资源及硬件问题对SQL性能产生的影响。性能原因分析属于性能调优里的高阶知识了,通常要对数据库的执行实现原理有基本了解才能够逐步深入下去。本章节将深入浅出地介绍数据库执行实现原理的基本技术,帮助各位读者朋友能够有兴趣去主动查找性能产生的原因,从而自己找到性能调优的方法。 前面已经对GaussDB DWS的执行流程进行了介绍,由CN生成执行计划下发到DN去执行。GaussDB DWS是基于代价来生成计划的,因此需要依据基表的统计信息,进行每一步结果集统计信息的估算,根据数据规模的场景从GaussDB DWS支持的备选算子中选择最优的算子组合成计划进行执行。因此,统计信息是计划准确的前提,在执行SQL语句前要确保收集最新的统计信息,有关统计信息的收集可以参见博文《GaussDB(DWS)性能调优系列基础篇一:万物之始analyze统计信息》。 由于统计信息只包含基表的统计信息,表关联之后的统计信息只能通过估算得到,因此仍然可能存在估算不准的情况。GaussDB DWS针对不同的SQL语句中的操作,为每个操作内部实现了不同的算子。每个算子可能在部分场景下是占优的,但其它场景比较差。SQL优化时,根据具体的场景去自动匹配最优的算子。如果存在估算不准,将导致算子选择出现失误,从而计划较差,此时就需要根据计划的瓶颈来分析具体的原因了。转载:https://mp.weixin.qq.com/s/LhpNOoKjOrf7PrGeJ6tMcw
  • [技术干货] GaussDB(DWS)性能调优系列实战篇------转载
    本篇博文作为《GaussDB(DWS)性能调优系列》的专题文章,主要介绍数据库级别的性能调优思路和总体策略,包括系统级和语句级调优。同时,《GaussDB(DWS)性能调优系列》文章分为基础篇和实战篇,各位读者在通过基础篇文章了解数据库的基本原理后,可以结合调优思路,对实战篇的各个调优技巧进行深入的学习。有关整个调优过程中的其它方面,后续论坛会推出其它博文进行介绍。GaussDB DWS是典型的share-nothing架构,其计算组件的示意图如上图所示,主要由CN(Coordinator)和DN(DataNode)组成。CN是整个集群的协调者,是整个集群与应用进行连接处理的门户,用于接收客户的SQL语句并返回执行结果。DN是集群进行数据计算的主体,各个DN拥有独立的存储和计算资源,使得各个DN可以独立地进行计算。GaussDB DWS支持多CN架构,通常应用程序会通过LVS(负载均衡设备)将语句均匀分发到各个CN上,以减少单个CN的瓶颈作用。GaussDB DWS的SQL处理流程如上方右图所示,其包含以下几个主要步骤:(1)CN通过驱动或客户端接收到一条SQL后,会进行解析、优化,并最终返回执行结果;(2)CN进行优化后,生成相应的执行计划;(3)CN将相同的执行计划下发到各个DN进行执行;(4)如果DN之间需要进行数据交换,则执行计划中包含流操作算子Stream,DN之间同步通过Stream算子进行数据交换,共同完成计划的执行并向CN返回结果。同时,GaussDB DWS对于不需要DN间数据交换的语句,还支持语句下发到DN生成计划;对于部分不支持分布式查询的语句,生成不能下推的计划(此计划对于大数据量性能较差)。转载:https://mp.weixin.qq.com/s/LhpNOoKjOrf7PrGeJ6tMcw
  • [技术干货] GaussDB(DWS)性能调优------转载
    性能调优是应用迁移或开发过程中的关键步骤,同时也在整个项目实施过程中占据很大的份量,在很多实施步骤中都需要进行考虑,从开始的数据建模,表定义的设计,到数据库硬件、集群部署的选择,再到数据库系统级调优、数据表结构设计,以及单个SQL语句的编写及调优,都要考虑对性能的影响。同时,性能调优通常没有明确的衡量标准,没有明确的对错之分,通常需要的隐式技能比较多,使得其的技术含金量得以提升。通常来看,要做到一个性能调优的高手,除了对于应用程序的逻辑做到游刃有余外,还需要对应用的数据库的基本实现原理有所了解,更甚者,还需要对操作系统、网络等基础知识有所涉猎,同时还要具备性能诊断和分析技巧。当然,性能调优是一个不断积累的过程,大家不用考虑一步到位,唯有进行实践的积累,才能在广阔的调优战场所向披靡。转载:https://mp.weixin.qq.com/s/LhpNOoKjOrf7PrGeJ6tMcw
  • [技术干货] GaussDB处理的操作类型------转载
             通常情况下,GaussDB处理的操作类型主要分为:扫描算子(Scan)、关联算子(Join)、聚集算子(Agg)和网络传输算子(Stream)。下表列出了各算子类别的使用场景,以及各类别中可选的算子,及其适用范围,同时列出调优场景,供大家参考。(1)扫描算子(Scan):主要用于处理从存储扫描数据,返回上层算子,包括:全表扫描算子、索引扫描算子,其中行列存均对应不同的全套扫描算子,索引扫描包括:IndexScan(普通索引扫描)、IndexOnlyScan(仅扫描索引即可获得结果)、BitmapScan(需要索引扫描获取位图后再到基表上扫描),BitmapScanAnd/Or(从多个索引扫描进行位图运算后再到基表上扫描),由于索引扫描的原理基本都相同,故一并探讨。全表扫描算子索引扫描算子执行方式顺序扫描数据页面,依次匹配元组并返回列存由于按列以CU为单位存储,且按列压缩比较高,则IO比行存优势明显,且每个CU包含当前列min/max信息,可以根据查询条件快速过滤整个CU利用索引结构快速检索到符合条件的元组,扫描数据页面返回列存由于压缩比较高,在扫描数据页面返回元组时由额外的解压缩操作,因此点查索引扫描性能较行存要差限制无通常情况下存在过滤条件,且存在以过滤条件中的列为前缀的索引优势当返回元组数较多,所需扫描页面较多且连续时适用列存在可以快速过滤掉较多CU时适用返回元组较少时只需要访问较少页面即可获得结果适合使用的情况当选择率(符合条件的元组与总行数的比例)较大时当选择率较低时需要调优的场景(1)选择的元组数较少时(2)列存未有效过滤掉大多数CU,通常由于CU的min/max范围较大,CU中的列数据有效性较差导致选择的元组数较多时(2)关联算子(Join):主要用于处理表的关联操作。在数据库中,多表关联时,SQL优化会选择关联顺序进行两两关联。表关联时可以包含关联操作,也可以没有关联操作(笛卡尔积)。在GaussDB DWS中,主要包含NestLoop, HashJoin, MergeJoin三种关联算子。NestLoopHashJoinMergeJoin执行方式对于外表每一行,嵌套扫描内表返回结果。内表根据Join列散列在内存中建立hash表,外表使用Join列hash值仅匹配相应hash桶内外表均排序后,进行排序后的归并连接操作限制无连接两端必须为类型相同的等值连接,且列类型支持hash散列操作(1)等值连接(2)内外表有序(否则需要排序)优势适用范围广;当内表使用索引时,可以快速定位连接元组通过哈希散列,一次性定位连接元组通过归并连接,一次性定位连接元组劣势每个外表元组均需要重新执行内表算子操作内表在内存放不下可能导致下盘,列重复值太多会导致hash冲突严重内外表需要有序,因此必须承受内外表Indexscan或Sort的代价适合使用的情况(1)外表结果集小(2)内表算子操作代价小内表可在内存里放下,列重复值和倾斜值不要太多内外表已经有序,不需要重新排序需要调优的场景(1)外表行数较多的场景(2)每次迭代访问内表行数较多的场景(1)内表太大,消耗内存严重或下盘(2)Join列倾斜,哈希冲突严重内外表行数较多,导致排序耗费较长时间(3)聚集算子(Agg):HashaggSort+GroupAgg执行方式每行元组根据聚集列散列建立hash表,进行去重比较所有元组排序后进行聚集去重操作限制所有聚集列支持hash散列所有聚集列支持排序优势通过哈希散列比较可以快速定位到重复元组输出结果保持有序,有利于后续有序操作劣势受初始散列桶个数影响较大如果初始集较大,Sort性能较差适合使用的情况去重后行数较少的场景相比Hashagg,当去重后行数和输入行数差不多,且输入行数较少时适用需要调优的场景去重后行数估算不准的场景(需要依据此建立hash表)行数较多的场景(4)网络传输算子(Stream):RedistributeBroadcast执行方式根据待重分布列的hash值决定一个目的DN,将元组通过网络发送到该DN将元组广播到所有DN的操作限制待分布列支持hash散列操作无优势每条元组仅传输到某个节点,网络开销小无网络及后续操作数据倾斜劣势当待重分布列数据重复值较多时,有可能倾斜每条元组传输到所有DN,网络开销较大适合使用的情况分布列均匀分布的情况待广播的数据量较小需要调优的场景分布键存在倾斜/调整分布方式避免重分布广播的数据量较大(5)其它算子:同时GaussDB DWS还支持排序(Sort)、集合(SetOp)、物化(Materialize)、窗口聚集(WindowAgg)和输出限制(Limit)算子,由于调优基本不涉及,故此处略过。
  • [生态对接] carbon数据库如何实时抽取数据
      最近遇到个问题,数据上游推送到carbon的数据是实时的,大概5分钟一批。但是carbon数据库不知道怎么才能利用检测工具实时抽取数据到kafka中。有大佬帮忙给个建议吗?
  • [生态对接] spark --jars提交依赖冲突,有没有办法忽略集群中的依赖。只使用fat-jar和--jar提供的
         我最近开发了一个maven项目,想使用spark读取/写入greenplum的数据,但是由于jdbc的传输速度限制。所以想采用greenplum-spark connect这个连接器。当我使用--jars将项目和这个依赖包一起提交上去的时候出现了jar包冲突 报错:classnotfound。  同时自己搭建了一套开源集群,相同的步骤 spark读取/写入greenplum 并且也使用这个连接器--jars提供第三方依赖包,正常读取数据。    所以我想有没有办法忽略集群中的依赖。只使用fat-jar和--jar提供的      
  • [生态对接] 使用greenplum-spark connect连接器遇到的坑
       我最近开发了一个maven项目,想使用spark读取/写入greenplum的数据,但是由于jdbc的传输速度限制。所以想采用greenplum-spark connect这个连接器。当我使用--jars将项目和这个依赖包一起提交上去的时候出现了jar包冲突 报错:classnotfound。所以我又尝试使用jarjar.jar修改相应的包名    但是现在又出现了新的问题,代码中的postgresql依赖找不到对应的class类名报错。   既然外部没办法搞定就从内部项目入手 ……  由于这个依赖属于第三方并不是maven仓库官方提供所以没法加载进入项目中。我尝试加入私有仓库然后再放入我的本地项目中使用maven-shade-plugin将类名包名重定向。不知道是不是第三方依赖的原因,只要提交到cluster上后就会显示找不到类,相当于没有加上这个greenplum-spark依赖。请各位大佬看看是什么原因。 我这边在本地用idea或者Local模式提交都是可以成功的
  • [课程学习] 浅谈数据库:不同的shell操作
    创建HBase表:Createscan  'cx_table_stu01',{COLUMNS=>'cf1:name'}alter 'cx_table_stu01',{NAME=>'cf1','VERSIONS'=>5}有条件查询操作:Scan  'cx_table_stu01',{FILTER=>"ColumnPrefixFilter('name')       AND ValueFilter(=,'binary:hanmeimei')"}Hive表Join操作:select e.* from cx_table_employee e LEFT SEMI JOIN cx_table_salary s on e.user_id=s.userid;select e1.user_id,e1.username,s.salarys from (select e.* from cx_table_employee e where e.user_id < 8) e1 left outer join cx_table_salary s on e1.user_id = s.userid;Spark数据库实战:压平数据库:val rdd1 = sc.parallelize(Array("a b c", "d e f", "h i j"))//将rdd1里面的每一个元素先切分在压平val rdd2 = rdd1.flatMap(_.split(" "))MapReduce初次实战:val rdd1 = sc.parallelize(List(("tom", 1), ("jerry", 3), ("kitty", 2),  ("shuke", 1)))val rdd2 = sc.parallelize(List(("jerry", 2), ("tom", 3), ("shuke", 2), ("kitty", 5)))val rdd3 = rdd1.union(rdd2)//按key进行聚合val rdd4 = rdd3.reduceByKey(_ + _)rdd4.collect//按value的降序排序val rdd5 = rdd4.map(t => (t._2, t._1)).sortByKey(false).map(t => (t._2, t._1))rdd5.collect创建sparkContext实例:读取文件:val lineRDD= sc.textFile("/user/stu01/cx_person.txt").map(_.split(" "))创建Class:case class Person(id:Int, name:String, age:Int)关联RDD和Class:val personRDD = lineRDD.map(x => Person(x(0).toInt, x(1), x(2).toInt))转换为DF:val personDF = personRDD.toDF创建注册表形式:personDF.registerTempTable("cx_t_person")Dataset编程:使用dataset读取表内容:val ds2 = spark.createDataset(sc.textFile("/user/stu01/cx_person.txt"))使用toDS将其转化为第DataSet:case class Person2(id:Int, name:String, age:Int)val data = List(Person2(1001,"liubei",20),Person2(1002,"guanyu",30))val ds3 = data.toDSds3.show查询数据也有不同的方法:例如使用DF风格的内容:personDF.select(personDF("id"), personDF("name"), personDF("age") + 1).showpersonDF.filter(col("age") >= 25).showClickhouse实践:解压Clinckhouse:tar -xvf FusionInsight_Cluster_1_Services_ClientConfig.tarclickhouse client --host 122.9.69.102 --user default --port 9000创建表:create table if not exists test.t1(id UInt16,name String) ENGINE = Memory;查看表:insert into test.t1(id,name) values(1,’tom’),(2,’lily’);新增表结构:CREATE TABLE test.t2(id UInt64,eventDate DateTime) ENGINE = MergeTree() PARTITION BY toYYYYMM(eventDate) ORDER BY idalter table test.t2 add column cost UInt32 default 0;
  • [互动交流] FusionInsight_Manager_6.5.1在openEuler-20.03-LTS-SP1上安装第七步生成密钥失败
    问题现象:/var/log/Bigdata/controller/scriptlog/install.log然后定位到日志/var/log/Bigdata/controller/controller.log日志中执行krb5的命令失败,manager内放了一个krb5组件。kadmin.local命令由FusionInsight_Manager/software/om/package/ometa/kerberos/scripts/genkeytab.sh中执行,ometa目录是解压了FusionInsight-ometa-2.7.0.tar.gz。尝试替换krb5的版本无法使用在genkeytab.sh脚本里面加sleep不生效请问有哪位大佬了解这块吗,咨询一下krb5执行失败的原因
  • [技术干货] 【操作指南】如何快速搭建数据大屏?
    操作场景数据大屏是面向企业数据消费者,将可视化和场景叙事技术结合,运行在智能设备上,非接触式连接的酷炫大屏,满足业务监控数字屏、项目会议演示屏,以及对外媒体大屏等场景,从而推动企业数据群体消费。操作流程图1 创建大屏流程步骤1:新建项目登录DataArts Insight管理控制台。在DataArts Insight控制台,按照如下指引,新建项目。单击右侧的“新建项目”创建项目。在新增项目页面输入项目的名称。选择对应的企业项目。填写描述信息。单击‘确认’完成项目创建。说明:项目名称只能由中英文字、数字、以及下划线(_)、斜线(/)、反斜线(\)、竖线(|)、小括号(())、中括号([])组成。项目名称字符长度不超过50个字符。描述信息的长度不超过512个字符。图2 新增项目步骤2:新建数据源新建数据源有以下几种方式:DataArts Insight首页新建数据源快速入口。项目页面内“数据管理 > 数据源”页面下新建数据源。本示例选择在项目页面下创建数据源。进入新建的项目,按下图指引完成数据源的链接,单击“新建数据源”。图3 新建数据源源库类型:选择数据源作为数据分析的数据输入。DataArts Insight支持连接ClickHouse、GaussDB(DWS),同时也支持API数据源接入。本例选择GaussDB(DWS)为源库类型,接入网络类型选择公网接入。更多参数配置请参考表2。表1 数据源说明数据源描述ClickHouseClickHouse是一款开源的面向联机分析处理的列式数据库。GaussDB(DWS)数据仓库服务是一种基于华为云基础架构和平台的在线数据处理数据库,提供即开即用、可扩展且完全托管的分析型数据库服务。API数据通过API的方式连接数据源。图4 新建DWS数据源表2 配置项参数说明参数描述名称数据源配置列表的显示名称。说明:名称长度不能超过32个字符,只能由字母、数字和下划线(_)组成,且只能以字母开头。域名数据源IP。用户名登录数据库的用户名。密码登录数据库的密码。端口对应数据库的登录端口。数据库登录的数据库名称。SASL_SSL开启SASL_SSL可以实现数据源和DataArts Insight之间的可信身份认证与安全数据传输。完成配置项填写单击“连接测试”。测试连接成功后,点击“确定”完成数据连接。步骤3:新建数据集新建数据集以下几种方式:DataArts Insight首页新建数据集快速入口。项目页面内“数据管理 > 数据集”页面下新建数据集。数据源列表下创建数据集。本示例选择在项目页面下“数据管理 > 数据集”下创建数据集。完成数据源连接后,创建数据集,单击“新建数据集”。图5 新建数据集配置数据源信息。选择步骤2:新建数据源中新建的数据源作为数据集的输入。选择数据源的数据库、Schema。双击数据表,进入数据预览页面。在该页面可对数据进行过滤、新建指标和新建层次维度等操作。图6 配置数据集相关参数单击右侧的“保存”保存数据集的配置信息。输入数据集的名称,单击“确定”完成数据集创建。说明:数据集名称只能由中英文、数字及下划线(_)组成,且不超过64个字符。步骤4:新建数据大屏新建数据大屏有以下几种方式。控制台直接创建。进入项目进行创建。数据集编辑页面创建大屏。数据集列表页面创建大屏。本示例使用数据集编辑页面创建大屏:登录DataArts Insight管理控制台。单击控制台右侧的,搜索所需的项目名称,单击项目名进入项目页面。图7 查找项目单击左侧“数据集”,进入数据集页面,单击对应数据集操作列表下的“编辑”进入数据集编辑页面。图8 数据集编辑页面创建大屏在数据编辑页面,单击右上侧的“创建大屏”,进入创建大屏页面。图9 大屏配置页面在大屏配置页面的左侧选择需要的组件,拖拽进画布内。本示例使用的是折线柱图组件为例,更多组件的使用请参考数据大屏章节。配置组件字段和样式。配置组件字段在数据列选择需要的数据集。将需要的类别轴/维度和轴值/度量分别拖拽至“字段 >类别轴/维度和轴值/度量”内。单击“更新”,完成组件字段配置。配置组件样式单击“折线柱图 > 样式”。在样式页面对组件的样式进行配置。保存或保存并发布大屏。完成大屏制作之后,单击大屏编辑页面右上侧的“保存并发布”或“保存”。保存:保存大屏之后,在大屏页面大屏不具有查看大屏功能。在保存的页面输入大屏的名称。图10 保存并发布说明:大屏名称不能为空,只允许输入长度为1到32位由数字、中文、英文、下划线(_)或中划线(-)组成的字符串。保存并发布:保存并发布大屏之后,在大屏页面大屏具有查看功能。在保存并发布的页面输入大屏的名称。图11 保存并发布说明:大屏名称不能为空,只允许输入长度为1到32位由数字、中文、英文、下划线(_)或中划线(-)组成的字符串。步骤5:查看/预览大屏当大屏创建完成之后,可以进行预览方便对大屏的效果进行修改,本节将为您介绍如何预览大屏。在页面的右上侧,点击“预览”,即可完成预览大屏的功能。图12 预览大屏图13 零售数据大屏效果图
  • [技术干货] 【操作指南】如何使用仪表板分析数据?
    操作场景DataArts Insight提供了简单易用的可视化操作和灵活高效的多维分析能力,DataArts Insight连接外部数据源,即可进行数据分析和报表搭建。本节将为您介绍使用DataArts Insight连接GaussDB(DWS)数据源制作图表的操作步骤。操作流程图1 智能数据洞察快速入门的流程步骤1:新建项目登录DataArts Insight管理控制台。在DataArts Insight控制台,按照如下指引,新建项目。单击右侧的“新建项目”创建项目。图2 创建项目在新增项目页面输入项目的名称。选择对应的企业项目。填写描述信息。单击“确认”完成项目创建。说明:项目名称只能由中英文字、数字、以及下划线(_)、斜线(/)、反斜线(\)、竖线(|)、小括号(())、中括号([])组成。项目名称字符长度不超过50个字符。描述信息的长度不超过512个字符。图3 新增项目步骤2:新建数据源新建数据源有以下几种方式:DataArts Insight首页新建数据源快速入口。图4 数据源项目页面内“数据管理 > 数据源”页面下新建数据源。本示例选择在项目页面下创建数据源。进入新建的项目,按下图指引完成数据源的链接,单击“新建数据源”。图5 新建数据源源库类型:选择数据源作为数据分析的数据输入。DataArts Insight支持连接ClickHouse、GaussDB(DWS),同时也支持API数据源接入,详细了解请参见新建数据源章节。示例选择GaussDB(DWS)为源库类型,接入网络类型选择公网接入。更多参数配置请参考表2。表1 数据源说明 数据源描述ClickHouseClickHouse是一款开源的面向联机分析处理的列式数据库。GaussDB(DWS)数据仓库服务是一种基于华为云基础架构和平台的在线数据处理数据库,提供即开即用、可扩展且完全托管的分析型数据库服务。API数据通过API的方式连接数据源。图6 新建DWS数据源表2 配置项参数说明 参数描述名称数据源配置列表的显示名称。说明:名称长度不能超过32个字符,只能由字母、数字和下划线(_)组成,且只能以字母开头。域名数据源IP。用户名登录数据库的用户名。密码登录数据库的密码。端口对应数据库的登录端口。数据库登录的数据库名称。SASL_SSL开启SASL_SSL可以实现数据源和DataArts Insight之间的可信身份认证与安全数据传输。完成配置项填写单击“连接测试”。测试连接成功后,点击“确定”完成数据连接。步骤3:新建数据集新建数据集以下几种方式:DataArts Insight首页新建数据集快速入口。图7 数据集项目页面内“数据管理 > 数据集”页面下新建数据集。数据源列表下创建数据集。本示例选择在项目页面下“数据管理 > 数据集”下创建数据集。完成数据源连接后,创建数据集,单击“新建数据集”。图8 新建数据集配置数据源信息。选择步骤2:新建数据源中新建的数据源作为数据集的输入。选择数据源的数据库、Schema。双击数据表,进入数据预览页面。在该页面可对数据进行过滤、新建指标和新建层次维度等操作。图9 配置数据集相关参数单击右侧的“保存”保存数据集的配置信息。输入数据集的名称,单击“确定”完成数据集创建。说明:数据集名称只能由中英文、数字及下划线(_)组成,且不超过64个字符。步骤4:新建仪表板创建仪表板有以下几种方式:DataArts Insight首页创建仪表板快速入口。图10 仪表板创建数据集编辑页面。在控制台单击需要操作项目>数据集>操作列>单击编辑,进入数据集编辑页面,单击页面右上角“创建仪表板”按钮。数据集列表页面。在控制台单击需要操作项目>数据集>操作列>新建仪表板。仪表板表页面。在控制台单击需要操作项目>数据分析>仪表板>新建仪表板。本示例选择在数据集编辑页面进行创建仪表板。在新建的数据集页面,单击右上角的“创建仪表板”进入仪表板页面。新建可视化图表,本示例以智能图表为例。在智能图表区域,将数据的“维度”和“度量”通过鼠标拖动到“智能图表”内的“列”内。图11 制作智能图表点击“更新”之后就可以得到需要的智能报表内容。图12 智能报表效果单击右侧的“保存”保存智能报表。输入仪表板的名称,单击“确定”保存成功。也可通过单击“保存并发布”,保存并发布仪表板。发布后支持预览仪表板。步骤5:查看/预览仪表板查看仪表板要查看的仪表板必须是已经发布的仪表板,未发布仪表板不具有查看的功能。在所创建的项目下,单击数据分析下的“仪表板”,进入仪表板页面。在仪表板页面,选择对应的仪表板单击操作列下的“查看”,就可以查看新建成功的仪表板。图13 查看仪表板预览仪表板在仪表板页面,选择对应的仪表板单击操作列下的“预览”,就可以预览仪表板。图14 预览仪表板
总条数:1437 到第 页
上滑加载中