
综合
sunyang098
这个作者很懒,什么都没留下…
展开
-
clickhouse 实现 lag/lead
clickhouse中的lead和lag实现有多种方法,在标准的SQL中使用的windows function即可实现。示例数据:CREATE TABLE llexample ( g Int32, a Date )ENGINE = Memory;INSERT INTO llexample SELECT number % 3, toDate('2020-01-01') + numberFROM numbers(10);SELECT * FROM llexa...转载 2022-05-09 18:27:28 · 1640 阅读 · 0 评论 -
Map读写性能
def main(args: Array[String]): Unit = { val t3 = System.currentTimeMillis() val key = "a" for (j <- 0 to 100000) { var expData : scala.collection.mutable.Map[String, ArrayBuffer[Double]] = scala.collection.mutable.Map("a" -> ArrayB.原创 2021-12-24 14:49:57 · 1065 阅读 · 0 评论 -
java中if和switch哪个效率快
本文转载自: https://www.cnblogs.com/hujinshui/p/6230158.html ,如侵删!首先要看一个问题,if 语句适用范围比较广,只要是 boolean 表达式都可以用 if 判断;而 switch 只能对基本类型进行数值比较。两者的可比性就仅限在两个基本类型比较的范围内。说到基本类型的数值比较,那当然要有两个数。然后重点来了——if 语句每一句都是独立的,看下面的语句:if (a == 1) ...else if (a == 2) ...这样 a 要被读入转载 2020-12-15 19:58:47 · 884 阅读 · 0 评论 -
scala之ArrayBuffer添加元素append()与+=效率对比
ArrayBuffe添加10个元素,循环一亿次,append()耗时30秒,+=耗时2秒,append()耗时是+=的15倍原创 2020-11-16 17:32:01 · 4224 阅读 · 7 评论 -
Java NIO之Buffer
Java NIO中的Buffer用于和NIO通道进行交互。数据是从通道读入缓冲区,从缓冲区写入到通道中的。缓冲区本质上是一块固定大小的内存,其作用是一个存储器或运输器。这块内存被包装成NIO Buffer对象,并提供了一组方法,用来方便的访问该块内存。1、缓冲区基础理论上,Buffer是经过包装后的数组,而Buffer提供了一组通用api对这个数组进行操作。1.1、属性:容量(Capacity)缓冲区能够容纳的数据元素的最大数量。这一容量在缓冲区创建时被设定,并且永远不能被改变。上界转载 2020-11-05 11:13:52 · 294 阅读 · 0 评论 -
for循环的底层原理
# 自定义可迭代对象:在类里面提供了__iter__方法创建的对象就是可迭代对象# 自定义迭代器对象:在类里面提供__iter__和__next__的方法创建的对象就是迭代器对象# 迭代器的作用: 记录当前数据的位置以后获取下一个位置的值# iter函数:获取可迭代对象的迭代器, 会调用可迭代对象身上的__iter__方法# next函数:获取迭代器中下一个值,会调用迭代器对象身上的__next__方法# for 循环的本质: 如果遍历的对象是可迭代对象那么会通过iter函数获取迭代器,然后通过n转载 2020-11-05 11:11:51 · 1480 阅读 · 0 评论 -
Apache Kafka消费者组subscribe和assign的正确使用
同时进行“自动”和“手动”的分区分配是会互相影响的,有时会把事情搞糟。正确的使用,首先要了解这两种方式的场景。消费者组的使用场景Kafka里的消费者组有两个使用的场景:“队列模式”:在同一组的消费者共同消费一个主题的所有消息,而且确保一条消息只被一个消费者处理。一个主题的所有的分区会和一个消费组的所有消费者做关联:每个消费者和一到多个分区做关联,接收它们的消息。反向说,一个分区只会与一个消费者关联,它的消息不会被其它的消费者接收。 最开始只有一个消费者时,所有的分区都分配给了它。当消息的规模增转载 2020-08-28 16:39:52 · 815 阅读 · 0 评论 -
常用排序算法(java版)
概述:1)插入排序(直接插入排序、希尔排序)2)交换排序(冒泡排序、快速排序)3)选择排序(直接选择排序、堆排序)4)归并排序5)分配排序(基数排序)所需辅助空间最多:归并排序所需辅助空间最少:堆排序平均速度最快:快速排序不稳定:快速排序,希尔排序,堆排序。当n较大,则应采用时间复杂度为O(nlog2n)的排序方法:快速排序、堆排序或归并排序序。原创 2017-12-18 16:30:32 · 395 阅读 · 0 评论 -
Kafka整理
Kafka学习笔记整理1 架构1.1 结构图1.2 名词解释1. Produce:生产者,将消息发送到Kafka中2. Broker:集群中包含的服务器,kafka存储数据的角色3. Consumer:消费者,读kafka中的消息4. Topic:特指Kafka处理的消息源的不同分类5. ...原创 2017-12-14 16:59:39 · 524 阅读 · 0 评论 -
Lucene评分规则机制
最近部门把公司的搜索业务接过来了,搜索使用的solr,需要研究下solr的评分机制,solr评分规则引用的是Lucene,简单整理了下Lucene评分规则,如下。1 简介Lucene默认是按照评分机制对每个Document进行打分,然后在返回结果中按照得分进行降序排序。Lucene的评分是叫做TF/IDF算法,基本意思就是词频算法。根据分词词库,所有的文档在建立索原创 2017-11-16 14:01:42 · 3137 阅读 · 0 评论 -
HashMap和LinkedHashMap的区别
java为数据结构中的映射定义了一个接口java.util.Map;它有四个实现类,分别是HashMap Hashtable LinkedHashMap 和TreeMap.Map主要用于存储健值对,根据键得到值,因此不允许键重复(重复了覆盖了),但允许值重复。Hashmap 是一个最常用的Map,它根据键的HashCode值存储数据,根据键可以直接获取它的值,具有很快的访问速度,遍历时原创 2017-11-13 14:36:25 · 3607 阅读 · 0 评论 -
Solr评分排序机制
1 默认评分排序规则1.1 默认评分规则Solr是基于Lucene的,评分规则也是基于Lucene,具体详情参考“Lucene评分机制.docx”文档,网页版:http://blog.youkuaiyun.com/a822631129/article/details/785504391.2 排序规则1.无特殊排序要求时,根据查询相关度(评分)来进行排序2.指定一个原创 2017-11-17 14:18:28 · 5247 阅读 · 0 评论 -
从RocketMQ接收数据投放到Kafka--java示例
package iie.rocketmq;import com.alibaba.rocketmq.client.consumer.DefaultMQPushConsumer;import com.alibaba.rocketmq.client.consumer.listener.ConsumeConcurrentlyContext;import com.alibaba.rocketmq.c原创 2015-12-28 14:41:42 · 2244 阅读 · 0 评论 -
关于REST
REST,名词,一种网络架构规范,同上。RESTful,形容词,指实现了 REST规范的系统,如实现了REST规范的Web API就叫RESTful API。REST 指的是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是 RESTful。REST原则Web 应用程序最重要的 REST 原则是,客户端和服务器之间的交互在请求之间是无原创 2015-11-30 17:59:16 · 539 阅读 · 0 评论 -
RocketMQ使用Avro序列化生产者消费者java示例
使用avro序列化生产者示例:import java.io.ByteArrayOutputStream;import java.io.IOException;import org.apache.avro.Schema;import org.apache.avro.generic.GenericData;import org.apache.avro.generic.GenericDat原创 2015-12-22 09:50:40 · 4042 阅读 · 0 评论 -
大数据集群遇到的问题(Hadoop、Spark、Hive、kafka、Hbase、Phoenix)
大数据平台中遇到的实际问题,整理了一下,使用CDH5.8版本,包括Hadoop、Spark、Hive、kafka、Hbase、Phoenix、Impala、Sqoop、CDH等问题,初步整理下最近遇到的问题,不定期更新。启动nodemanager失败2016-09-07 14:28:46,434 FATAL org.apache.hadoop.yarn.server.nodemanager原创 2016-11-15 11:50:57 · 11567 阅读 · 0 评论 -
Linux Shell的遇到的知识点1
&后台执行 && 逻辑与 前边命令成功才执行后边命令 || 逻辑或 前边命令不成功才执行后边命令 | mkdir -p dir 创建该目录包括父目录。grep -c day track.sh 输出track.sh中包含‘day’的行的数量。grep -v day track.sh 输出不包含day的行hadoop脚本:SOURCE="${BASH_SOURCE[0原创 2017-03-03 18:11:28 · 441 阅读 · 0 评论 -
推荐系统基础知识
智能推荐的几种方式:基于人口统计学的推荐、基于内容的推荐、协同过滤推荐(基于用户的协同过滤、基于物品的协同过滤、基于模型的协同过滤);混合的推荐:加权、切换、分区、分层。以及推荐系统的评测。原创 2017-03-09 16:48:31 · 1071 阅读 · 0 评论 -
Java 全角、半角字符转化
全角字符与半角字符的关系:打印Java中所有字符以及对应编码的值 public static void main(String[] args) { for (int i = Character.MIN_VALUE; i <= Character.MAX_VALUE; ++i) { System.out.println(i + " "原创 2017-08-21 15:48:52 · 646 阅读 · 0 评论 -
ElasticSearch父子关系查询
1 建表PUT comppro{ "mappings" : { "member" : {}, "supply" : { "_parent" : { "type" : "member" } } }}如果创建Parent-Child关系,需要先创建index原创 2017-09-28 14:43:12 · 5567 阅读 · 0 评论 -
Kafka生产者消费者java示例(包含Avro序列化)
文章内容包含Kafka未进行序列化生产消费java示例,和使用Avro序列化数据进行生产和消费的示例,掌握这些之后就对Kafka的生产消费有基本开发基础。1.未序列化生产者示例:import java.util.Properties;import kafka.javaapi.producer.Producer;import kafka.producer.KeyedMessa原创 2015-12-28 13:57:30 · 12371 阅读 · 2 评论