- 博客(149)
- 收藏
- 关注
原创 一篇文章带你搞懂mysql的全局索引和doris的倒排索引
倒排索引主要用于全文搜索,而MySQL的**全文索引(Full-Text Index)**在某种程度上可以实现类似倒排索引的功能。虽然MySQL没有直接的“倒排索引”概念,但它的全文索引在功能上非常接近倒排索引。全文索引的限制:MySQL的全文索引有一些限制,比如默认会忽略一些短词(如“的”、“和”等),并且对分词方式有默认规则(对于英文是按空格分词,中文可能需要额外配置分词器)。MySQL的全文索引会利用倒排索引的原理,快速定位到包含关键词的记录,而不需要扫描整个表。这里的+表示“必须包含”的意思。
2025-01-21 14:02:05
794
原创 15分钟让你从0-1搭建hbase2.5.10--基于hadoop3。(保姆级教程,复制粘贴即用)
从0-1搭建hbase-基于hadoop2.5.10
2025-01-07 11:43:42
614
1
原创 从0搭建DataSphereStudio保姆级教程--复制粘贴即用(hadoop2.7.2、hive2.3.3、spark2.4.5)
登陆时默认管理员的用户名和密码均为部署用户为hadoop(用户若想修改密码,可以通过修改 xx/dss_linkis/linkis/conf/linkis-mg-gateway.properties 文件中的 wds.linkis.admin.password 参数)(2)全部启动 sbin/start-all.sh,也可以分开sbin/start-dfs.sh、sbin/start-yarn.sh、sbin/mr-jobhistory-daemon.sh start historyserver。
2025-01-06 14:13:14
1774
原创 redisson配置类---SpringBoot集成、redis单机和集群模式配置
【代码】redisson配置类---SpringBoot集成、redis单机和集群模式配置。
2023-08-14 14:46:10
7344
原创 大数据的特点
数据集主要特点Volume(大量): 数据量巨大,从TB到PB级别。Velocity(高速): 数据量在持续增加(两位数的年增长率)。Variety(多样): 数据类型复杂,超过80%的数据是非结构化的。Value(低密度高价值): 低成本创造高价值。其他特征数据来自大量源,需要做相关性分析。需要实时或者准实时的流式采集,有些应用90%写vs.10%读。数据需要长时间存储,非热点数据也会被随机访问。...
2020-10-05 15:12:36
14955
1
原创 什么是大数据?
什么是大数据?1,是指 无法 在一定时间范围内用 常规软件工具 进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。2, 是指一种 规模大 到在获取、存储、管理、分析方面大大 超出了传统数据库软件工具能力范围 的数据集合,具有海量的数据规模、快速的数据流转、多样的数据类型和价值密度低四大特征。...
2020-10-05 15:05:23
13684
3
原创 虚拟机创建
一、 开启电脑虚拟化功能查看笔记本是否支持:鼠标右击任务栏—》任务管理器—》点击性能—》右下角查看虚拟化状态:已禁用or已启用。进入BIOS参考以下按键,开机时按住对应的键进入BIOS:组装机以主板分:(1)华硕按F8、(2)Intel按F12,(3)其他品牌按ESC、F11或F12;(4)笔记本以品牌分(5)联想ThinkPad系列按F1;(6)其他品牌按F2;品牌台式机按品牌分:(1)Dell按ESC;(2)其他按F12;如果仍然不能进入BIOS,找找电脑(主板)说明书或者
2020-10-04 08:14:19
12670
1
原创 十分钟带你搞懂Rust -- 并发性能调优(六)
Rust 的无畏并发(fearless concurrency)消除了数据竞争,但这仅仅是起点——真正的性能优化需要深入理解硬件特性、同步原语的成本模型,以及工作负载的特征。但对于并发程序,单纯的 CPU 火焰图可能掩盖锁等待问题,需要结合 perf 的 off-cpu 分析,或使用 tokio-console 观察异步任务的状态。是减少竞争的经典方法,将单个粗粒度锁拆分为多个保护不同数据的细粒度锁。例如,在实现并发哈希表时,不是用一把锁保护整个表,而是为每个桶分配独立的锁,使得不同桶的操作可以并行执行。
2025-10-30 22:15:14
683
原创 十分钟带你搞懂Rust -- 代码审查清单(五)
借用检查器保证了内存安全,类型系统防止了大部分逻辑错误,这使得 Rust 代码审查的重点从"能否正确运行"转向"是否优雅、可维护、符合最佳实践"。一份专业的 Rust 代码审查清单不应简单罗列规则,而应理解每条规则背后的工程权衡,以及在不同场景下的灵活应用。审查时要警惕使用 Box 或 anyhow::Error 作为公共 API 的返回类型,这会丢失类型信息,不利于调用者进行精确的错误处理。unwrap() 和 expect() 的使用是首要检查点,在库代码中几乎不应出现,即使在应用代码中也应谨慎使用。
2025-10-30 22:10:33
702
原创 十分钟带你搞懂 Rust -- 内存泄漏检测与防范(四)
结合日志和指标系统,定期采样内存使用情况,能够及早发现逻辑层面的泄漏。例如,使用 Box::leak 将数据转换为 'static 生命周期,避免了生命周期标注的复杂性,代价是内存永不释放。典型的模式是父节点持有子节点的强引用(表示所有权),而子节点持有父节点的弱引用(表示反向关系)。是最常见的陷阱,当使用 Rc<RefCell> 或 Arc<Mutex> 构建互相引用的数据结构时,引用计数永远无法降至零,导致内存永久占用。则更隐蔽,例如无限增长的缓存、未清理的事件监听器,或者全局静态容器的无节制使用。
2025-10-30 22:04:25
788
原创 十分钟带你搞懂Rust -- 代码组织与模块化 (三)
Rust 的模块系统设计精巧,它不仅提供了命名空间隔离和访问控制,更通过编译期检查强制开发者建立清晰的依赖关系。与其他语言不同,Rust 的模块系统与文件系统结构紧密关联,但又不完全等同,这种设计哲学体现了 Rust 对显式声明的偏好。是模块化的核心武器。提供了便捷的导入方式,用户只需 use myapp::prelude:😗 即可获取常用类型,无需记忆复杂的路径。确保每个模块有明确的边界,domain 专注业务规则,infrastructure 处理技术细节,application 协调用例流程。
2025-10-30 21:57:28
688
原创 十分钟带你入门Rust -- 过程宏开发入门(二)
这里的关键是 syn 和 quote 两个 crate:syn 负责将 token 流解析为结构化的 AST,而 quote 则提供了一种优雅的方式来构造新的 token 流。过程宏(Procedural Macros)是 Rust 元编程能力的核心体现,它允许开发者在编译时操作抽象语法树(AST),实现代码生成、自动化派生和领域特定语言(DSL)的构建。与声明宏(declarative macros)的模式匹配不同,过程宏本质上是在编译期执行的 Rust 函数,这赋予了它几乎无限的表达能力。
2025-10-30 21:49:02
613
原创 每天10分钟带你搞懂Rust一个知识点(一) --泛型参数
Rust泛型参数通过单态化实现零成本抽象,在编译期为每个类型生成独立代码,保持运行时高效。泛型系统涵盖类型和生命周期参数,后者用于形式化描述引用有效性。Trait bound释放泛型威力但需避免过度抽象,可通过"trait别名"简化复杂约束。实战案例展示了如何设计零成本序列化抽象,利用泛型递归自动为复杂类型生成序列化逻辑。掌握Rust泛型需要平衡灵活性与复杂性,将类型系统作为表达设计意图的工具,在内存安全、性能与抽象之间做出专业权衡,体现真正的Rust专业度。
2025-10-29 17:21:42
757
原创 Rust 交叉编译环境的搭建与深入实践
交叉编译不应仅被视为“让程序能跑在另一台机器上”的技巧,而是 Rust 开发者理解底层架构、链接模型、ABI 协议及构建自动化的绝佳契机。在实践中,建立一套可靠、可复用的交叉编译管线,意味着你的软件已经从“单机开发”迈入“多平台工程化”的阶段。这正是 Rust 生态最令人着迷的地方——在安全与高性能之外,它鼓励开发者以工程师的姿态,去思考整个系统的可迁移性与构建一致性。
2025-10-29 17:14:41
394
原创 15分钟带你了解(Loki)日志聚合系统
loki是由 Grafana Labs开发的一个开源的日志聚合系统,灵感来源于Prometheus,但专注于日志数据的收集、存储和查询。它与Prometheus 的监控生态系统紧密集成,尤其适合与 Grafana(一个流行的可视化工具)一起使用,用于实时监控和分析日志数据。是一个高效、简洁且易于使用的日志聚合系统,特别适合与 Prometheus 和 Grafana。它通过独特的存储设计和标签机制,为用户提供了一个低成本、高性能的日志解决方案。
2025-01-22 10:36:07
1724
原创 k8s集群搭建
至此k8s集群部署完毕,使用kubectl get nodes可以看到k8s节点状态都是就绪状态。此时因为没有添加网络,所以执行kubectl get nodes 是节点状态异常,需要添加网络。在master节点init完毕之后会有一行join命令,复制到各个节点去加入即可。注释掉带有swap分区这行 (如下最后一行)8.添加kubernetes阿里云yum源。更改后需重启docker。永久关闭selinux。修改完毕后需要重启系统。永久关闭swap分区。执行完毕后,导入配置。
2024-05-30 15:12:44
269
原创 MySQL主从搭建--保姆级教学
注意:主数据库的配置文件中配置了需要同步的数据库,因此只会同步配置的数据库,不配置则同步全部。(3)mysql账户密码错误:用"mysql -u用户名 -p密码 -h主机ip"尝试登录主机。(1)网络不通:用ping指令尝试是否可以接收到返回的数据。(4)主数据库参数设置错误(注意此条命令的参数)通过工具连接主从数据库或者在服务器连接。(4)mysql主从机配置文件写错。(3)mysql账户密码错误。(6)主机未开放账户连接权限。(5)配置从机连接语法错误。(2)防火墙端口未开放。
2024-05-30 15:11:08
1111
1
原创 数据湖和数据仓库
数据湖是一个存储企业各种各样原始数据的大型仓库,其中的数据可供存取、处理、分析及传输。数据湖从企业的多个数据源获取原始数据,并且针对不同的目的,同一份原始数据还可能有多种满足特定内部模型格式的数据副本。因此,数据湖中被处理的数据可能是任意类型的信息,从结构化数据到完全非结构化数据。数据湖的核心原则是集中存储原始的、未经改变的全量数据,在提取数据时才进行转换。数据湖存储各种类型数据,重点是非结构化和半结构化数据,通过统一视图提供开放访问。
2024-05-07 17:37:40
502
原创 大数据名词——MPP(Massively Parallel Processing)数据集市
MPP数据集市会对数据进行复制和分布,以确保数据的冗余性和高可用性。这使得数据的查询、分析和处理可以以高并发和高吞吐量的方式进行,从而提高数据处理的速度和效率。MPP数据集市通常由多个节点组成,每个节点都具备计算和存储能力,并且可以同时处理大量的数据。通过并行处理和优化的查询执行计划,MPP数据集市可以高效地处理复杂查询,并快速返回结果。:MPP数据集市通常提供安全性控制机制,包括对数据的加密、访问权限管理、审计日志等功能,以保证数据在存储和处理过程中的安全性和合规性。
2023-09-18 13:38:59
978
原创 Docker安装Oracle_11g
docker创建oracleoracle在docker中的基本使用Navicat 连接oracle注意事项
2022-06-22 15:52:49
6260
6
原创 Oozie常用命令
启动命令:bin/oozied.sh start关闭命令:bin/oozied.sh stop页面访问:http://node01:11000/oozie/查看信息:bin/oozie job -oozie http://node01:11000/oozie -info 0000029-191027171933033-oozie-root-C查看日志:bin/oozie job -oozie http://node01:11000/oozie -log 0000064-1909232258
2022-04-14 17:49:43
2276
2
原创 hive调优
1 Fetch抓取(Hive可以避免进行MapReduce)Hive中对某些情况的查询可以不必使用MapReduce计算。例如:SELECT * FROMemployees;在这种情况下,Hive可以简单地读取employee对应的存储目录下的文件,然后输出查询结果到控制台。在hive-default.xml.template文件中hive.fetch.task.conversion默认是more,老版本hive默认是minimal,该属性修改为more以后,在全局查找、字段查找、limit查找等都不
2022-03-09 09:54:19
298
原创 linux系统中 crontab任务调度
原理:基本语法:crontab [选项]常用选项:选项 : 含义-e : 编辑crontab定时任务 -l : 显示crontab任务-r : 删除当前用户所有的crontab任务7.8.3 案例: 每隔1分钟将时间打印到 /export/文件中方案一: 直接式第一步: date >> /export/mydate1.txt 测试命令第二步: 通过 crontab -e 进入 定时任务第三步: 编辑
2022-03-04 11:48:42
262
原创 Mybatis -plus(配置文件、pom.xml、工具类)
1、common模块:1.1:util包下JWTUtil.javapackage com.czxy.util;import io.jsonwebtoken.Claims;import io.jsonwebtoken.JwtBuilder;import io.jsonwebtoken.Jwts;import io.jsonwebtoken.SignatureAlgorithm;import org.joda.time.DateTime;import javax.crypto.spec.Sec
2021-12-27 20:54:48
2312
原创 手机验证码注册(springcloud+rabbitMQ+redis+微服务+Alibaba短信发送)
注册技术:springcloud+rabbitMQ+redis+微服务+短信发送前置准备:启动mq:docker start mq 浏览器访问192.168.88.130:15672:启动nacos: 在nacos的bin目录下输入cmd:startup.cmd -m standalone:看到这两个面板说明启动成功。注册流程:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-gQTQpgZW-1638519397073)(C:\Users\q\AppD
2021-12-03 16:19:42
3092
原创 docker启动运行mysql容器(解决mysql数据中文乱码)
docker启动运行mysql容器:启动mysql实例$ docker run --name mingxie-mysql -p 32xxx:3306 -e MYSQL_ROOT_PASSWORD=1234 -d mysql:latest在shell中访问mysqldocker exec -it mingxie-mysql bashroot@7c289aa0ca95:/#mysql -uroot -p -h localhostEnter password:如果数据库会乱码:1.更新源库并安
2021-11-25 20:16:51
1088
原创 Docker简答题
什么是docker?1、Docker是一个快速交付应用、运行应用的技术:2、可以将程序及其依赖、运行环境一起打包为一个镜像,可以迁移到任意Linux操作系统3、运行时利用沙箱机制形成隔离容器,各个应用互不干扰4、启动、移除都可以通过一行命令完成,方便快捷Docker和虚拟机的差异:1、docker是一个系统进程;虚拟机是在操作系统中的操作系统2、docker体积小、启动速度快、性能好;虚拟机体积大、启动速度慢、性能一般什么是镜像?什么是容器?Docker结构是什么?什么是Dockerhub?
2021-11-25 20:13:55
743
原创 Spring+RestFul+Vue多表(学校,老师,类型)
数据库SQL(有三个表:校区表,老师表,类型表): CREATE TABLE `t_school` (`id` int(11) NOT NULL AUTO_INCREMENT,`school_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,PRIMARY KEY (`id`) USING.
2021-11-01 18:02:01
355
原创 Spring+Vue-Spa案例(员工增删改查)
后端/* Navicat Premium Data Transfer Source Server : mysql Source Server Type : MySQL Source Server Version : 80026 Source Host : localhost:3306 Source Schema : ssm_db3 Target Server Type : MySQL Target Server Versi
2021-10-29 21:38:14
465
1
原创 Vue-Router
1 Vue-Router介绍在 SPA 中,网站内容的变换实际上的组件的切换,为了方便的实现组件间的切换,Vue 框架引入了 vue-router 工具来实现多个组件之间的切换。2.1 体验在使用 vue-router 之前,我们需要先配置访问的路径与要显示的组件的对应关系。我们需要在 router.js 文件中进行配置。初体验:方式一:()添加路由:再次查看页面:方式二:(this.$router.push("/路由路径"))页面展示:点击按钮:(效果如下)...
2021-10-28 15:49:01
420
2
原创 SPA项目
1.SPA项目目录介绍我们写的代码都在 src 目录中:2.入口文件main.js介绍2.1 体验2.1.1 main.js的功能入口文件,项目启动之后会最先运行 main.js 文件2.1.2 main.js代码详解import Vue from 'vue'import App from './App.vue'import router from './router'import store from './store'Vue.config.productionTip = fal
2021-10-28 15:44:51
569
原创 Vue CLI构建SPA项目
首先要确定自己的电脑上安装了 Node.js 8.9 或更高版本。然后,我们就可以使用 npm 来安装 vue/cli :npm install -g @vue/cli安装之后,我们可以在命令行中使用 vue 指令查看安装的版本:vue --version创建项目vue create 项目名称手动选择组件勾选需要安装的组件选择版本(随便选择哪个)使用路由的 history 模式:把配置写到 package.json 文件中:不保存本次的配置:创建成功:执行:
2021-10-28 15:42:51
411
原创 SPA-Vue企业级开发模式
vue-spa什么是SPA?SPA(单页面应用程序),项目中只需要1个html页面,多个功能组件,页面跳转其实就是切换组件。SPA的优缺点优点1、减轻服务器的压力:一个网站只有一个页面,只需要从服务器加载一次2、并且把大量操作都放到了浏览器中去完成3、前、后端完成分离,使服务器只需要提供同一套 JSON 数据接口,就可以同时满足WEB端、桌面端、手机端等不同的前端设备4、而且前端只关注前端、后端只操作数据,各司其职缺点1、首屏加载速度可能会很长2、SEO(搜索引擎优化)
2021-10-28 15:39:33
505
原创 Please specify it either inyarn-env.cmd or in the environment./vue-cli-version-marker
使用vue@Cli创建vue项目时遇到此报错在c盘用户文件夹中找到此文件:把这行的value修改成 “npm”
2021-10-28 15:37:39
1316
原创 Springboot+Vue+axios案例
案例1 概述学生管理系统班级管理:添加班级、修改班级、查询班级、删除班级学生管理:添加学生、修改学生、查询学生(含条件)、删除学生2 表结构create database ssm_db3;use ssm_db3;-- 班级表create table tb_class( `c_id` varchar(32) primary key comment '班级ID', `c_name` varchar(50) comment '班级名称', `desc` varchar(2
2021-10-25 21:19:15
1677
2
原创 Vue事件绑定
事件绑定1.1 绑定事件回顾 javascript<input type="button" onclick="函数名"/><script> function 函数名() { }</script>vue 使用 v-on进行事件绑定<input type="button" v-on:click="函数名"/><script> new Vue({ el : ...,
2021-10-25 20:55:32
461
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅