avatar
文章
35
标签
17
分类
16
Home
归档
标签
分类
相册
关于
Logojiaklop9
搜索
Home
归档
标签
分类
相册
关于

jiaklop9

数据库查询优化
发表于2026-06-05|db
数据库查询优化核心思想减少与数据库的通信次数(减少往返),以及减少每次通信的数据量(瘦身) 1. 著名的 “N+1 问题” 与预加载(Relationship Loading)这是所有数据库框架中最经典的性能黑洞。 大白话场景: 你要打印 10 个班级的学生名单。 脑残做法(N+1): 你先去办公室查到了这 10 个班级(1次查询)。然后,你回班级拿第1班的名单,再去办公室;拿第2班的名单,再去办公室……为了 10 个班级,你一共跑了办公室 $10 + 1 = 11$ 次。如果有一万个班级,你的腿就废了(数据库卡死)。 聪明做法(预加载): 你在查 10 个班级的时候,直接跟办公室老师说:“把这 10 个班级里的学生名单顺便一次性都打包给我!”(只跑 1次 办公室)。 SQLAlchemy 的官方解法: 在查询时,使用 options() 明确指定加载策略。 官方提供了三种武器: 武器 A:joinedload()(连表预加载) 原理: 用 SQL 的 LEFT OUTER JOIN 把两张表拼成一张大表,一次性全拿回来。 ...
数据库概览
发表于2026-06-05|db
避坑指南1. 善用“索引(Index)”——查字典的目录 生活场景:给你一本 1000 页的字典,让你找“张三”这个词。如果你从第一页翻到最后一页(这在数据库里叫全表扫描),会累死。但如果你去查字典前几页的拼音目录,就能瞬间定位到在哪一页。 数据库优化:如果你经常需要根据 email 去登录查找用户,那你就必须给 email 这一列加一个“目录”,在数据库里叫索引(Index)。 SQLAlchemy 怎么写?非常简单,在定义列的时候加上 index=True 12# 优化后的写法:给 email 加上索引email: Mapped[str] = mapped_column(String(50), index=True) 注意:目录不是越多越好。字典如果每页都是目录,字典就太厚了。只有经常被当作查询条件的列才加索引。 2. 只拿需要的列,别贪心(避免 SELECT * ) 不好的习惯 123# 这会把用户的所有信息(包括头像、简介、密码等大文本)全部捞出来user = session.execute(select(User).where(User.name...
删除windows下顽固目录
发表于2026-05-13|bat
一、背景使用禅道,使用完想要删除,各种限制 二、批处理以管理员身份打开命令提示符: 搜索“cmd”,右键“命令提示符”,选择“以管理员身份运行”。 导航到文件夹所在目录,使用cd命令。例如,如果文件夹在C盘的某个路径下:cd C:\路径\到\文件夹的父目录。 授予所有权:输入 takeown /f 文件名 /r /d y 并回车。(这会将所有权转移到当前管理员。) 授予权限:输入 icacls 文件名 /grant 用户名:F /t 并回车。(授予管理员完全控制权。) 删除文件夹:输入 rd /s /q 文件名 并回车。(/s 删除子目录和文件,/q 安静模式不提示。 三、批处理自动化123456789101112@echo offecho 正在获取所有权...takeown /f "D:\ZenTao" /r /d yecho 正在授予权限...icacls "D:\ZenTao" /grant admin:F /techo...
使用Dockerfile创建镜像
发表于2026-05-12|docker
一、概括Dockerfile由一行行命令语句组成,并且支持以#开头的注释行。一般而言,Dockerfile分为四部分: 基础镜像信息、 维护者信息、 镜像操作指令 容器启动时执行指令 123456789101112131415# This Dockerfile uses the ubuntu image# VERSION 2 - EDITION 1# Author: docker_user# Command format: Instruction [arguments / command] ..# Base image to use, this must be set as the first lineFROM ubuntu# Maintainer: docker_user <docker_user at email.com> (@docker_user)MAINTAINER docker_user docker_user@email.com# Commands to update the imageRUN echo "deb...
docker数据管理
发表于2026-05-10|docker
一、背景生产环境中使用Docker的过程中,往往需要对数据进行持久化,或者需要在多个容器之间进行数据共享,这必然涉及容器的数据管理操作。容器中管理数据主要有两种方式: 数据卷(Data Volumes):容器内数据直接映射到本地主机环境; 数据卷容器(Data Volume Containers):使用特定容器维护数据卷。 二、数据卷数据卷是一个可供容器使用的特殊目录,它将主机操作系统目录直接映射进容器,类似于Linux中的mount操作。 数据卷可以提供很多有用的特性,如下所示: 数据卷可以在容器之间共享和重用,容器间传递数据将变得高效方便; 对数据卷内数据的修改会立马生效,无论是容器内操作还是本地操作; 对数据卷的更新不会影响镜像,解耦了应用和数据; 卷会一直存在,直到没有容器使用,可以安全地卸载它。 2.1 创建数据卷在用docker...
pandas多级表头处理
发表于2026-05-09|pandas
背景拒绝 MultiIndex 折磨:Pandas 多级表头「拍扁」实战指南在处理银行、财务或政务提供的 Excel 报表时,我们经常会遇到极其复杂的多级表头。虽然 Pandas 的 MultiIndex 功能强大,但在真实项目里,它往往是效率的「杀手」。今天分享一个超实用的技巧:先填充空白占位符,再直接拍扁表头。 一、 为什么要「拍扁」表头?当你直接用 pd.read_excel 读取带有合并单元格的报表时,你会得到类似下面的 MultiIndex:(‘个人客户’, ‘手机银行’, ‘Unnamed: 7_level_2’)这种结构的痛点非常明显: 语义缺失:大量的 Unnamed 占位符让你根本不知道这一列代表什么。 操作繁琐:查询列需要写成 df[(‘层级1’, ‘层级2’, ‘层级3’)],不支持自动补全,极易出错。 兼容性差:如果要将数据存入数据库(MySQL/ClickHouse)或对接可视化工具(Tableau/BI),多级索引往往不被支持。 二、 核心解决方案我们要做的核心逻辑只有两步: 清洗:把 Unnamed...
docker容器的使用
发表于2026-05-07|docker
一、创建容器1.1 容器是镜像的一个实例123docker create -it ubuntu:latestdocker ps -a 使用docker create 创建的容器处于停止状态,可以使用 docker start 启动它 1.2 启动容器1docker start af 1.3 新建并启动容器docker run 等价于 docker create + docker startExample: 输出后容器自动终止 1docker run ubuntu /bin/echo 'Hello Word' docker run 之后,后台操作 检查本地是否存在指定的镜像,不存在就从公有仓库下载; 利用镜像创建一个容器,并启动该容器; 分配一个文件系统给容器,并在只读的镜像层外面挂载一层可读写层; 从宿主主机配置的网桥接口中桥接一个虚拟接口到容器中; 从网桥的地址池配置一个IP地址给容器; 执行用户指定的应用程序; 执行完毕后容器被自动终止。 1.4 终止容器可以使用docker stop来终止一个运行中的容器 docker...
使用docker镜像
发表于2026-05-07|docker
一、概览 如何使用pull命令从Docker Hub仓库中下载镜像到本地 如何查看本地已有的镜像信息和管理镜像标签 如何在远端仓库使用search命令进行搜索和过滤 如何删除镜像标签和镜像文件 如何创建用户定制的镜像并且保存为外部文件 如何往Docker Hub仓库中推送自己的镜像 二、获取镜像1docker pull name[:Tag] name 后不带标签默认最新 == name:latest example: 1234567814.04: Pulling from library/ubuntu6c953ac5d795: Pull complete3eed5ff20a90: Pull completef8419ea7c1b5: Pull complete51900bc9e720: Pull completea3ed95caeb02: Pull completeDigest: sha256:97421885f3da3b23f52eeddcaa9f8f91172a8ac3cd5d3cd40b51c7aad09f66ccStatus:...
docker概念与安装
发表于2026-05-07|docker
一、三大核心概念 镜像 容器 仓库 1.1 镜像Docker镜像类似于虚拟机镜像,可以将它理解为一个只读的模板。例如,一个镜像可以包含一个基本的操作系统环境,里面仅安装了Apache应用程序(或用户需要的其他软件)。可以把它称为一个Apache镜像。 1.2 容器Docker容器类似于一个轻量级的沙箱,Docker利用容器来运行和隔离应用。容器是从镜像创建的应用运行实例。可以将其启动、开始、停止、删除,而这些容器都是彼此相互隔离的、互不可见的。可以把容器看做是一个简易版的Linux系统环境(包括root用户权限、进程空间、用户空间和网络空间等)以及运行在其中的应用程序打包而成的盒子。 镜像自身是只读的。容器从镜像启动的时候,会在镜像的最上层创建一个可写层。 1.3 仓库Docker仓库类似于代码仓库,它是Docker集中存放镜像文件的场所。
js中的属性描述符及hook应用
发表于2025-11-12|前端
...
12…4
avatar
jiaklop9
白日放歌须纵酒,青春作伴好还乡
文章
35
标签
17
分类
16
Follow Me
公告
This is my Blog
最新文章
数据库查询优化2026-06-05
数据库概览2026-06-05
删除windows下顽固目录2026-05-13
使用Dockerfile创建镜像2026-05-12
docker数据管理2026-05-10
分类
  • English2
  • Git1
  • UML1
  • Ubuntu1
  • bat1
  • db2
  • docker6
  • flask2
标签
脚本 Git CSS db English web逆向 科普 pandas 设计模式 Ubuntu python JavaScript hexo bat UML docker flask
归档
  • 六月 2026 2
  • 五月 2026 7
  • 十一月 2025 2
  • 八月 2025 1
  • 七月 2025 1
  • 六月 2025 4
  • 五月 2025 4
  • 四月 2025 9
网站信息
文章数目 :
35
本站访客数 :
本站总浏览量 :
最后更新时间 :
©2019 - 2026 By jiaklop9
框架 Hexo 7.3.0|主题 Butterfly 5.3.3
搜索
数据加载中