• 博客(21)
  • 收藏
  • 关注

原创 日志结构化,SQL来查询

通常,日志文件都是文本格式,其中的内容是非结构化的文本串。这就使得我们查询日志信息时,一般只能使用文本编辑软件的搜索功能,输入关键字后,靠眼力去侦查每处匹配结果。在日志量不大,或者只是偶尔查一下时,这么操作倒也无妨。不过,再简单的事情也怕多次重复。如果需要频繁查询,量变就可能引起质变。如果每次还都要靠人工搜索,那么就算有再好的视力,也会有头晕目眩的时候。因此,想要轻松查询日志,就必须找到一款合适的...

2018-08-30 09:26:02 2442

原创 用简单程序替换 MySQL 窗口函数

窗口函数是SQL2003标准才开始有的一系列SQL函数,用于应付一些复杂运算是比较方便。但是普遍使用的MySQL数据库对窗口函数支持得却很不好,直到最近的版本才开始有部分支持,这当然就让MySQL程序员很郁闷了。实际操作中,我们可以在MySQL里用SQL拼出窗口函数功能,但是需要使用用户变量以及多个SELECT表达式从左到右依次计算的隐含规则。下面我们来看两个例子(为调试方便,我们直接用集算器...

2018-08-30 09:25:08 1225

原创 如何用外部程序优化 SQL 语句中的 IN 和 EXISTS

数据结构IN和EXISTS是SQL中常见的复杂条件,在将SQL(存储过程)转换成库外计算获取高性能时也会面对这些问题。本文将以TPC-H定义的模型为基础,介绍如何用集算器的语法实现IN、EXISTS并做优化。TPC-H是TPC事务处理性能委员会制定的用于OLAP数据库管理系统的测试标准,模拟真实商业应用环境,以评估商业分析中决策支持系统的性能。TPC-H模型定义了8张表,表结构和表关系如下...

2018-08-29 11:02:39 193

原创 自动导出Excel的利器

有时我们需要用程序来自动生成Excel文件,但Excel本身带的VBA并不好用,而集算器作为数据处理工具实现这个需求就会方便很多。本文将介绍如何用集算器生成Excel文件,而集算器本身强大的数据计算能力不是本文重点,因此文中只是简单地用文本作为数据源举例,实际应用中可能会从各种各样的数据源中取数,再经过一系列运算得到需要导出的数据。本文中用到的函数请参看集算器文档《函数参考》。基础篇1....

2018-08-29 11:01:00 3377

原创 给一句SQL就能做多维分析

上一篇我们以Excel文件数据集为例,介绍了如何把Excel的数据透视表嵌入到俺的应用程序中。爱学习的同学会问了,Excel数据透视表可以使用Excel里取到的任何数据,比如数据库取数,你们能直接从数据库取数做分析吗?Yes,I Can!俺的程序支持对任何数据库做SQL数据集多维分析,只需先把数据源配置好,然后程序猿啪啪几下敲下需要进行多维分析的SQL语句就可以,灵活便捷! 好了,言归...

2018-08-29 10:58:24 1134

原创 正确使用缓存让报表支持高并发

使用缓存可以提升报表性能是不争的事实,一般高端报表工具都会提供报表缓存功能,可将整个报表计算结果缓存在文件系统中,以便用户下次访问相同参数的报表时可以快速读取缓存结果进行展现。但有些情况下报表开发人员还希望对缓存的内容进行更准确和灵活的控制,比如缓存的不是整个报表结果而是其中一部分、缓存内容可被其它报表或程序复用,以及对不同的缓存结果设置不同的超时时间,从而应对数据量和实时性方面的不同情况。这时,...

2018-08-29 10:56:02 1025

原创 轻量级跨库多维分析解决方案

问题的提出多维分析(BI)系统后台数据源通常有三种选择。一、普通数据库;二、专业数据仓库;三、BI系统自带的数据源。但是,这三种选择都有各自的问题。普通数据库一般都是行式存储,很难获得多维分析希望的高性能,只适用较小数据量。专业数据仓库有不少是列式存储的,性能问题不大,但是价格都比较昂贵,建设、扩展和维护成本也都非常高。BI系统自带的数据源都比较封闭,只能为自家的BI前端提供支持,无法为多...

2018-08-29 10:52:02 1210

原创 把Excel透视表搬到WEB上

提起Excel一定都不陌生,尤其是里面的数据透视表,对于需要进行聚合分析的情况,根据原始数据勾勾选选就能完成,用起来是倍儿爽吧。那么,操作起来这么省心的功能要是能移到WEB上,嵌入俺的应用程序里,是不是就完美了?so easy! 雷锋同志马上来教你做这事儿。主角登场——润乾报表多维分析!下面就先以Excel文件作为数据源,与各位小伙伴分享一下多维分析的应用案例,欢迎各位热烈围观,优...

2018-08-29 10:46:41 1467

原创 用计算路由的方法优化 BI 后台性能

问题的提出BI系统的常见结构是:前端是BI应用,负责多维分析的用户操作和结果呈现;后台是数据库/数据仓库,负责数据计算和存储。前端和后台之间用SQL作为接口。实际应用中,常常出现后台数据仓库压力过重的问题。问题表现为前端响应时间过长,数据仓库反应速度变慢。常见的解决方案是在数据仓库和应用之间再增加一个前置数据库。但是前置数据库和后台数据仓库之间很难实现数据的路由和混合计算,例如:访问频...

2018-08-29 10:45:45 225

原创 如何优化多数据集关联报表

多数据集关联报表是很常见的报表形式,它允许开发者分别从不同的来源(表或数据库)分别准备数据形成不同的数据集,在报表端(模板)通过表达式描述数据集间的关系完成关联。这样可以避免在数据准备时写过于复杂的SQL/存储过程,降低维护难度。尤其当报表数据来源于多个数据库时,多数据集的优势更加明显。凡事都有两面性,多数据集为开发带来方便的同时却对性能造成了极大的影响。在报表端进行多数据集关联时要计算关联表...

2018-08-29 10:45:03 380

原创 加速 JDBC 的快捷方法

JAVA 应用必须通过 JDBC 从数据库中取数,有时候我们会发现,数据库的负担一点也不重而且 SQL 很简单,但取数的速度仍然很慢。仔细测试会发现,性能瓶颈主要在 JDBC 上,比如 MySQL 的 JDBC 性能就非常差,Oracle 也不好。但是,JDBC 是数据库厂商提供的包,我们在外部没办法提高性能。可以想到的办法是利用多 CPU 手段采用并行方案来提速,但 Java 的并行程序非常...

2018-08-29 10:43:23 376

原创 趣味集算:八皇后问题

有关国际象棋的问题很多,八皇后问题就是其中相当著名的一个。在 8×8 的国际象棋棋盘中,放入 8 个皇后,使它们不互相攻击,共有多少种方法呢?国际象棋中皇后的威力巨大,攻击范围是同一行、同一列以及同一斜行,因此,符合条件的 8 个皇后必须都不在同一行、同一列或者同一斜行上。由于每一行中只能放入一个皇后,所以可以使用一个长度为 8 的序列,依次设入每行中皇后所在的列数,以此来表示皇后...

2018-08-29 10:27:59 160

原创 分页汇总从未如此简单

嗨~everybody,还在为每页数据的计数求和发愁吗?还在为自己写长串代码加班到深夜而焦虑吗?还在为甲方不断变化的分页需求而抓狂吗?stop!从现在起,你会发现分页汇总从未如此简单,快来跟随小老师的脚步一探究竟。我们都知道,在业务系统中常常会有这样的业务需求:数据报表需要按实际纸张进行分页显示,在每页的最后对本页的数据进行汇总(例如,计数、求和)。下图显示的就是对每页的运货费进行求和小计:...

2018-08-06 10:23:12 742

原创 web报表轻松实现数据异常预警功能

在业务系统中,经常会看到这样的数据显示需求:一些特殊数据有规定的标准范围,超出标准范围的数据我们要标红预警显示,告知客户此数据有异常,也就是我们说的数据预警,效果如下图所示,红色显示了当运货费大于100时的预警。这种效果更加清晰的显示了异常数据,有助于用户对异常数据进行分析判断。如果不用报表工具,我们通常需要自己花点时间改页面样式,而通过报表工具我们就可以分分钟实现数据预警效果了。小老...

2018-08-06 10:10:12 4071

原创 报表工具如何实现“点击查看原图”

在各种涉及图片的Web网站上,无论是搜图类、社交类、保险服务类,以及ERP或档案管理等内部系统,其中对于图片通常会提供一种点击图片查看原图的操作,也就是一开始呈现小图,点击后放大查看。这种操作我们能在报表中实现吗?如果可以的话,该怎么做?是不是需要许多关于前端页面的知识准备呢?下面我就对于上面抛出来的疑问一一解答下:润乾报表可以实现!通过Dashboard+超链接局部刷新就可以!不需知道很多前...

2018-08-06 09:54:36 430

原创 浅谈集合与引用

在谈集合之前,需要先谈谈离散性的概念:所谓离散性,是指集合的成员可以游离在集合之外存在并参与运算,游离成员还可以再组成新的集合。从离散性的解释上可以知道,离散性是针对集合而言的一种能力,离开集合概念单独谈离散性就没有意义了。离散性是个很简单的特性,几乎所有支持结构(对象)的高级语言都天然支持,比如我们用Java时都可以把数组成员取出来单独计算,也可以再次组成新的数组进行集合运算(不过Jav...

2018-08-06 09:45:25 557

原创 报表工具轻松搞定票据单据套打

实际项目开发中,很多情况会涉及到票据的打印。即在一张印刷好的空白票据上,准确无误地打印上票据的内容。用传统的报表工具,我们通常会用尺子量每一个数据区域的位置,然后在屏幕上根据尺子量出的尺寸设计每一个格子的位置,反复调试。不过,这样制作一张票据打印的报表费时费力,而且一旦票据格式发生变化,报表制作人员又要重新制作报表。接下来,小编给大家介绍一款可以轻松搞定套打问题的爆款神器 — 润乾报表 (别问...

2018-08-06 09:43:31 1887

原创 图形钻取

超链接钻取是一个非常实用的功能,在各种项目、应用中使用广泛,能够帮助数据分析用户清晰、直观地了解不同层级数据的上下级关系,并聚焦于自己感兴趣的内容。当然,润乾报表也支持这个功能,前面小编有介绍过列表钻取,今天小编主要介绍如何利用润乾报表设计器在报表中实现图形钻取。下面我们以订单分布为例,举例说明:实际的需求是要求我们首先以柱图呈现出每个人的总订单金额,并且点击任意一个柱子可以钻取呈现出这个...

2018-08-03 10:30:02 379

原创 趣味集算:算二十四

算24点,是一种常见的智力游戏。它可以使用抽去大小王的扑克牌来玩,随便抽出4张牌,要求通过加、减、乘、除等四则运算,并使用所有的这4个数,将结果算为24。在玩这个游戏时,扑克牌中的JQK记为11,12和13。用集算器,可以比较方便地编写程序,根据随便给定的4个数,计算出游戏的解答,如下面的24points.dfx:  A B C D 1 =arg1 ...

2018-08-03 10:27:05 1646

原创 列表钻取

超链接钻取是一个非常实用的功能,在各种项目、应用中使用广泛,能够帮助数据分析用户清晰、直观地了解不同层级数据的上下级关系,并聚焦于自己感兴趣的内容。当然,润乾报表也支持这个功能,今天小编主要介绍如何利用润乾报表设计器在报表中实现列表钻取。下面我们以月订单分析为例,举例说明:实际的需求是要求我们首先呈现出每个月的总订单情况,并且点击任意一个月份可以钻取呈现出这个月的详细订单信息。首先,我们制作...

2018-08-03 10:26:19 473

原创 妙用集算,掌上观文

随着互联网的快速发展,大数据时代的到来,数据资源的处理成了各行各业都面临的热点问题。除了通过特别专业、特别特别昂贵、特别特别特别复杂的分析平台来处理特别x4海量的数据外,我们还常常会遇到Excel(xls,xlsx)文件这样手边能够即时获得的数据文件。使用Excel记录、处理和交换数据,是因为这个软件的简单方便,而如果又需要通过一堆外部调用来进行后续的分析处理,那就会显得十分笨拙。现在我们就来分享...

2018-08-03 10:22:42 106

空空如也

空空如也

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

TA关注的人

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