MySQL查询截取分析

一、查询优化 1,mysql的调优大纲 慢查询的开启并捕获 explain+慢SQL分析 show profile查询SQL在Mysql服务器里面的执行细节和生命周期情况 SQL数据库服务器的参数调优 2,小表驱动大表 mysql的join实现原理是,以驱动表的数据为基础,“嵌套循环”去被驱动表匹配 ... »

MySQL的索引优化分析(一)

一、SQL分析 性能下降、SQL慢、执行时间长、等待时间长 查询语句写的差 索引失效关联查询太多join(设计缺陷) 单值索引:在user表中给name属性创建索引,create index idx_name on user(name); 复合索引:在user表中给name、email属性创建索引, ... »

MySQL的架构

一、MySQL简介 数据库是一个以某种有组织的方式存储的数据集合,它是一个按数据结构来存储和管理数据的计算机软件系统。理解数据库的一种最简单的办法是将其想象为一个文件柜,这个文件柜只是一个存储数据的空间,而数据库就是这么一个空间。 数据库管理系统(Database Management System ... »

常用10种算法(二)

一、普里姆算法 源码:普里姆算法 1,介绍 普里姆算法是图结构中寻找最小生成树的一种算法。所谓生成树,即为连通图的极小连通子图,其包含了图中的n个顶点,和n-1条边,这n个顶点和n-1条边所构成的树即为生成树。当边上带有权值时,使生成树中的总权值最小的生成树称为最小代价生成树,简称最小生成树。最小生 ... »

常用10种算法(一)

一、二分查找算法(非递归) 1,递归版二分查找算法 详情请点击 2,非递归二分查找算法介绍 源码:二分查找(非递归) 二分查找法只适用于从有序的数列中进行查找(比如数字和字母等),将数列排序后再进行查找 二分查找法的运行时间为对数时间 O(㏒₂n) ,即查找到需要的目标位置最多只需要㏒₂n步 3,代 ... »

多路查找树

一、二叉树与B树 1,二叉树的问题分析 二叉树需要加载到内存的,如果二叉树的节点少,没有什么问题,但是如果二叉树的节点很多(比如 1 亿), 就存在如下问题: 问题 1:在构建二叉树时,需要多次进行 i/o 操作(海量数据存在数据库或文件中),节点海量,构建二叉树时,速度有影响 问题 2:节点海量, ... »

树结构的应用

一、堆排序 详情查看:排序算法 二、赫夫曼树 源码: 构建赫夫曼树 1,基本介绍 给定n个权值作为n个叶子结点,构造一棵二叉树,若该树的带权路径长度(wpl)达到最小,称这样的二叉树为最优二叉树,也称为哈夫曼树(Huffman Tree)。 赫夫曼树是带权路径长度最短的树,权值较大的结点离根较近 结 ... »

分布式雪花算法获取id

实现全局唯一ID 一、采用主键自增 最常见的方式。利用数据库,全数据库唯一。 优点: 1)简单,代码方便,性能可以接受。 2)数字ID天然排序,对分页或者需要排序的结果很有帮助。 缺点: 1)不同数据库语法和实现不同,数据库迁移的时候或多数据库版本支持的时候需要处理。 2)在单个数据库或读写分离或一 ... »

Spring Cloud Alibaba Seata

一、简介 官网地址:http://seata.io/zh-cn/ 1,概念 Seata是一款开源的分布式事务解决方案,致力于在微服务架构在提供高性能和简单一样的分布式事务服务。 2,处理过程 Transaction ID XID:全局唯一的事务ID Transaction Coordinator(T ... »

Spring Cloud Alibaba Sentinel

一、介绍(sentinel 1.7.0) 1,官网地址 https://github.com/alibaba/Sentinel 中文地址:https://github.com/alibaba/Sentinel/wiki/%E4%BB%8B%E7%BB%8D 2,主要特征 Sentinel 具有以下特 ... »

Spring Cloud Alibaba Nacos

一、介绍 Nacos:由单词Naming和Cofiguration的前两个字母组成,最后的s代表Service。 1,作用 替代Eureka做服务注册中心 替代Cloud Config做服务配置中心 2,地址 文档:https://nacos.io/zh-cn/docs/what-is-nacos. ... »

SpringCould中的Hystrix

一、简介 源码地址:https://gitee.com/xiaocheng0902/my-cloud.git 1,定义 Hystrix是一个用于处理分布式系统的延迟和容错的开源库,在分布式系统里,许多依赖不可避免的会调用失败,比如超时、异常等。Hystrix能够保证在一个依赖出问题的情况下,不会导致 ... »

SparkStreaming

一、简介 spark Streaming用于流式数据的处理。Spark Streaming支持的数据输入源很多,例如:Kafka、Flume、Twitter、ZeroMQ和简单的TCP套接字等等。数据输入后可以用Spark的高度抽象原语如:map、reduce、join、window等进行运算。而结 ... »

Spark入门

一、简介 Spark是一种基于内存的快速、通用、可扩展的大数据分析引擎。 Spark Core:实现了Spark的基本功能,包含任务调度、内存管理、错误恢复与内存系统交互等模块。Spark Core中还包含了对弹性分布式数据集(Resilient Distribute DataSet,RDD)的AP ... »

HBase的优化

一、HBase的优化 1,高可用 在 HBase 中 HMaster 负责监控 HRegionServer 的生命周期,均衡 RegionServer 的负载,如果 HMaster 挂掉了,那么整个 HBase 集群将陷入不健康的状态,并且此时的工作状态并不会维持太久。所以 HBase 支持对 HM ... »

Hbase的基本架构以及对应的读写流程

一、HBase简介 1,定义: HBase 是一种分布式、可扩展、支持海量数据存储的 NoSQL 数据库。 2,HBase的架构图: 架构角色: 1)Master Master是所有Region Server的管理者,其实现为HRegionServer,主要作用有: a>对于表的DDL操作:crea ... »

Hive的压缩存储和简单优化

一、Hive的压缩和存储 1,MapReduce支持的压缩编码 压缩格式 工具 算法 文件扩展名 是否可切分 对应的编码/解码器 DEFLATE 无 DEFLATE .deflate 否 org.apache.hadoop.io.compress.DefaultCodec Gzip gzip DEF ... »

Hive的基本介绍以及常用函数

一、Hive的简介: Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能。 优点: 1) 操作接口采用类SQL语法,提供快速开发的能力(简单、容易上手)。 2) 避免了去写MapReduce,减少开发人员的学习成本。 3) Hive的执行延迟比较 ... »

Zookeeper相关知识

一、zookeeper的特点: 1,zookeeper中存在一个leader和多个follower 2,集群中只要有半数以上的节点存活,zookeeper集群就能正常服务 3,全局数据一致:每天zookeeper的server中保存同一份相同的副本 4,更新顺序性:来自同一个client的更新请求按 ... »