12 2023 档案
摘要:http://www.jasongj.com/spark/skew/
阅读全文
摘要:1、Spark SQL / Catalyst 内部原理 与 RBO http://www.jasongj.com/spark/rbo/ 2、Spark SQL 性能优化再进一步 CBO 基于代价的优化 http://www.jasongj.com/spark/cbo/
阅读全文
摘要:数据库系统发展历史# 数据库系统产生于20世纪60年代中期,至今有近50多年的历史,其发展经历了三代演变,造就了四位图灵奖得主,发展成为一门计算机基础学科,带动了一个巨大的软件产业。 数据库系统是操作系统之上最重要的基础设施之一,被称为软件产业的常青树,特别是它所支撑起来的大数据、人工智能应用,更是
阅读全文
摘要:https://blog.csdn.net/bohu83/article/details/51098106
阅读全文
摘要:https://blog.csdn.net/qq_42411214/article/details/107767326 一:volatile二:synchronized 临界区方式ReentrantLock/Condition 消息队列方式三:使用JUC工具类 CountDownLatch四:基本L
阅读全文
摘要:https://www.cnblogs.com/cxuanBlog/p/14166322.html
阅读全文
摘要:1、多线程循环打印123 使用waite notify的标准范式,并发编程的艺术,4.3.3 public class Test2 { private static Object object = new Object(); private static int flag = 1; public s
阅读全文
摘要:https://blog.csdn.net/q322625/article/details/102803320
阅读全文
摘要:1、内存和磁盘使用方面 Spark vs MapReduce不等于内存 vs 磁盘,Spark和MapReduce的计算都发生在内存中,区别在于: MapReduce需要将每次计算的结果写入磁盘,然后再从磁盘读取数据,从而导致了频繁的磁盘IO。 Spark通常不需要将计算的结果写入磁盘,可以在内存中
阅读全文
摘要:看这个这个写的更加详细,更好: https://www.zhihu.com/question/336683528/answer/2993824842 在使用线程池时,很多同学都有这样的疑问,不知道如何配置线程数量,今天我们一起探讨一下这个问题。 1.经验值 配置线程数量之前,首先要看任务的类型是 I
阅读全文
摘要:策略模式(Strategy Pattern)和模板方法模式(Template Method Pattern)是两种不同的设计模式,它们在实现上有一些明显的区别: 目的和应用场景: 策略模式: 主要用于定义一系列的算法,将每个算法封装起来,并使它们可以互相替换。客户端可以选择不同的策略对象,以达到不同
阅读全文
摘要:https://blog.csdn.net/HongZeng_CSDN/article/details/130370999
阅读全文
摘要:https://zhuanlan.zhihu.com/p/67068559
阅读全文
摘要:https://www.iteblog.com/archives/9870.html
阅读全文
摘要:一、Adaptive Query Execution 自适应查询 https://blog.51cto.com/u_12865/7338853 二、Dynamic Partion Pruning 动态裁剪分区 Apache Spark 3.0 动态分区裁剪(Dynamic Partition Pru
阅读全文
摘要:https://zhuanlan.zhihu.com/p/441059030
阅读全文
摘要:https://blog.csdn.net/rikkatheworld/article/details/125322678
阅读全文
摘要:https://blog.csdn.net/u012410733/article/details/112303048 下面是官方提供的 Eureka 架构图: 1、什么是自我保护机制默认情况下,如果Eureka Server在一定时间内(默认 90 秒,其实不止 90 秒)没有接收到某个微服务实例的
阅读全文
摘要:https://www.51cto.com/article/714377.html MySQL Innodb 的锁可以说是执行引擎的并发基础了,有了锁才能保证数据的一致性。众所周知,我们都知道 Innodb 有全局锁、表级锁、行级锁三种,但你知道什么时候会用表锁,什么时候会用行锁吗? 虽然对 MyS
阅读全文
摘要:前言 在分析ThreadLocal导致的内存泄露前,需要普及了解一下内存泄露、强引用与弱引用以及GC回收机制,这样才能更好的分析为什么ThreadLocal会导致内存泄露呢?更重要的是知道该如何避免这样情况发生,增强系统的健壮性。 内存泄露 内存泄露为程序在申请内存后,无法释放已申请的内存空间,一次
阅读全文
摘要:https://blog.csdn.net/xinzhifu1/article/details/106356958/
阅读全文
摘要:https://blog.csdn.net/weixin_38569499/article/details/103720524
阅读全文
摘要:https://blog.csdn.net/m0_71777195/article/details/127361696
阅读全文
摘要:1、redis作用: 用于读数据库操作的缓存层,可以减少数据库的io,还能提升数据的io性能; 无法保证数据的acid 2、实现一致性方案: 要想保证强一致性就需要加锁,得不偿失了,保证最终一致性就好。 延迟双删方案是不对的,因为需要延迟几百毫秒,对于高并发系统是致命的,答了这种方案就直接挂了。 1
阅读全文
摘要:https://blog.csdn.net/dl962454/article/details/132766344
阅读全文
摘要:MySQL目前主要有的索引类型为:普通索引、唯一索引、主键索引、组合索引、全文索引。 通过给字段添加索引可以提高数据的读取速度,提高项目的并发能力和抗压能力。索引优化时mysql中的一种优化方式。索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。下面我们来看看MySQL目前主要有的
阅读全文
摘要:https://zhuanlan.zhihu.com/p/110424162
阅读全文
摘要:Synchronized 和 Lock的概念 Synchronized 是Java 并发编程中很重要的关键字,另外一个很重要的是 volatile。Syncronized 的目的是一次只允许一个线程进入由他修饰的代码段,从而允许他们进行自我保护。Synchronized 很像生活中的锁例子,进入由S
阅读全文
摘要:Filter 是 JavaEE 中 Servlet 规范的一个组件,位于包javax.servlet 中,它可以在 HTTP 请求到达 Servlet 之前,被一个或多个Filter处理。 它的工作流程如图: Filter的这个特性在生产环境中有很广泛的应用,如:修改请求和响应、防止xss攻击、包装
阅读全文
摘要:一 认识过滤器 1.1 什么是过滤器 Filter也称之为过滤器,它是Servlet技术中最实用的技术,Web开发人员通过Filter技术,对web服务器管理的所有web资源:例如Jsp, Servlet, 静态图片文件或静态 html 文件等进行拦截,从而实现一些特殊的功能。例如实现URL级别的权
阅读全文
摘要:在Java中,LinkedBlockingQueue 和 SynchronousQueue 是两种不同类型的阻塞队列,它们有一些关键的区别: 实现机制: LinkedBlockingQueue 使用一个链表实现的有界或无界队列。有界队列的容量是固定的,而无界队列的容量理论上是无限的。 Synchro
阅读全文
摘要:计算:所以我们要按照1M的上限来计算,假设每个单词都为16个字节,那么1M的内存可以处理多少个单词呢?1M = 1024 KB = 1024 * 1024 B 。然后1M / 16B = 2^16个单词1G大概有多少个单词呢? 有2^26个单词但是实际中远远不止这些,因为我们是按照最大单词长度算的。
阅读全文
摘要:问题描述:给40亿个不重复的unsigned int的整数,没排过序的,然后再给一个数,如何快速判断这个数是否在那40亿个数当中? 问题分析:40亿 不重复 ,没有排序。40亿个unsigned int的整数,放到内存中的话,大约是160G。32*40亿=1280亿=1280000000000bit
阅读全文
摘要:参考: https://www.cnblogs.com/vivotech/p/17585094.html
阅读全文
摘要:Hbase Split 是一个很重要的功能,HBase 通过把数据分配到一定数量的 Region 来达到负载均衡的。当 Region 管理的数据过多时,可以通过手动或自动的方式触发 HBase Split 将一个 Region 分裂成两个新的子 Region,并对父 Region 进行清除处理(不会
阅读全文
摘要:HBase系统中一张表会被水平切分成多个Region,每个Region负责自己区域的数据读写请求。水平切分意味着每个Region会包含所有的列簇数据,HBase将不同列簇的数据存储在不同的Store中,每个Store由一个MemStore和一系列HFile组成,如图所示。 Region结构组成 HB
阅读全文
摘要:Memstore是HBase框架中非常重要的组成部分之一,是HBase能够实现高性能随机读写至关重要的一环。深入理解Memstore的工作原理、运行机制以及相关配置,对hbase集群管理、性能调优都有着非常重要的帮助。 一、Memstore 概述 HBase中,Region是集群节点上最小的数据服务
阅读全文
摘要:互联网公司的 Hadoop 集群一般都会比较大,几百台服务器会分布在不同的机架上,甚至在不同的机房。出于保证数据安全性和数据传输的高效性的平衡考虑,HDFS希望不同节点之间的通信能够尽量发生在同一个机架之内,而不是跨机架和跨机房。同时,NameNode 在分配 Block 的存储位置的时候,会尽可能
阅读全文
摘要:10分钟带你全面了解StarRocks,写的很好 https://zhuanlan.zhihu.com/p/532302941
阅读全文
摘要:结构化、半结构化和非结构化数据是根据数据的组织和表示形式来分类的,这种分类主要用于描述数据的组织结构和处理方式。 结构化数据(Structured Data): 定义: 结构化数据是一种具有明确定义和固定格式的数据,通常存储在关系型数据库中,表现为行和列的结构。 特征: 数据的组织和关系在预定义的模
阅读全文
摘要:https://cloud.tencent.com/developer/article/2260035 如何确保RabbitMQ消息的可靠性? 开启生产者确认机制,确保生产者的消息能到达队列 开启持久化功能,确保消息未消费前在队列中不会丢失 开启消费者确认机制为auto,由spring确认消息处理成
阅读全文
摘要:https://aws.amazon.com/cn/compare/the-difference-between-rabbitmq-and-kafka/ Kafka 和 RabbitMQ 是可用于流处理的消息队列系统。数据流是需要高速处理的大容量、连续增量数据。例如,您必须持续收集和处理有关环境的传
阅读全文
摘要:一、增加patition数量, 有多少个patition就会启多少个消费者线程去消费,跟消费者服务节点的数量无关,只能patition有关。 二、patition一样的情况下,改为批量消费,一次拉取多条数据,max.poll.records,利用多线程去处理数据,避免单线程处理批量数据时间过长,导致
阅读全文
摘要:https://zhuanlan.zhihu.com/p/459610418 Kafka 到底会不会丢数据呢?如果丢数据,究竟该怎么解决呢? 只有掌握了这些, 我们才能处理好 Kafka 生产级的一些故障,从而更稳定地服务业务。 认真读完这篇文章,我相信你会对Kafka 如何解决丢数据问题,有更加深
阅读全文
摘要:Kotlin 协程相对于 Java 线程有一些优势,尤其在处理异步和并发任务时,提供了更加简洁、可读性更高的代码。以下是一些 Kotlin 协程相比于 Java 线程的优势: 轻量级: 协程是轻量级的,可以更高效地创建和销毁,不需要像线程那样消耗大量的系统资源。 更好的可读性: 使用协程可以避免回调
阅读全文
摘要:https://juejin.cn/post/7088711680665845768 补充问题: 1、协程启动方式? 一般来说,协程的启动使用比较多的有如下的三个方法: runBlocking: T launch: Job async/await: Deferred 通过查看这三个方法,我们可以得知
阅读全文
摘要:https://juejin.cn/post/7088711680665845768
阅读全文
摘要:一、引言 随着业务的增长,单体架构发展为分布式架构,大大提升了业务的处理能力,但同时也带来了很多单体架构不存在的问题,如: 各节点之间网络通信的异常以及因其引起的脑裂问题(网络分区)。 引出“三态”。在单体架构中只会存在“成功”或“失败”两种结果,但是在分布式架构中由于网络异常将会出现“未知”的结果
阅读全文
摘要:https://www.51cto.com/article/761626.html
阅读全文
摘要:https://www.bmabk.com/index.php/post/166151.html
阅读全文
摘要:1、基于Redis的数据结构zset 用的redis的zset来计数,score字段寸时间戳,每次请求增加一条数据,并按score移除超时的数据。 最后在给整个key1加个过期时间 2、基于Redis的令牌桶算法 具体代码实现: https://blog.csdn.net/weixin_426456
阅读全文
摘要:https://xie.infoq.cn/article/d01329aceeed184a8e71575ff
阅读全文