ClickHouse是近年来备受关注的开源列式数据库,主要用于数据分析(OLAP)领域。目前国内社区火热,各个大厂纷纷跟进大规模使用:内部用ClickHouse来做用户行为分析,内部一共几千个ClickHouse节点,单集群最大1200节点,总数据量几十PB,日增原始数据300TB左右。
有的时候,我们可能会遇到大数据计算中一个最棘手的问题——数据倾斜,此时Spark作业的性能会比期望差很多。数据倾斜调优,就是使用各种技术方案解决不同类型的数据倾斜问题,以保证Spark作业的性能。
Idea + Tomcat8 新建并运行一个JavaWeb项目,如何新建一个JavaWeb项目,这里需要预先下载Tomcat,并且配置好环境变量。
spring mvc 拦截器是我们项目开发中用到的一个功能,常常用于对Handler进行预处理和后处理。本案例来演示一个较简单的springmvc拦截器的使用,并通过分析源码来探究拦截器的执行顺序是如何控制的。
绝大多数task执行得都非常快,但个别task执行极慢。比如,总共有1000个task,997个task都在1分钟之内执行完了,但是剩余两三个task却要一两个小时。这种情况很常见。
现在,我们准备介绍计算机科学史上伟大的成就之一:Dijkstra最短路径算法。这个算法适用于边的长度均不为负数的有向图,它计算从一个起始顶点到其他所有顶点的最短路径的长度。在正式定义这个问题(3.1节)之后,我们讲解这个算法(3.2节)以及它的正确性证明(3.3节),然后介绍一个简单直接的实现(3.4节)。在第4章中,我们将看到这种算法的一种令人惊叹的快速实现,它充分利用了堆这种数据结构。
在使用mybaits时,首先会创建一个SqlSessionFactory对象,该对象是由SqlSessionFactoryBuilder对象,调用该对象的build方法加载全局XML配置的流文件构建出一个SqlSessionFactory对象。
说到散列,一般对应于散列表(哈希表)和散列函数。我们今天不谈哈希表,仅谈下散列函数。
ueditor 修改回显时,XML和HTML标签被删除或被过滤的问题解决方法。在系统使用 ueditor 中发现在输入标签保存,再进入修改文章时,原有的xml标签被删除。
在广告展示数一定的条件下,点击率的高低就是决定一个广告能否被更多人看到的因素。本文主要针对“点击率”这一因素进行分析,与大家分享。
线程池中线程的使用率提升,减少对象的创建、销毁;线程池可以控制线程数,有效的提升服务器的使用资源,避免由于资源不足而发生宕机等问题;
MyBatis 令人喜欢的一大特性就是动态 SQL。在使用 JDBC 的过程中, 根据条件进行 SQL 的拼接是很麻烦且很容易出错的。MyBatis 动态 SQL 的出现, 解决了这个麻烦。
关于HTML和canvas的处理,在之前的文章中也已经讲过了。基本上也不会有什么变化,在这里再说一下。
Mybatis的SQL语句可以基于注解的方式写在类方法上面,更多的是以xml的方式写到xml文件。Mybatis中SQL语句需要我们自己手动编写或者用generator自动生成。编写xml文件时,MyBatis支持两种参数符号,一种是#,另一种是$。
本文将从反编译的工具,反编译举例等角度来讲解。
本节主要介绍动态SQL,其主要用于解决用户提交的查询条件不确定的情况。用户提交的查询条件不同,执行的SQL也就不同。若针对每种情况都一一列出来,将会出现大量SQL语句。针对这样的情况可以用动态SQL解决。
介绍以下几个方面:容器编排、Kubernetes适用条件、Kubernetes设计原理和体系结构以及Kubernetes支持的不同运行时环境。读者将熟悉开源仓库的整体结构,并为解决其余问题打好基础。
浏览器缓存是前端性能优化的重要一环,对于前端效率提升的重要性,不言而喻。之前对于浏览器缓存也是一知半解,这次借着H5页面缓存优化的东风整理了一下本地浏览器端的缓存机制,如强制缓存、协商缓存等,并且然后结合门户域各部件(官网、云社区、云市场、个人中心、APP)当前的缓存机制进一步分解,旨在呈现下当前华为云官网的缓存策略,供大家参考。
给函数和变量取个好名字是优秀程序员的基本功,取名的基本要求是 名副其实,见文知意。如果名称需要注释来补充,那就不算是个好名字。
Redis是一个速度非常快的非关系型数据库(non-relational database),它可以存储键(key)与5种不同类型的值(value)之间的映射(mapping),可以将存储在内存的键值对数据持久化到硬盘。可以使用复制特性来扩展读性能,还可以使用客户端分片来扩展写性能。
关注时代Java