标签: 数据库
编程

SQL 性能解析:SQL 索引解析

424 2023-05-07 11:24:00

“索引使查询更快”是我见过的对索引最基础的解释。虽然这句话对索引最重要的一面做了很好的解释,但不幸的是,还不够充分。本文将以不那么粗浅的,也没那么深入细节的方式描述索引结构。它只是为理解SQL性能方面提供了足够视野。索引是数据库中的一个独特的结构,使用 create index 语句创建。它需要自己的硬盘空间,并持有一份索引的表格数据的副本。这意味着索引是纯...

详情...
编程

Laravel 中如何在数据库事务中延迟队列及事件监听器

728 2023-04-29 05:41:00

如果在数据库事务期间触发了队列或监听,可能会因为数据回滚而导致数据不一致。本文将介绍如何妥善处理。Laravel 开发者可能会碰到这么一个问题:在数据库事务期间触发了队列或事件监听。这一问题可能导致 ModelNotFoundException、数据不一致以及其他一些可能影响应用可靠性的问题。本文将说明数据库事务为什么重要、使用时会碰到哪些常见问题以及如何在...

详情...
编程

PostgreSQL: 详解索引 Include 子句

677 2023-04-28 06:51:00

有些数据库 —— 比如 Microsoft SQL Server、IBM Db2 及发行版11之后的PostgreSQL —— 在创建索引语句时都支持 include 子句。PostgreSQL 引入这个特性是促使我发这篇长文解释 include 条件的直接原因。深入细节之前,我们先回顾一些(非聚簇)B-树的索引是如何工作的以及全能的index-only s...

详情...
编程

etcd:一款Go语言编写的高可用分布式键值数据库

583 2023-04-22 09:15:00

etcd是一个分布式的、高可用的、一致性的key-value键值存储数据库,基于Go语言实现,主要用于共享配置和服务发现。

详情...
编程

ULID vs UUID:为什么 ULID 更适合在分布式系统中使用?

998 2023-04-15 11:28:00

在分布式系统中,唯一标识符(UUID)是非常常见的,它是用于标识数据或者实体的一种方式,它是基于算法生成的一个固定长度的字符串。然而,UUID 也有一些缺点,例如它们很难被排序,因为它们是随机生成的,这导致了一些性能问题。而 ULID 则是一种新的方案,它解决了这些问题并提供了一些额外的优势。什么是 ULID?ULID(Universally Unique Lexi...

详情...
编程

MySQL全文检索

560 2023-04-08 23:45:00

MySQL支持使用LIKE运算符和正则表达式进行文本搜索。但是,当text列很大并且表中的行数增加时,使用这些方法有一些限制:性能:MySQL必须扫描整个表,以根据LIKE  正则表达式中的语句或模式中的模式查找确切的文本。灵活的搜索:通过LIKE运算符和正则表达式搜索,很难有灵活的搜索查询,例如,查找描述中包含

详情...
编程

MeiliSearch,一个轻量级搜索引擎

945 2023-04-07 19:48:00

MeiliSearch 是一个功能强大,快速,开源,易于使用和部署的搜索引擎。搜索和索引都是高度可定制的。允许输入、过滤器和同义词等特性都是开箱即用的。是近两年开源的项目,同样也支持中文分词,在小数据规模下可以实现比 ElasticSearch 更加快速和易用的搜索体验。

详情...
编程

数据库以及它背后的存储

557 2023-03-28 09:17:19

先要明确,这里的数据库指的是关系型数据库,即满足 ACID 原则并用 SQL 语言进行操作的持久性(掉电数据不丢)数据库。当然,在追求高并发的过程中,我们将不可避免地接触到内存数据库,但我们一定要知道,内存数据库只是架构设计的一部分,而且不是最重要的部分。数据库是个大单点所有 web 系统都会经常面临这种需求:用户要一个一个注册,ID 不能一样;订单要一个一...

详情...
编程

13 年,MySQL 之父赌赢了:另起炉灶的 MariaDB 成功上市!

649 2022-12-20 08:12:25

今年 2 月,开源数据库厂商 MariaDB 完成了 1.04 亿美元的 D 轮融资,同时宣布了一个重磅消息:计划通过 SPAC 的方式,与特殊目的收购企业 Angel Pond Holdings 合并,在纽约证券交易所公开上市。终于在今天,这个 13 年前由 MySQL 之父另起炉灶而开发的 MariaDB,宣布正式完成合并,公司更名为 MariaDB p...

详情...
编程

在 Laravel 框架中使用 Redis

652 2022-12-05 08:53:38

首先,通过 Composer 安装 predis/predis 包:composer require predis/predis配置: redis的配置文件是:config/database.php'redis' => [ 'client' => 'predis', 'default' =&g...

详情...