数据蒋堂 •
164 引用 •
97 回帖 •
562 关注
博客
关注
-
同样的数据计算任务,用 SQL 写和用 Java 写,后者常常会长出数倍。代码长不仅仅是写起来很繁琐,也不利于理解整体业务逻辑结构,算法过程都湮没在细节中。 为什么 Java 会比 SQL 长 ..
-
教科书中 SQL 例句通常都很简单易懂,甚至可以当英语来读,这就给人造成 SQL 简单易学的印象。 但实际上,这种三行五行的 SQL 只存在于教科书和培训班,我们在现实业务中写的 SQL 不会 ..
-
我们经常听到大数据产品宣传自己性能好,“万亿秒查”是个常见的说法,大概意思就是上万亿行数据中找出查出满足条件的数据,可以秒级返回。 这是真地吗? 看过“[链接]”那期的同学大概都会觉得不可能。 ..
-
许多大型数据库在运行多年后都会积累出很多的数据表,严重者数以万计,非常臃肿。这些数据表年代久远,有些已经忘记建设原因,也可能已不再有用,但因为很难确认而不敢删除。这给运维工作带来巨大的负担。伴 ..
-
我们知道,SQL 很像英语,简单的 SQL 语句直接可以作为英语读。除了 SQL 外,其它主要程序设计语言都没有这样,语法中就算有英语单词也仅仅是作为某些概念或操作的助记符而已,写出来的是形式 ..
-
一英里不是个很长的距离,一立方英里相对于地球也不会让人觉得是个很大的空间。然后我说,这个空间内能装下全世界所有人,你会不会觉到很惊讶?其实不过这话不是我说的,是美国作家房龙写的。 业内有个著名 ..
-
我们在学习 SQL 时,常常会听到这样的说法:SQL 是一种声明式语言。你只需要告诉它要做什么,而不需要告诉它怎么做,它会自己找到实现方法。也就是说,你要只用它描述任务目标,而不需要说明计算过 ..
-
很多现代应用会把数据计算和处理任务从数据库移出来采用 Java 实现,这样能获得架构上的好处,而且 Java 有完善过程处理能力,应对日益复杂的业务逻辑比 SQL 更得心应手(虽然代码不短)。 ..
-
早期应用通常只会连接一个数据库,计算也都由数据库完成,基本不存在多数据源混合计算的问题。而现代应用的数据源变得很丰富,同一个应用也可能访问多种数据源,各种 SQL 和 NoSQL 数据库、文本 ..
-
客户画像在当前商业分析中很时髦。说白了也简单,就是给客户打上各种标签,再用这些标签定义出不同的客群分类(所谓画像),然后统计各类客群的成员数量(以及变化情况)。 逻辑上看,标签也就是维度,或者 ..
-
json 是个好东西,它可以使用公共的文本形式承载了丰富的结构化数据的信息。现代很多技术都在喜欢使用 json 作为数据传输格式,比如 Elastic Search,Restful,Kafka ..
-
TP 太撑上 AP,这几乎是业界的通识,而且也有了多年的成功实践,这还有什么可讨论的吗? 上了 AP 库确实能缓存 TP 库的计算压力,而且 AP 库通常计算性能更好,还能给用户带来更优的体验 ..
-
没错,就是著名的 JOIN。 JOIN 一直是数据库计算的老大难问题,业界想了很多办法来计算它。如果不做任何优化,那就是两个关联表循环遍历,这是个乘法级的复杂度,数据量稍大一点就受不了。成熟的 ..
-
手头有些 csv/xls 文件,比如这样的: [图片] [图片] 这种数据很适合用 SQL 做查询,但可惜 SQL 只能用在数据库,要安装个数据库并把这些文件导入,为这么个目标搞的整个应用系统 ..
-
Java 很长时间都没有提供直接的数据集运算语法,写个简单的 SUM 都要很多行,更不要说分组、排序等复杂运算了。完全同样数据处理功能的代码远比 SQL 长,开发效率低下。 从 Java8 开 ..
-
就是非常不起眼的帐号去重计数,用 SQL 写就是 COUNT(DISTINCT …)。 帐号去重计数在商业分析中很常见也有重要的业务意义。这里的帐号可能是用户 ID、银行帐户、手机号、车牌号、 ..
-
很多小微型应用程序也需要一些数据处理和计算能力,如果集成一个数据库就显得太沉重了,小巧轻量的 SQLite 是个不错的选择,因而被广泛应用。 不过,SQLite 也有些不方便的地方。SQLit ..
-
Oracle 是普遍使用的数据库,它不是专业的分析型数据库,在数据量较大时常常会计算性能不佳,影响用户体验。现在有不少新的分析型数据库在性能上比 Oracle 更快,甚至可以说远超。那么在 O ..
-
Hibernate,Mybatis 以及新兴的 JOOQ 等 ORM 技术能够方便地将数据库表映射成 Java 对象,并提供自动读写能力。ORM 技术使得用 Java 开发数据库应用变得更为高 ..
-
大数据时代的分布式数仓(如 MPP)是个热门技术,甚至到了提到数据仓库言必称分布式的地步。 但是,分布式数仓真有必要吗?毕竟这些分布式数仓产品都不便宜,无论是采购成本还是运维成本都很高。是不是 ..
-
年代久远的数据使用频率通常会变低,这时候怎么存储和计算就是个问题。 使用频率低并不等于完全不再使用。如果把这些数据都从数据库中归档出去,再查询统计时又要再次导入数据库,费时费力。经常会发生查询 ..
-
微服务这些年比较时髦,用 Java 取代 SQL 及存储过程开发业务逻辑,确实能获得架构上的优势,细节这里就不展开了,微服务能流行当然有它的道理。 但微服务真地“微”吗? 我们知道,面对同样业 ..
-
存储过程是个让人爱恨交加的东西。 它的意义自不必提,各大老牌数据库都支持,而且经常以此来挤兑一些还不支持存储过程的新数据库。反过来,它的缺点也很明显,能见到很多开发团队在努力拆除存储过程,在应 ..
-
任意的 SQL 语句都可移植是做不到的。因为各种数据库的功能并不一样,某些数据库的语法在另一种数据库中根本就没有对应的实现机制,这时当然就不可能移植了。 如果我们不用数据库的特殊功能,只在国际 ..
-
更多地使用 Java 而避免存储过程和复杂 SQL 是当前应用开发的一个潮流,这会在架构上带来优势,但用 Java 实现 SQL 式的运算并不是非常方便,很多任务要从头写起,开发效率其实反而会 ..