IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 一些小知识点 -> 正文阅读

[大数据]一些小知识点

(1)使用mysql进行集合运算

1.并集 union 取并集

SELECT product_id, product_name

FROM product

UNION

SELECT product_id, product_name

FROM product2;

2.差集 not in

SELECT *

FROM Product

WHERE product_id NOT IN (SELECT product_id

                        FROM Product2)

3.交集 inner join

SELECT p1.product_id, p1.product_name

FROM Product p1

INNER JOIN Product2 p2

ON p1.product_id=p2.product_id

  1. 对称差

SELECT *

FROM Product

WHERE product_id NOT IN (SELECT product_id FROM Product2)

UNION

SELECT *

FROM Product2

WHERE product_id NOT IN (SELECT product_id FROM Product)

5.笛卡儿积 cross join

笛卡尔积:

SELECT SP.shop_id

   ,SP.shop_name

   ,SP.product_id

   ,P.product_name

   ,P.sale_price

FROM ShopProduct AS SP

CROSS JOIN Product AS P;

(2)mysql 破除死锁的方法

设置事务等待的超时时间

?innodb_lock_wait_timeout

  1. 开启主动死锁检测

innodb_deadlock_detect

(3) 查看最近发生的一次死锁的信息

show engine innodb status

(4)mysql执行一条sql语句的流程

首先第一步其实是查询缓存,但是mysql8取消了查询缓存。虽然查询缓存提升系统的性能,但是维护缓存的开销也比较大

解析语句(查询分析)

select title from order where id=1

①词法分析 将关键字提取出来,上面这句sql会被分成8个部分

在elasticsearch引擎中也有一个字典对语句进行分词

②语法分析 根据词法分析的结果,生成语法树(解析树),判断sql语句是否满足语法规则。

如果语句有语法错误的话会在这个时候显示‘You have an error in your SQL syntax’

  1. 查询检查(预处理器)

①语义分析

形成关系代数转化成的语义树

②符号名转化

将变量和符号表中的定义绑定

如果字段名和表名不存在会报错 UnKnow column ‘abc’ in ‘field list’

③安全性检查

?- 自主存取控制

?- 强制存取控制

④完整性初步检查

?- 参照完整性

?- 实体完整性

?- 用户定义完整性
  1. 查询优化(优化器)

mysql 使用基于开销的优化器,选择开销较小的计划

mysql通过查询当前会话的 last_query_cost的值来得到计算当前查询的成本

查看last_query_cost的命令:show status like ‘last_query_cost’

考虑的开销可能有:每张表或者索引的页面个数,索引的基数,索引和数据行的长度。索引的分布等等。

优化的策略有:

① 重新定义表的关联顺序,这时候要看表的大小,或者有可能将将外连接转换为内连接,子查询转化为连接

②优化查找最大最小函数

③优化排序

  1. 查询执行(执行器)

对上述得到的执行策略生成执行计划,让代码生成器执行这个查询计划,从存储引擎取出数据返回给客户端

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-07-03 10:53:18  更:2022-07-03 10:56:19 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/20 0:57:42-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码