游客nsyhaoxcmeiq6_个人页

个人头像照片 游客nsyhaoxcmeiq6
个人头像照片
38
0
0

个人介绍

暂无个人介绍

擅长的技术

获得更多能力
通用技术能力:

暂时未有相关通用技术能力~

云产品技术能力:

暂时未有相关云产品技术能力~

阿里云技能认证

详细说明
暂无更多信息

2024年12月

  • 12.02 11:09:52
    发表了文章 2024-12-02 11:09:52

    分布式是大数据处理的万能药?

    分布式技术在大数据处理中广泛应用,通过将任务拆分至多个节点执行,显著提升性能。然而,它并非万能药,适用于易于拆分的任务,特别是OLTP场景。对于复杂计算如OLAP或批处理任务,分布式可能因数据交换延迟、非线性扩展等问题而表现不佳。因此,应先优化单机性能,必要时再考虑分布式。SPL等工具通过高效算法提升单机性能,减少对分布式依赖。

2024年11月

  • 11.29 14:03:07
    发表了文章 2024-11-29 14:03:07

    解放数据科学家的神器

    SQL 和 Python 在数据科学领域虽广泛使用,但它们各自存在不少问题,如 SQL 代码复杂难写、调试困难、性能低下且封闭性高,而 Python 在复杂计算、调试及大数据处理方面同样不尽人意。这些问题严重消耗了数据科学家的时间和精力。esProc SPL 作为一种专为结构化数据处理设计的工具,以其简洁易懂的语法、强大的调试功能、高效的大数据处理能力和开放性,有效解决了上述问题,帮助数据科学家提高工作效率,更好地专注于业务分析。SPL 已经开源,可免费下载使用。
  • 11.28 11:21:16
    发表了文章 2024-11-28 11:21:16

    为什么大数据平台会回归SQL

    在大数据领域,尽管非结构化数据占据了大数据平台80%以上的存储空间,结构化数据分析依然是核心任务。SQL因其广泛的应用基础和易于上手的特点成为大数据处理的主要语言,各大厂商纷纷支持SQL以提高市场竞争力。然而,SQL在处理复杂计算时表现出的性能和开发效率低下问题日益凸显,如难以充分利用现代硬件能力、复杂SQL优化困难等。为了解决这些问题,出现了像SPL这样的开源计算引擎,它通过提供更高效的开发体验和计算性能,以及对多种数据源的支持,为大数据处理带来了新的解决方案。
  • 11.27 11:16:16
    发表了文章 2024-11-27 11:16:16

    三行五行的 SQL 只存在于教科书和培训班

    本文探讨了SQL在实际应用中的复杂性和难度,指出教科书中的SQL例句虽然简单,但现实中的SQL查询往往长达数千行,涉及多层嵌套,对程序员构成挑战。文章分析了SQL的两个主要缺陷:集合化不彻底和缺乏有序支持,并通过具体示例展示了这些问题如何影响SQL的编写。最后,文章推荐使用esProc SPL,一种增强的编程语言,能够更自然地处理集合和有序数据,简化复杂查询的编写。
  • 11.26 10:32:08
    发表了文章 2024-11-26 10:32:08

    云上真有无穷算力吗?

    本文探讨了云计算环境下“算力无限”的误区,指出即使云上硬件资源看似无限,但由于网络延迟、算法模型限制及成本等因素,实际运算效率未必能线性扩展。文章强调了提高单机运算效率的重要性,推荐使用SPL等工具优化算法,以实现更高性能。
  • 11.25 11:44:02
    发表了文章 2024-11-25 11:44:02

    数据库太慢跑崩的另一罪魁

    JOIN是数据库计算中的难点,传统方法如HASH JOIN在处理大规模数据时效率低下,甚至导致系统崩溃。esProc SPL通过创新的算法,如维表主键参与的外键关联优化、维表序号化等,显著提高了JOIN操作的性能,尤其在处理超大数据集时表现出色。SPL不仅支持物理有序存储,还提供了高效的JOIN函数,适用于多种JOIN场景,包括多层维表预关联和主子表归并。此外,esProc SPL具有良好的扩展性和易用性,支持Java环境下的集成,提供丰富的开发调试工具,是处理复杂数据关联的理想选择。
  • 11.22 14:49:51
    发表了文章 2024-11-22 14:49:51

    数据库太慢跑崩的一大罪魁

    帐号去重计数是商业分析中的常见需求,通过 SQL 的 COUNT(DISTINCT ...) 实现。然而,当数据量庞大时,COUNT(DISTINCT) 的性能问题凸显,可能导致数据库崩溃。esProc SPL 通过有序数据处理和高效的去重算法,解决了这一难题,尤其适用于复杂的漏斗分析等场景,显著提升了计算效率和资源利用率。
  • 11.21 14:35:46
    发表了文章 2024-11-21 14:35:46

    从 ES Kafka Mongodb Restful ... 取到 json 之后

    JSON 是一种广泛使用的数据交换格式,但其计算和处理能力有限。esProc SPL 是一款强大的开源计算引擎,能够高效解析 JSON 数据,并支持复杂的过滤、分组、连接等操作。它不仅兼容多种数据源,如 RESTful、ElasticSearch、MongoDB 和 Kafka,还提供了游标对象处理大数据流,支持与 Java 应用无缝集成,实现灵活的业务逻辑处理。
  • 11.20 10:24:12
    发表了文章 2024-11-20 10:24:12

    单机顶集群的大数据技术来了

    大数据时代,分布式数仓如MPP成为热门技术,但其高昂的成本让人望而却步。对于多数任务,数据量并未达到PB级,单体数据库即可胜任。然而,由于SQL语法的局限性和计算任务的复杂性,分布式解决方案显得更为必要。esProc SPL作为一种开源轻量级计算引擎,通过高效的算法和存储机制,实现了单机性能超越集群的效果,为低成本、高效能的数据处理提供了新选择。
  • 11.19 14:11:58
    发表了文章 2024-11-19 14:11:58

    不用 SQL 的数据仓库

    esProc 是一种非 SQL 型数据仓库,采用 SPL 作为查询语言,旨在解决 SQL 在复杂计算、开放性和性能等方面的局限。SPL 支持过程计算、有序运算及丰富的数据类型,能够直接处理多样数据源,无需数据先入库。此外,esProc 通过文件存储和高性能算法优化,实现了计算与存储的解绑,降低了运维成本,提升了计算性能。
  • 11.18 14:19:32
    发表了文章 2024-11-18 14:19:32

    面向 Java 程序员的 SQLite 替代品

    SQLite 是轻量级数据库,适用于小微型应用,但其对外部数据源支持较弱、无存储过程等问题影响了开发效率。esProc SPL 是一个纯 Java 开发的免费开源工具,支持标准 JDBC 接口,提供丰富的数据源访问、强大的流程控制和高效的数据处理能力,尤其适合 Java 和安卓开发。SPL 代码简洁易懂,支持热切换,可大幅提高开发效率。
  • 11.15 15:01:58
    发表了文章 2024-11-15 15:01:58

    Stream&Kotlin 还能再进化成什么

    Java 早期缺乏简洁的数据集运算语法,导致开发效率低下。Java 8 引入的 Stream API 和 Kotlin 在一定程度上改善了这一状况,但仍不及 SQL 简洁。 SPL 作为一种解释型动态语言,提供了比 SQL 更强大的结构化数据处理能力,支持丰富的计算函数和流程控制语句,代码简洁易维护,且可无缝集成到 Java 应用中,支持多种数据源,适用于复杂业务逻辑的开发。
  • 11.14 11:27:28
    发表了文章 2024-11-14 11:27:28

    比 SQL 快出数量级的大数据计算技术

    SQL 是大数据计算中最常用的工具,但在实际应用中,SQL 经常跑得很慢,浪费大量硬件资源。例如,某银行的反洗钱计算在 11 节点的 Vertica 集群上跑了 1.5 小时,而用 SPL 重写后,单机只需 26 秒。类似地,电商漏斗运算和时空碰撞任务在使用 SPL 后,性能也大幅提升。这是因为 SQL 无法写出低复杂度的算法,而 SPL 提供了更强大的数据类型和基础运算,能够实现高效计算。
  • 11.13 16:30:08
    发表了文章 2024-11-13 16:30:08

    格子里的低代码

    SPL(Structured Process Language)是一种专为处理结构化数据设计的开源编程语言,其独特之处在于代码写在格子里,而非传统的文本形式。SPL 的格子代码不仅整齐直观,还支持直接使用格子名作为变量名,简化了变量管理。此外,SPL 引入了函数选项和层次参数,使代码更加简洁高效。相比 Java、SQL 和 Python,SPL 在处理复杂数据计算时表现出色,能够显著减少代码量,提高开发效率和调试便利性。
  • 11.12 15:49:43
    发表了文章 2024-11-12 15:49:43

    数据分析编程:SQL,Python or SPL?

    数据分析编程用什么,SQL、python or SPL?话不多说,直接上代码,对比明显,明眼人一看就明了:本案例涵盖五个数据分析任务:1) 计算用户会话次数;2) 球员连续得分分析;3) 连续三天活跃用户数统计;4) 新用户次日留存率计算;5) 股价涨跌幅分析。每个任务基于相应数据表进行处理和计算。
  • 11.11 15:44:19
    发表了文章 2024-11-11 15:44:19

    数据库有成千上万的表是怎么回事?

    大型数据库经过多年运行常积累数以万计的数据表,其中很多是中间表,占用大量资源,导致数据库膨胀。这些中间表大多为数据呈现服务,因前端报表频繁修改而不断增加。SPL 通过独立计算引擎,将中间数据移至文件系统,减少数据库负担,提高性能,优化资源利用。
  • 11.08 17:34:54
    发表了文章 2024-11-08 17:34:54

    跑批为什么这么难

    业务系统产生的明细数据需经加工处理以支持企业经营,此过程称作“跑批”,常在夜间进行以免影响生产系统。跑批任务涉及大量数据及复杂计算,导致耗时较长。开源计算引擎SPL可直接基于文件系统计算,提供更优算法与存储机制,显著提升跑批效率。例如,L银行贷款协议跑批任务从2小时缩短至10分钟,性能提高12倍;P保险公司车险业务的历史保单关联任务从近2小时缩短至17分钟,速度提升近7倍;T银行贷款跑批任务提速204倍。
  • 11.07 14:43:56
    发表了文章 2024-11-07 14:43:56

    快出数量级的性能是怎样炼成的

    我们通过使用开源 SPL 重写了多个金融行业的 SQL 任务,实现了显著的性能提升,如保险公司团保明细单查询提速 2000+ 倍、银行 POS 机交易报表提速 30+ 倍等。这些优化的核心在于使用了更低复杂度的算法,而非依赖硬件加速。SPL 基于离散数据集理论,提供了丰富的高性能算法,使得复杂任务的优化成为可能。更多案例和详细技术解析可参见乾学院的相关课程和图书。
  • 11.06 10:22:12
    发表了文章 2024-11-06 10:22:12

    倍增 Java 程序员的开发效率

    应用计算困境:Java 作为主流开发语言,在数据处理方面存在复杂度高的问题,而 SQL 虽然简洁但受限于数据库架构。SPL(Structured Process Language)是一种纯 Java 开发的数据处理语言,结合了 Java 的架构灵活性和 SQL 的简洁性。SPL 提供简洁的语法、完善的计算能力、高效的 IDE、大数据支持、与 Java 应用无缝集成以及开放性和热切换特性,能够大幅提升开发效率和性能。
  • 11.05 14:21:49
    发表了文章 2024-11-05 14:21:49

    基于对象 - 事件模式的数据计算问题

    基于对象-事件模式的数据计算是商业中最常见的数据分析任务之一。对象如用户、账号、商品等,通过唯一ID记录其相关事件,如操作日志、交易记录等。这种模式下的统计任务包括无序计算(如交易次数、通话时长)和有序计算(如漏斗分析、连续交易检测)。尽管SQL在处理无序计算时表现尚可,但在有序计算中却显得力不从心,主要原因是其对跨行记录运算的支持较弱,且大表JOIN和大结果集GROUP BY的性能较差。相比之下,SPL语言通过强化离散性和有序集合的支持,能够高效地处理这类计算任务,避免了大表JOIN和复杂的GROUP BY操作,从而显著提升了计算效率。
  • 11.04 15:36:47
    发表了文章 2024-11-04 15:36:47

    优化银行预计算固定查询成实时灵活查询

    W银行指标查询系统用于计算和展示各类汇总指标,支持银行经营决策。因数据量庞大,系统采用预计算方式,但随着指标数量激增,预计算方式逐渐成为瓶颈。文章详细介绍了系统面临的挑战及优化方案,包括列式存储、有序归并、多线程计算等技术,最终实现了从明细数据实时计算指标的目标,显著提升了系统性能。
  • 11.01 11:18:26
    发表了文章 2024-11-01 11:18:26

    我们需要怎样的 OLAP

    OLAP(在线分析处理)最初指代人员对数据进行交互式分析操作,但如今其概念被BI软件狭义化为多维分析。真正的在线分析应包括业务人员基于经验做出猜测并验证,从历史数据中寻找规律。多维分析虽能提供有用信息,但难以完成复杂计算。SPL(结构化查询语言的一种变体)因其强大的数据处理能力和易管理性,成为业务人员和开发人员进行复杂数据分析的理想工具。

2024年10月

  • 10.31 15:28:05
    发表了文章 2024-10-31 15:28:05

    优化电商漏斗分析从 3 分钟 + 到 10 秒

    A电商公司常用漏斗转化率分析来统计用户购物行为。此过程需处理大量用户会话数据,传统SQL实现复杂低效。文中提供了一种基于SPL的专业数据计算引擎解决方案,通过预先排序数据和有序归并算法,显著提升了计算性能,使14天跨度3步漏斗分析在10秒内完成,远超预期。该方法不仅代码简洁,易于扩展,还大幅降低了内存消耗,适合处理大规模数据集。
  • 10.30 11:37:04
    发表了文章 2024-10-30 11:37:04

    没有数据库也能用 SQL

    SPL(Structured Process Language)是一款开源软件,允许用户直接对CSV、XLS等文件进行SQL查询,无需将数据导入数据库。它提供了标准的JDBC驱动,支持复杂的SQL操作,如JOIN、子查询和WITH语句,还能处理非标准格式的文件和JSON数据。SPL不仅简化了数据查询,还提供了强大的计算能力和友好的IDE,适用于多种数据源的混合计算。
  • 10.28 15:49:02
    发表了文章 2024-10-28 15:49:02

    基于对象 - 事件模式的数据计算问题

    基于对象-事件模式的数据计算是商业中最常见的数据分析任务之一。这种模式涉及对象(如用户、账户、商品等)及其相关的事件记录,通过这些事件数据可以进行各种统计分析,如漏斗分析、交易次数统计等。然而,SQL 在处理这类任务时表现不佳,特别是在有序计算方面。SPL 作为一种强化离散性和有序集合的语言,能够高效地处理这类计算,避免了大表 JOIN 和大结果集 GROUP BY 的性能瓶颈。通过按 ID 排序和分步计算,SPL 能够显著提高计算效率,并支持实时数据处理。
  • 10.23 15:27:44
    发表了文章 2024-10-23 15:27:44

    1T 数据到底有多大?

    本文探讨了1TB数据量的实际意义,通过对比日常业务量和数据库处理能力,揭示了1TB数据的庞大。文中指出,虽然一些机构拥有PB级别的数据,但这更多是存储需求而非计算需求。文章最后强调,优化TB级数据处理效率,如将几小时的处理时间缩短至几分钟,对于大多数应用场景来说更为实际和重要。
  • 10.22 11:43:53
    发表了文章 2024-10-22 11:43:53

    ClickHouse 在什么场景下才管用?

    ClickHouse 是一款以速度快著称的分析型数据库,尤其在列式宽表遍历方面表现出色。然而,面对复杂查询和关联运算时,ClickHouse 的性能急剧下降,甚至无法执行某些任务。相比之下,esProc SPL 通过更简洁的 SPL 语法和强大的优化能力,在各种复杂场景下均表现出色,全面超越 ClickHouse。实际案例显示,esProc SPL 在处理大规模数据时,性能提升可达数十倍。
  • 10.22 10:01:56
    发表了文章 2024-10-22 10:01:56

    SQL 的困难源于关系代数

    SQL 作为结构化数据计算的主要语言,虽然广泛应用于关系数据库和大数据平台,但在复杂计算场景中表现不佳,如股票连涨天数和大集合中的 TopN 计算。这些问题源于 SQL 的理论基础——关系代数,缺乏必要的数据类型和运算。相比之下,esProc SPL 通过引入“离散数据集”这一新代数体系,能够更简洁高效地处理复杂计算任务。
  • 10.21 13:36:21
    发表了文章 2024-10-21 13:36:21

    数据库的 IO 到底有多慢?

    本文通过对比Java程序从Oracle、MySQL数据库读取数据与读取文本文件的性能,揭示数据库IO速度远低于文件读取的现状。在相同硬件环境下,读取3000万行记录,Oracle耗时280秒,MySQL耗时380秒,而文本文件仅需42秒。此外,通过SPL实现并行处理,可显著提升读取速度,尤其是在处理大规模数据时。实验还探讨了数据库接口慢的问题及其对性能的影响,提出在追求高性能计算时应尽量避免从数据库读取数据的建议。

2024年05月

  • 04.30 12:22:05
    发表了文章 2024-04-30 12:22:05

    令应用开发效率飙升的 Java 类库

    更多地使用 Java 而避免存储过程和复杂 SQL 是当前应用开发的一个潮流,这会在架构上带来优势,但用 Java 实现 SQL 式的运算并不是非常方便,很多任务要从头写起,开发效率其实反而会降低。
  • 04.07 15:29:03
    发表了文章 2024-04-07 15:29:03

    列式存储的另一面

    列存是常见的数据存储技术,说到列存常常就意味着高性能,现代分析型数据库基本都会把列存作为标配, 列存的基本原理是减少硬盘的读取量。一个数据表有多个列,但运算可能只会用到其中少数几列,采用列存时,用不着的列就不必读出来了,而采用行式存储时,则要把所有列都扫描一遍。当取用列只占总列数的小部分时,列存的 IO 时间优势会非常大,就会显得计算速度快了很多。 不过,列存也有另一面,并不是在任何场景下都有优势。
  • 03.21 16:18:25
    发表了文章 2024-03-21 16:18:25

    SQL 的困难源于关系代数

    SQL 的数学基础就是关系代数,是用来实现批量结构化数据计算的代数体系,这也是采用 SQL 的数据库又被叫做关系数据库的原因。 关系代数已经发明五十年了,五十年前的应用需求以及硬件环境,和今天比的差异是很巨大了。由于存量用户太多,而且也还没有成熟的新技术出现,基于关系代数设计的 SQL,今天仍然是最重要的数据库开发语言。虽然这几十年来也有一些改进完善,但根子并没有变,面对当代的复杂需求和硬件环境,关系数据库并没有那么得心应手了。
  • 02.29 15:56:22
    发表了文章 2024-02-29 15:56:22

    怎样写出可在各种数据库间移植的SQL

    国际标准没有对这些函数做规定,这种 SQL 语句就会和数据库相关而无法移植了,而这些函数在应用开发中还特别常见。 Hibernate 能将包括这些函数的标准 HQL 语句转换成不同数据库的 SQL,但 HQL 支持的函数太少,碰到不认识的函数还是要分别注册,这就丧失了可移植性;而且 HQL 能生成的 SQL 本身也比较简单,覆盖面太窄了。
  • 12.21 13:51:16
    发表了文章 2023-12-21 13:51:16

    怎样做多数据源的混合计算

    早期应用通常只会连接一个数据库,计算也都由数据库完成,基本不存在多数据源混合计算的问题。而现代应用的数据源变得很丰富,同一个应用也可能访问多种数据源,各种 SQL 和 NoSQL 数据库、文本 /XLS、WebService/Restful、Kafka、Hadoop、…。多数据源上的混合计算就是个摆在桌面需要解决的问题了。 直接在应用中硬编码实现是很繁琐的,Java 这些常用的应用开发语言很不擅长做这类事,和 SQL 比,简洁性差得很远。

2023年10月

  • 10.19 16:24:37
    发表了文章 2023-10-19 16:24:37

    SQL该淘汰了

    关系代数已经发明五十年了,五十年前的应用需求以及硬件环境,和今天比的差异是很巨大了,继续延用五十年前的理论来解决今天的问题,听着就感觉太陈旧了?然而现实就是这样,由于存量用户太多,而且也还没有成熟的新技术出现,基于关系代数的 SQL,今天仍然是最重要的数据库语言。虽然这几十年来也有一些改进完善,但根子并没有变,面对当代的复杂需求和硬件环境,SQL 不胜任也是情理之中的事。

2023年09月

  • 09.26 15:12:51
    发表了文章 2023-09-26 15:12:51

    应用成本低出 N 倍的数据分析引擎 esProc SPL

    我们介绍的 esProc SPL 是一个数据分析引擎,具备 4 个主要特点:低代码、高性能、轻量级、全功能。SPL 不仅写得简单,跑得也更快,既可以独立使用还能与应用集成嵌入,同时适用于多种应用场景。使用 esProc SPL 实现数据分析业务,整体应用成本将比以 SQL 为代表的传统技术低出几倍。
  • 09.18 17:14:02
    发表了文章 2023-09-18 17:14:02

    数据湖的不可能三角

    数据湖有三个重要满足点,既要保持数据的原样(全量信息入湖),也要可以方便计算使用(数据变现),还希望建设成本低廉(显然的)。但是,当前的技术方案无法同时满足这三点。
  • 09.15 11:46:56
    发表了文章 2023-09-15 11:46:56

    SQL为什么动不动就N百行以K计

    发明 SQL 的初衷之一显然是为了降低人们实施数据查询计算的难度。SQL 中用了不少类英语的词汇和语法,这是希望非技术人员也能掌握。确实,简单的 SQL 可以当作英语阅读,即使没有程序设计经验的人也能运用。 然而,面对稍稍复杂的查询计算需求,SQL 就会显得力不从心,经常写出几百行有多层嵌套的语句。这种 SQL,不要说非技术人员难以完成,即使对于专业程序员也不是件容易的事,常常成为很多软件企业应聘考试的重头戏。三行五行的 SQL 仅存在教科书和培训班,现实中用于报表查询的 SQL 通常是以“K”计的。
  • 发表了文章 2024-12-02

    分布式是大数据处理的万能药?

  • 发表了文章 2024-11-29

    解放数据科学家的神器

  • 发表了文章 2024-11-28

    为什么大数据平台会回归SQL

  • 发表了文章 2024-11-27

    三行五行的 SQL 只存在于教科书和培训班

  • 发表了文章 2024-11-26

    云上真有无穷算力吗?

  • 发表了文章 2024-11-25

    数据库太慢跑崩的另一罪魁

  • 发表了文章 2024-11-22

    数据库太慢跑崩的一大罪魁

  • 发表了文章 2024-11-21

    从 ES Kafka Mongodb Restful ... 取到 json 之后

  • 发表了文章 2024-11-20

    单机顶集群的大数据技术来了

  • 发表了文章 2024-11-19

    不用 SQL 的数据仓库

  • 发表了文章 2024-11-18

    面向 Java 程序员的 SQLite 替代品

  • 发表了文章 2024-11-15

    Stream&Kotlin 还能再进化成什么

  • 发表了文章 2024-11-14

    比 SQL 快出数量级的大数据计算技术

  • 发表了文章 2024-11-13

    格子里的低代码

  • 发表了文章 2024-11-12

    数据分析编程:SQL,Python or SPL?

  • 发表了文章 2024-11-11

    数据库有成千上万的表是怎么回事?

  • 发表了文章 2024-11-08

    跑批为什么这么难

  • 发表了文章 2024-11-07

    快出数量级的性能是怎样炼成的

  • 发表了文章 2024-11-06

    倍增 Java 程序员的开发效率

  • 发表了文章 2024-11-05

    基于对象 - 事件模式的数据计算问题

正在加载, 请稍后...
滑动查看更多
正在加载, 请稍后...
暂无更多信息
正在加载, 请稍后...
暂无更多信息