• [图片] 最近中美贸易战,华为成了焦点。任老爷子一席大论,据说有 27 次提到了数学;紧接着,某著名公号的一篇《时代呼唤数学家》又刷了屏,直把数学家推到了风口浪尖,让人感觉数学的春天就要来了。 ..
  • •      •    1,380 浏览    •   2019-05-28 09:52:50

    SQL 是描述性语言? 

    [图片] 我们在学习 SQL 时,常常会看到这样的论调:SQL 是一种描述性语言,你只需要告诉它要做什么,而不需要告诉它怎么做,它会自己找到实现方法。也就是说,你要只用它描述任务目标,而不需要 ..
  • •      •    1,256 浏览    •   2019-03-07 17:08:05

    多维分析预汇总的方案探讨 

    [图片] 我们在《多维分析预汇总的存储容量》中计算过,如果想做到 O(1) 的复杂度,至少要考虑界面用到的各种维度组合,这在维度总量稍多一点时就不可行了。 这样,我们就只能放弃 O(1) 复杂 ..
  • •      •    1,308 浏览    •   2019-03-12 11:26:28

    多维分析预汇总的功能盲区 

    [图片] 在进一步讨论如何在有限空间内实现多维分析的预汇总之前,我们有必要再了解一下预汇总方案还有什么功能上的不足,也就是要搞清还有什么查询需求很可能无法通过预汇总数据获取。 1. 非常规聚合 ..
  • •      •    1,313 浏览    •   2019-02-26 17:55:40

    多维分析预汇总的存储容量 

    [图片] 多维分析一般是交互式操作的,也就要求有极高的响应速度,而多维分析涉及的数据量常常很大,几千万上亿行甚至更大都有,临时统计很可能跟不上界面的操作。为了保证性能,一些多维分析产品采用了预 ..
  • •      •    1,259 浏览    •   2019-02-20 15:10:20

    数据库的封闭性 

    [图片] 我们知道,数据库的数据处理能力是封闭的。所谓封闭性,这里是指要被数据库计算和处理的数据,必须事先装入数据库之内,数据在数据库内部还是外部是很明确的。 数据库一般有 OLTP 和 OL ..
  • [图片] 做一次标题党,其实我们做软件的当然没办法改变芯片的性能,也不可能真地让国产芯片超越 Intel。 这个话题从去年做过的一次性能测试说起,先看测试结果: [图片] 这些题目原本是某大用 ..
  • •      •    1,834 浏览    •   2018-12-11 17:33:07

    中国报表漫谈 

    按:在敏捷 BI 横行的年代,报表这个概念也有了更大的外延,很多用户甚至技术人员都会将由复杂格式报表与 BI 系统中拖拽出来的报表混为一谈。这是一篇 2004 年底写的老文,现在重读,对于理解 ..
  • •      •    2,048 浏览    •   2018-12-04 17:03:58

    内存数据集产生的隐性成本 

    [图片] 当我们要对数据做一些非常规的复杂运算时,通常要将数据装入内存。现在也有不少程序设计语言提供了内存数据集对象及基本的运算方法,可以较方便地实现这类运算。不过,如果对内存数据集的工作原理 ..
  • [图片] 报表的业务稳定性天生很差,业务开展过程中会催生出许多新的查询统计需求,这就造成了没完没了的报表,这是个无法被消灭的任务,也是许多行业软件开发商非常头疼的事情。投入了很多人力,也引入了 ..
  • •      •    1,158 浏览    •   2018-11-20 17:09:04

    “后半”有序的分组 

    [图片] 上一期我们说了前半有序的数据,这次我们来看看“后半”有序的情况。 回顾一下前半有序的说法:我们要把数据集 T 按字段 a,b 排序时,如果 T 已经对 a 有序,则可以利用这一特点实 ..
  • •      •    1,288 浏览    •   2018-11-13 21:54:07

    前半有序的大数据排序 

    [图片] 最近碰到这么一个案例,情况可以简化总结成这样:数据库中有表 T,其中有两个重要的字段 a 和 b,a 是一个时间戳,精确到秒;b 是用户号;其它字段用来表示用户 b 在时刻 a 发生 ..
  • •      •    1,215 浏览    •   2018-11-06 17:10:25

    如何将数据热导出到文件 

    [图片] 随着时间推移,数据库中数据量会越来越大,如果把查询分析都挂到数据库上,有可能会影响到生产系统的正常运行。所以,一般都会将生产数据库中不再变动的数据定期移出到另一个分析数据库中,由分析 ..
  • •      •    1,178 浏览    •   2018-10-30 12:24:19

    时序数据从分表到分库 

    [图片] 这里的时序数据泛指一切随时间推移而不断增长的数据,比如通话记录、银行交易记录等。 对于数据库来讲,时序数据并没有什么特殊性,可以和普通数据一样放在数据表中。不过,因为不断增长,积累时 ..
  • •      •    1,529 浏览    •   2018-10-23 17:22:35

    BI 系统的前置计算 

    [图片] 某机构上了一套分布式数据仓库,历史数据逐步装进了仓库,然后,基于数据仓库构建了 BI 系统(主要是多维分析)。刚开始,一切都顺利,但随着时间推移,基于中央数据仓库的应用越来越多,几年 ..
  • •      •    1,246 浏览    •   2018-10-16 18:04:56

    性能优化是个手艺活 

    [图片] 大数据的技术本质就是高性能,性能优化也是程序员们的永恒话题。 这里说的性能优化,主要是指在程序员的努力下能达到某种性能提升效果的过程。只要简单换台机器就能加速的事情,业主方要么早就做 ..
  • •      •    1,191 浏览    •   2018-10-10 10:16:13

    数据分布背后的逻辑 

    [图片] 在分布式数据库及大数据平台中,数据如何分布到多台机器中是个很关键的问题。因为很多运算是数据密集型的,如果数据分布做得不好,就会导致网络传输量变大,从而影响性能。 一般来讲,分布式数据 ..
  • •      •    1,482 浏览    •   2018-08-29 11:37:39

    为什么我们需要 C 程序员 

    [图片] 再说一个招聘的话题。 大家可能知道,润乾的软件产品主体都是 Java 写的,几乎没有别的语言。但是,我们在招聘算法程序员时,从来都要求 C 语言背景,会不会 Java 反而无所谓,而 ..
  • •      •    1,915 浏览    •   2018-08-29 11:37:00

    从一道招聘考题谈起 

    [图片] 润乾研发部在招聘时有一个笔试题: 1/2,1/5,1/20,1/64,1/125 都可以写成有限小数,而 1/3,1/7,1/15,1/24 则必须写成无限循环小数。请指出能写成有限 ..
  • •      •    1,402 浏览    •   2018-08-29 11:33:19

    报表工具的 SQL 植入风险 

    [图片] 所有的报表工具都会提供参数功能,主要都是用于根据用户输入的查询条件来选取合适的数据。比如希望查询指定时间段的数据,就可以把时间段作为参数传递给报表,报表在从数据库中取数时将这些参数应 ..
  • •      •    1,244 浏览    •   2018-08-29 11:29:46

    内置的数据无法实现高性能 

    [图片] 这里说的“内”, 是指数据库之内。 当数据量变大时,我们常常会感到数据库的性能下降明显,但是,无论怎样优化 SQL(存储过程)都仍然与根据数据量和运算复杂度计算出来的理论性能相差甚远 ..
  • •      •    1,572 浏览    •   2018-08-10 14:54:36

    怎样生成有关联的测试数据 

    [图片] 在向用户推荐新的数据处理技术,特别是涉及性能优化的场景时,经常会碰到生成测试数据的需求。毕竟,新方案要经过验证才能提交,而优化过程也不是一次就做完的,需要多次不断的迭代改进,这就需要 ..
  • •      •    1,202 浏览    •   2018-08-10 14:51:37

    遍历复用 

    [图片] 减少外存(硬盘)访问量一直是提高大数据计算性能的永恒话题,我们也讨论过列存、压缩等直接减少访问量甚至存储量的手段。除了这些存储层面的方法外,在算法和计算实现环节,也可以想办法减少外存 ..
  • •      •    1,161 浏览    •   2018-08-10 14:50:08

    一些数据压缩手段 

    [图片] 我们知道,外存(硬盘)的性能远远低于内存,即使是同样复杂度的运算(CPU 计算量相同),如果能减少外存的访问量,也会大大提高整体性能。甚至有时我们需要用 CPU 换硬盘,即宁可多消耗 ..
  • [图片] 最近碰到几家用户在使用 HBase 或者试图使用 HBase 来做高性能查询,场景也比较类似,就是从几十亿甚至上百亿记录中按键值找出相关记录来。按说,这种 key-value 式的数 ..
关注乾学院公众号