自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 资源 (2)
  • 收藏
  • 关注

原创 shell脚本实现日期循环

for ((i=1; i<=100; i–))dolet j=i-1starttime=$(date -d “20201201 07:30:00 KaTeX parse error: Expected 'EOF', got '#' at position 33: …%M%S") #̲指定时间增加1天 …(date -d “20201201 07:30:00 $i day” +”%Y%m%d%H%M%S")echo $starttimeecho $endtimed

2021-03-04 10:36:06 1079 1

原创 大数据面试常见问题

一、Hive:1、HIVE工作原理1)用户创建数据库、表信息、存储在hive的元数据库中;2)向表中加载数据,元数据记录hdfs文件路径与表之间的映射关系;3)执行查询语句,首先经过解析器、编译器、优化器、执行器,将指令翻译成mapreduce,提交到yarn上执行,最后将执行返回的结果输出到用户交互接口。2、HIVE内部表和外部表的区别:1)内部表:加载数据到HIVE所在的hdfs目录,删除时,元数据和数据文件都删除2)外部表:不加载数据到hive所在的hdfs目录,删除时,只删除表结构。

2021-02-26 19:13:09 566

原创 帆软logDB介绍

帆软logDB是帆软的保存日志的内置数据库,利用该数据库可实现对帆软数据平台的监控。如监控监控各个表格的访问情况。详情可见官方文档。https://help.fanruan.com/finereport/doc-view-3742.html

2021-02-22 16:09:09 1375

原创 Spark的工作原理

Spark streaming 将输入数据以时间为依据做切分,然后对切分后的文件做批处理。Spark的核心原理在于RDD的实现。RDD,即弹性分布式数据集,是记录的只读分区集合。RDD通过两种方式可以得到,第一种是读取文件中的数据生成RDD,第二种是通过内存中的对象并行化得到RDD。RDD的操作有两种,Transformation和Action,Transformation操作即是从已经存在的RDD创建一个in的RDD,而Action操作是在RDD上进行计算。Action操作即确定了RDD之间的依赖

2021-02-22 14:51:19 161

原创 缓慢变化维与拉链表

现实生活中,维度的属性通常不是静态的,它会随着时间的流逝发生缓慢的变化。此时,存在三种记录数据的方法以应对这种变化。TYPE1:直接记录新值。该方法较为节省存储空间,但丧失了历史数据信息。TYPE2:增加新行与时间戳记录状态。拉链表便是该方法的应用形式之一。既避免的历史信息的增量使用,但也节省了存储空间。TYPE3:增加新列,记录新值。该方法能记录最新的一条信息与原始信息,其中变化过程的过程信息将被遗失。...

2021-02-22 13:30:36 447

原创 sql性能调优

性能调优的本质,即用最少的IO来实现计算目的。因此为减少IO,我们需要尽量对聚合后的数据进行计算。所以,sql性能调优可以从以下角度来思考。一、从sql本身1)执行顺序:from -join -on -where- group by- having-order by主表数据量过大,若多表关联时未使用inner join,则可以先从主表中过滤出相应数据,将其作为中间表后再使用。2)语句原理:如能使用union all时,不用union(union包含去重操作,需要多余IO,类似耗费资源的操作还

2021-02-22 09:22:29 87

原创 离线数据处理工具、准实时数据处理工具与实时数据处理工具

从数据读取来说:1、离线数据:hiveHive 查询操作过程严格遵守Hadoop MapReduce 的作业执行模型,Hive 将用户的Hive SQL 语句通过解释器转换为MapReduce 作业提交到Hadoop 集群上,Hadoop 监控作业执行过程,然后返回作业执行结果给用户。Hive 并非为联机事务处理而设计,Hive 并不提供实时的查询和基于行级的数据更新操作。Hive 的最佳使用场合是大数据集的批处理作业。使用hive sql 时,其语言将被转化为mapreduce过程执行。2、准实

2021-02-20 13:12:12 1669

原创 数据仓库分层模型和数据集市理论

简单的三层模型:1、ODS层:贴源层,从数据源抽取出来的处理后的数据2、DW层:数据仓库层,大多存在的是事实数据,通常会面向主题进行汇总。3、DM层:数据集市层,从业务角度进行汇总。相对复杂的四层模型:1、ODS:同上2、DWD:数据仓库中的明细层(D,detail)3、DWS:数据仓库中的汇总层(S,summary)4、DM:同上雪花模型和星型模型两者最大的区别之处在于雪花模型的多次连接让其减少了冗余,但多次的join操作通常会使得查询的性能减慢。...

2021-01-15 09:59:42 2416

原创 数据测试的经验总结

在数据开发过程中,在保证源数据正确性的情况下,数据却出现了问题。此时,应该怎么查找问题。从问题来看,数据出现问题,通常分为三类情况,即多、少、不一致。从sql语句来看,只有当过滤和关联设置不当时,才会影响数据的质量和数量。结合经验来看,可得到以下结论。1)数据发散时,通常是表间关联的关联键没有选择正确。2)不该出现的数据出现了,通常是过滤条件的设置问题。3)汇总后的数据是正确数据的倍数,此时通常也是发散造成的。...

2021-01-13 11:46:34 1378

原创 impala与hive的区别

从功能性的角度来看,impala与hive的主要区别在于响应时间。对于同一个查询语句,impala能够更快的给出查询结果。impala是如何实现的呢?主要是从三个角度来实现。1.执行计划impala没有采用mapreduce执行框架,它将执行计划表现为执行计划树,可以分发执行计划到各个impalad,避免了中间的sort和shuffle。2.数据流impala采用拉的方式。表现形式,可以看作执行查询语句,不会出现所有的查询结果。在当前查询结果的基础上继续查询时,才能有新的结果出现。3.内存使用

2021-01-12 11:32:39 5027

原创 关于表格优化设计过程的tips

当数据需要进行汇总时,此时需要行转列,将数据降维,此时才能进行汇总等操作。当设计数据流时,如何才能确保比较最效率的方式?一个函数即可解决所有运算是比较有效率的方式。因此,当数据需要压缩至一个指标中,此时,所有的数据最好都保持在一列上,这时用一个汇总函数即可满足需求。当一堆数据需要压缩至两个指标中。若这些数据能够清晰的分为两部分,此时最好将这两部分转换为表格中的两列,此时仍然可以用一个汇总函数解决指标的计算。由此类推。...

2021-01-08 16:10:39 78

原创 FLINK入坑指南转载

Flink入坑指南 第一章 - 简介https://blog.csdn.net/weixin_34061042/article/details/89573718Flink入坑指南 第二章 - 从一个需求开始https://blog.csdn.net/cpongo1/article/details/89550281Flink入坑指南 第三章:第一个作业https://blog.csdn.net/weixin_33860737/article/details/89573521Flink入坑指南 第四

2020-12-17 16:01:13 81

原创 使用SVN的clean up时发生死锁

发生死锁时,可下载sqlite3.exe,并将其放入与.svn同级目录下。1.启动cmd ,并cd至svn目录下2.输入命令sqlite3 .svn/wc.db “select * from work_queue”可以看见卡壳命令3.输入命令sqlite3 .svn/wc.db “delete from work_queue”4.重新使用clean up即可...

2020-12-16 13:18:57 101 1

原创 帆软的数据库管理

帆软官方曾推出过权限导出插件,该插件可以实现系统对数据库的各种操作。同样,连接FINEDB后,可利用该库中的各种元数据表格实现对数据库的管理

2020-12-14 16:43:07 393

原创 帆软的组件复用插件

为提高开发效率,减少重复劳动,帆软官方开发了组件复用模块供大家使用。在服务器选项下的插件管理中安装“组件复用”插件。安装成功之后,便可以在本地组件库中下载各种组件。

2020-12-14 09:02:28 1989

原创 帆软中实现vlookup的替代方法

帆软中的函数不同于EXCEL中的函数,如果想要在帆软中实现VLOOKUP函数时,帆软官方给出过利用GREPARRAY这个函数来替代实现的办法。这里推荐另一种实现方法。因为EXCEL中可以使用index和match函数同时使用来替代vlookup的方法。而帆软中的indexofarray 和index分别对应于EXCEL中对应的这两个函数。因此,可以使用这两个函数在帆软中来代替vlookup的功能。INDEXOFARRAY(array(X,Y,Z,N ),INDEX(i, x,y,z,n))x是对应主

2020-12-10 13:53:25 2495 2

原创 帆软如何导出帆软中不存在的公式

帆软与EXCEL并不是完全兼容的两种工具。帆软项目中常常会产生导出公式的需求。那如何利用帆软导出公式成立令人头疼的问题。此时,笔者联想到了ORACLE中动态语句的写法。即在语句中利用 execute 来套用语句从而避免ORACLE事务的冲突。帆软中存在富文本功能,使帆软导出成EXCEL时能将单元格中的内容视作字符串。此时,即可利用富文本功能来替代满足项目中的需求。当然此方案也存在部分限制,即更适用于固定区域的动态执行。...

2020-12-04 15:45:04 433

原创 批量获取文件夹下的文件名

DOS命令 DIR即可实现1.创建一个TXT2.将 DIR . /B >LIST.TXT 放入TXT中,保存退出,文件名以bat结尾3.运行该bat文件,即可获得一个叫List 的TXT文件。该TXT文件内包含文件夹下的所有文件名。tips:结合notepad++即可快速得到当日产出文件名及路径...

2020-12-04 13:59:12 162

原创 帆软表格中过滤条件与条件属性的区别

帆软表格中,过滤条件和条件属性都能实现对内容的筛选,但这两种操作有哪些区别呢?1、过滤条件可以设置其他列作为内容筛选的对象。如一条包含了时间、位置等信息的数据。在对时间信息进行筛选时,可以将位置信息作为条件,如:"where location =‘西方’ "而条件属性不能将其他字段的信息作为过滤条件使用。如,在对时间信息进行筛选时,只能用时间信息作为筛选条件。2、修改对象不同。过滤条件只能作为筛选使用,而条件属性能修改满足条件的数据的对应内容、格式等...

2020-11-30 14:29:57 3683

原创 JAVA中,static的作用

JAVA中的函数,如果加上static,则该方法标识为静态方法。Myclass.print( )即可调用该函数如果函数没有加上static,只有将这个类实例化之后才能调用这个函数Myclass xxx = new Myclass();xxx.print()

2020-11-23 15:33:15 36

原创 面向对象与面向过程

面向过程是定义的是事件本身。从数据开发的视角来看,面向过程的粒度更小,而面向对象的粒度更粗,更具有普遍和通俗性。比如,将自己-吃饭这一事件利用两种不同的视角来编程。面向过程:public class 进食{public void 煮饭{}public void 吃饭{}}面向对象:public class 进食{public void 准备食物{}public void 消化食物{}}吃饭这一行为特征更贴切于人类本身。而进食这一单词不仅适用于人类,还使用于自然界中

2020-11-23 15:21:39 46

原创 数据开发实现业务逻辑的方法论

数据开发的实质便是对于数据进行操作。那么当我们需要对数据进行相应多重一层套一层的逻辑计算时,我们如何理清思路,确保自己的头脑保持清明?

2020-11-23 11:26:02 355

原创 for循环和while循环的区别

for 循环头部的代码和for 循环的主体代码在同一个代码段之中,在一个典型的for循环中,递增变量一般在循环结束之后都是不可用的;但在和它等价的while循环中,递增变量在循环结束之后仍然是可用的。换句话讲,i值在while结束后仍然可用,但在for循环结束后不再可用。...

2020-11-23 09:34:32 2993

原创 如何利用帆软的内置数据集实现驾驶舱

利用帆软的内置数据集实现的驾驶舱如下:用到的主要框架为

2020-11-12 13:17:24 732

原创 帆软报表块实现滚动效果

这是一版新的跑马灯的代码片既可以实现隐藏滚动条,又可以实现滚动setInterval(function(){$("div[widgetname=REPORT0_C]").find("tbody").children().eq(1).children().eq(1).children().css({"overflow-x":"hidden","overflow-y":"hidden"});$("div[widgetname=REPORT0_C]").find("tbody").children().e

2020-11-12 13:10:31 2232

原创 帆软驾驶舱如何实现动态细节

帆软驾驶舱如何给人以动态震撼从而抓人眼球。不仅仅要靠个别组件能够突出重点的震撼,还需要各个组件之间的细节上进行配合。比如,需要让每个组件都能够以动态的形式展示自己的数据点。以下为实现代码:setTimeout(function() { var vanchart = FR.Chart.WebUtils.getChart('chart4').vanCharts.charts[0], openAutoTooltipCarouselDelay = 2000; openAutoTooltipCarous

2020-11-10 14:11:31 338

原创 帆软中如何筛选有查询条件和没有查询条件的情况

在finereport中选择特定的参数,会返回我们要查询的数据。但如果没有输入参数值,我们却仍需要返回数据时该怎样处理?如果只是普通的利用 where 依据字段=依据条件,当传递参数为空时,“where 依据字段= ”这样的语句会报错。因此,如果在参数为空时,仍能顺利执行语句,则需要加一个判断条件。在帆软中可以如此表示:${if(len(cb)=0,"",“and lower(site) in(’”+cb+"’)")}当没有输入参数时,字符串的长度为0,当存在参数时,则可以增加关于参数的判断条件。

2020-11-09 17:40:39 3808

原创 财务项目中的在线修改和保留公式需求

在进行财务项目时,财务通常会提出需求,即修改某些值后,使这个值能和其他sheet产生联动,并将结果导出成Excel。但并不改动数据库中对应的值。此时,在帆软的决策系统中的管理系统选择目录管理,将对应的报表设置成填报即可满足此需求。...

2020-11-06 17:05:56 107

原创 如何利用帆软本身的筛选功能实现去重

帆软报表中可以使SEQ()这个函数。SEQ这个函数可以自动生成序号,同时也可以统计出变量出现的次数。因此,用SEQ($$$)可以获取当前单元格中的内容出现的次数。因此,可使用过滤的功能,对当前的单元格中的内容进行一个出现次数的判断,即SEQ($$$)==1,即可利用帆软本身的筛选实现去重功能。...

2020-11-03 17:07:07 4109

原创 帆软驾驶舱之利用帆软实现图表轮播

笔者利用帆软内置的数据集实现的图标轮播的效果图如下。为了是实现图表轮播的效果,首先需要从帆软的空白块中拖动tab块。在tablayout中可以设置两个新的图表。然后需要在tab轮播设置栏中设置好轮播效果。设置如下图所示。然后,为了美观,需要将tabpane大小设置为0。同样,可以将以下事件设置成代码放置在各个图表的“初始化后”的事件中。(此处不明白的可以参考笔者的其他文档)下面展示一些 内联代码片。setTimeout(function() { var vanchart = FR.Char

2020-10-30 16:12:07 3716

原创 帆软中环形图的实现

帆软程序中没有专门的环形图的插件。如果想在帆软中实现环形图,需要插入饼图后对其编辑。在饼图的样式、系列中,找到内径占比的选项,填写合适的内径比例,即可在帆软程序中实现环形图。路径如下图:...

2020-10-30 15:19:33 1344

原创 帆软实现动态背景

帆软实现动态星空背景的过程帆软实现动态背景主要依靠以下三段代码。需要对于body组块设置三个条件属性。设置成初始化后。条件1// An highlighted blockFR.HtmlLoader.loadingEffect=function(){} 条件2// An highlighted block$("body").prepend('<canvas id="canvas" style="position:absolute;z-index:-2;"></canva

2020-10-26 17:23:58 1769 1

原创 帆软实现自动隔行变色

帆软实现自动隔行变色利用条件属性中的row()可以得到当前行数,然后利用row()%2可以将奇数行和偶数行分开。然后设置好行背景即可实现自动隔行变动背景色。

2020-10-26 16:57:07 4524

原创 如何实现帆软报表中的滚动报表

帆软驾驶舱之自动滚动列表帆软驾驶舱的本质是由多种动静结合的部分组合形成抓人眼球的展现效果。各种插件之中,动态展示是一种不可缺少的展现方式。滚动报表的实现主要依托于Javascript代码。其中,实现自动实现的效果主要依赖于以下代码。// An highlighted blocksetTimeout(function() { //每次重新查询加载的时候需要清掉上一次设置的定时器 $("div[widgetname=REPORT2]").find("#frozen-center").cs

2020-10-26 16:44:05 2416

原创 当数据库无法使用rank函数进行排序时如何解决

当数据库中不能使用rank函数进行排序时,可使用给临时变量赋值以用来给每行添加序号(主键也可做主键用)。具体操作:在select 模块中,增加 @rownum := @rownum +1 ,并且在from 模块中增加 来源表 (select @rownum :=0 ) 即可实现。...

2020-10-25 15:40:34 2188

原创 帆软驾驶舱的实现过程

这里写目录标题帆软驾驶舱目录齿轮配置帆软驾驶舱驾驶舱的实现其实是多张动图静止图表的互动实现而成。加上合适的背景,即可实现比较抓眼的效果。目录齿轮配置目录齿轮的应用与饼图的用法类似,使用的数据源格式也相同。两者区别在于,目录齿轮作为动态图表,更加的抓人眼球。且可以突出其包含的重点内容信息。个人认为,目录齿轮中的信息点在3-5个较为合适。实现过程:1.首先,需要从链接中下载帆软的目录齿轮插件。https://help.fanruan.com/finereport/doc-view-2485.html

2020-10-25 15:35:10 1455

splite3.exe

发生死锁时,可下载sqlite3.exe,并将其放入与.svn同级目录下。 1.启动cmd ,并cd至svn目录下 2.输入命令 sqlite3 .svn/wc.db &quot;select * from work_queue&quot; 可以看见卡壳命令 3.输入命令 sqlite3 .svn/wc.db &quot;delete from work_queue&quot; 4.重新使用clean up即可

2020-12-16

利用帆软内置数据集实现驾驶舱

利用帆软的内置数据集实现的驾驶舱如下: 在此驾驶舱中,利用了四个动态细节将驾驶舱的炫酷效果构建了起来,他们分别是 1、数据点的动态展示。 2、一维数据的跑马灯效果 3、图表的自动轮播 4、动态背景的实现 具体的代码实现在博主之前的博客中有所提到。 在帆软实现的过程中用到的美化小技巧包括: 1.隐藏图表块的展开栏 2.如何让标题和图表块能套入边框(标题的拉伸与图表块的适应) 3.如何隐藏滚动条 4.排名的皇冠小窍门 5.薪资总额的广告牌效果

2020-11-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除