【MySQL】MySQL优化
MySQL优化
当我们在写SQL语句时,有许多优化方法可以提高查询的性能和效率。下面便列出了一些主要的优化技巧,以及对应的简单SQL语句示例:
一般人想不到的优化:
GroupBy优化高基数维度在前,低基数维度在后。
OrderBy优化高基数维度在前,低基数维度在后。
GroupingSets代替GroupbyGroupingSets可以减少表扫描次数,提升性能。
1. 只读取必要的列
不要获取数据库中所有的列,而仅仅获取你需要的列。这可以减少数据传输量,提高处理速度。
例子:
123456# 不推荐SELECT * FROM employees; # 推荐SELECT first_name, last_name FROM employees;
2. 使用Join代替子查询
通常,使用JOIN代替子查询(sub-query)可以改善查询性能。
例子:
12345678910# 不推荐SELECT a.last_name FROM employees a WHERE a.department_id IN (SELECT department_id FROM departm ...
【PythonScript(四)】TXT转Pcap脚本改用Spark
CodeDemo123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899# -*- coding: utf-8 -*-"""Time : 2023/10/20 18:15Author : JohnsonLiamMotto:What seems to us as bitter trials are often blessings in disguise!Description: Use Spark DataFrame to transfer txt file to pcap file."""import hashlibfrom pyspark.sql import SparkSessionfrom pyspark ...
【Pandas】DataFrame及Series常用方法
Pandas与Python常用数据类型对照表
Pandas类型
Python类型
说明
object
string
字符串类型
int64
int
整形
float64
float
浮点型
datetime64
datetime
日期时间类型,python中需要加载
Series详解Series是什么
Series是 pandas 中用来存储一维数据的容器
Series是什么样子?
123456789# age0 371 612 903 664 565 456 417 77
创建Series1)创建 Series 的最简单方法是传入一个Python列表
如果传入的数据类型是统一的数字,那么最终的 dtype 类型是int64
如果传入的数据类型是统一的字符串,那么最终的 dtype 类型是object
如果传入的数据类型是多种类型,那么最终的 dtype 类型也是object
2)创建 Series 时,也可以通过 index 参数来指定行标签
123s = pd.Series(['bana ...
【Pandas】Anaconda及Pandas快速入门
Anaconda是什么
这个就不多bb了,用到时自然就理解了。
常用命令12345678910111213141516conda create -n 虚拟环境名字 python=3.8 # 创建虚拟环境 python=3.8 指定python版本conda activate 虚拟环境名字 # 进入虚拟环境conda deactivate 虚拟环境名字 # 退出虚拟环境conda remove -n 虚拟环境名字 --all # 删除虚拟环境# 常用镜像源清华:https://pypi.tuna.tsinghua.edu.cn/simple腾讯:https://mirrors.cloud.tencent.com/pypi/simple阿里云:http://mirrors.aliyun.com/pypi/simple/中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/华中理工大学:http://pypi.hustunique.com/山东理工大学:http://pypi.sdutlinux.org/ 豆瓣:http://pypi.douba ...
【PythonScript(三)】StreamingRecover
6ac2da9eb9c99339ab30e930f8fa5bb7e1e5bdb1a256c5a9b7d25add71fe6faa38954a14edf0976c361dc117d4bc8c51226aaa911e6a5c51d19452102dcd5e62e5d8c48d07e057bd950a4e919a24c832a2b80701cbe184d9e708acb68b10a8dc6046176e12452349e3373e2ca01bcfb0761542473a2f169b0b14202d775237c936107578bd3e56418479081e0994749e5870bfadd672be961f5463bbafd6ba5739adeda83581ae9b4de97f8b86e4f5b0ea23e81df23ebd07467d4a57298c420a2a57ac9ecd6bac525b4e88897c8cf8e4b33e480c2a84fee5ea111c13393d84479d4f840f1227dbbd52519554ac33210d4e99bbaf2bb39fa6b ...
【Linux】ElasticSearch6.0.1及Azkaban3.8部署
2019年5月21日,Elastic官方发布消息: Elastic Stack 新版本6.8.0 和7.1.0的核心安全功能现免费提供。这意味着用户现在能够对网络流量进行加密、创建和管理用户、定义能够保护索引和集群级别访问权限的角色,并且使用 Spaces 为Kibana.
至此,现今出现了一个问题,有些公司用的还是ElasticSearch6.0.1以及比较老的ElasticSearch版本,这写版本的一些基于端口加密的功能等都是要收费的,如果想要使用这些功能的话就需要付费,如果不想付费就需要破解。
Tips
该部署全程都是一步一步实践得来的,需要有一定的动手能力,踩了很多坑呜呜。
其中有两篇文章给了我很多启发:
10分钟内破解elasticsearch x-pack插件-CSDN博客
centos7搭建elasticsearch6.3.0集群并破解x-pack许可并配置证书_
部署ElasticSearch安装ElasticSearch
上传(yum install lrzsz)
解压(tar -zxvf 包名 -C 路径)
如果想指定解压路径就必须加-C
修改配置 ...
【Linux】Gitlib部署过程
Gitlib部署前置软件的安装1234567891011yum install curl policycoreutils openssh-server opensh-clientssystemctl enable sshdsystemctl start sshdyum install postfixsystemctl enable postfixsystemctl start postfixfirewall-cmd --permanent --add-service=httpsystemctl reload firewalldyum install policycoreutils-python
Gitlib安装123456# rpm -ivh 后面接你的rpm包名rpm -ivh gitlab-ce-13.2.6-ce.0.el7.x86_64.rpm-i:表示进行安装操作。-v:表示在安装过程中显示详细的输出信息,即详细模式(verbose mode)。-h:表示以哈希进度条的形式显示安装进度。
修改默认的配置文件安装完成之后
123vim /etc/gitlab/gitlab. ...
【Python爬虫(三)】某眼查爬虫
Demo123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133import timefrom io import BytesIOfrom selenium.webdriver.support.ui import WebDriverWaitfrom selenium import webdriverfrom selenium.webdriver.chrome.options import Optionsfrom scrapy import Selector # 使用S ...
【Linux】服务自启动脚本
之前一直用别人写的自动化脚本,自己写的很少,说实话Linux的三剑客至今还是懵懵懂懂的状态,没关系慢慢来。
基础知识必会
查看服务器中某个脚本的位置
比如说咱们经常用到的start-all.sh,一直在用却不知道在哪个位置,这就有点尴尬。
start-all.sh 脚本用于启动 Hadoop 集群中的所有组件,该脚本通常位于 Hadoop 安装路径下的 sbin 目录中。
12# 通过脚本名称搜索该脚本的位置sudo find / -name start-all.sh 2>/dev/null
运行结果
12345678910111213/usr/local/dolphinscheduler.bak/bin/start-all.sh/usr/local/dolphinscheduler.bak/script/start-all.sh/usr/local/dolphinscheduler-bin.bak/script/start-all.sh/usr/local/dolphinscheduler-bin.bak/bin/start-all.sh/usr/local/ ...
【Python爬虫(二)】Xpath和CSS选择器
这两个东西简直无语,不常用根本记不住。已经记不清在网上搜过多少教程了,今天就自己写一个教程。
Xpath选择器
XPath 是一种用于在 XML 或 HTML 文档中进行导航和查找元素的语言。
这里咱们使用到最多的就是①,②,③,④,⑥,好吧,基本都用到了,这里还是要掌握的。
调试自己写的Xpath到底对不对:
通过在浏览器的开发者工具中的 “Elements” 或 “Inspect” 面板中使用 XPath 选择器来调试和测试 XPath 表达式的准确性。
选择元素:
选择所有元素://*
选择指定标签的元素://tagname
选择指定 class 的元素://*[@class='classname']
选择指定 id 的元素://*[@id='idname']
精确匹配属性:
通过属性值精确匹配元素://*[@attribute='value']
层级关系选择:
选择父子关系的元素://parent/child
选择所有后代元素://ancestor//descendant
位置选择:
选择第一个匹配的元素: ...
