<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
    <channel>
        <title>Database - Tag - 华子的博客</title>
        <link>https://guluguluhhhh.github.io/tags/database/</link>
        <description>Database - Tag - 华子的博客</description>
        <generator>Hugo -- gohugo.io</generator><language>zh-CN</language><lastBuildDate>Sat, 14 Jun 2025 17:51:06 &#43;0800</lastBuildDate><atom:link href="https://guluguluhhhh.github.io/tags/database/" rel="self" type="application/rss+xml" /><item>
    <title>PolarDB MP</title>
    <link>https://guluguluhhhh.github.io/polardb-mp/</link>
    <pubDate>Sat, 14 Jun 2025 17:51:06 &#43;0800</pubDate>
    <author>huazi</author>
    <guid>https://guluguluhhhh.github.io/polardb-mp/</guid>
    <description><![CDATA[<h1 id="摘要">摘要</h1>
<p>传统的主从架构（<strong>Primary- secondary</strong>）数据库的写入能力有限，因为其使用单个主节点来写入，从节点只是同步数据。所以一些系统采用无共享架构（<strong>shared-nothing</strong>），实现了可扩展的多主节点集群，但带来了分布式事务的开销和性能损失。最近，出现基于共享存储（<strong>shared-stroage</strong>）的多主节点云原生数据库，存算分离，避免了分布式事务，但在高冲突场景下仍表现不佳，原因有冲突解决、数据融合等。</p>]]></description>
</item>
<item>
    <title>Cmu15445 Concurrency Control</title>
    <link>https://guluguluhhhh.github.io/cmu15445_concurrency_control/</link>
    <pubDate>Thu, 02 Jan 2025 13:35:16 &#43;0800</pubDate>
    <author>huazi</author>
    <guid>https://guluguluhhhh.github.io/cmu15445_concurrency_control/</guid>
    <description><![CDATA[<h1 id="concurrency-control">Concurrency Control</h1>
<p>在这个项目中，你将通过实现乐观多版本并发控制（MVOCC）来为BusTub添加事务支持。</p>
<h2 id="timestamps">Timestamps</h2>
<h3 id="timestamp-allocation">Timestamp Allocation</h3>
<blockquote>
<p>当一个事务开始时，它将被分配一个<strong>读时间戳</strong>，这是最近提交的事务的提交时间戳。在事务提交时，它将被分配一个单调递增的<strong>提交时间戳</strong>。<strong>读时间戳确定事务可以读取哪些数据，而提交时间戳确定事务的序列化顺序。</strong></p>]]></description>
</item>
<item>
    <title>Cmu15445 Query Execution</title>
    <link>https://guluguluhhhh.github.io/cmu15445-query_execution/</link>
    <pubDate>Fri, 20 Dec 2024 10:45:30 &#43;0800</pubDate>
    <author>huazi</author>
    <guid>https://guluguluhhhh.github.io/cmu15445-query_execution/</guid>
    <description><![CDATA[<h1 id="query-execution">Query Execution</h1>
<p>在这次项目中，将实现允许 BusTub 执行查询的组件。具体是创建执行 SQL 查询的运算符执行程序，并实施优化器规则来转换查询计划。</p>
<p>BusTub的架构如下：
</p>]]></description>
</item>
<item>
    <title>Cmu15445 Buffer Pool</title>
    <link>https://guluguluhhhh.github.io/cmu15445-buffer_pool/</link>
    <pubDate>Mon, 09 Dec 2024 16:49:33 &#43;0800</pubDate>
    <author>huazi</author>
    <guid>https://guluguluhhhh.github.io/cmu15445-buffer_pool/</guid>
    <description><![CDATA[<h1 id="buffer-pool">Buffer Pool</h1>
<p>这个project是要在存储管理器中实现一个buffer pool，即<strong>缓冲池</strong>。缓冲池其实就是一块大的内存区域<strong>主内存</strong>，负责与<strong>磁盘</strong>之间来回移动物理页。它使得DBMS支持大于系统可用内存的数据库。缓冲池的操作对系统中的其他部分应该是透明的。例如，系统使用唯一标识符<code>page_id_t</code>想缓冲池请求页面的时候，系统不知道该页面是否位于已经在内存中，或者是需要从磁盘检索。</p>]]></description>
</item>
<item>
    <title>Cmu15445 Extendible Hash Index</title>
    <link>https://guluguluhhhh.github.io/cmu15445-extendible_hash_index/</link>
    <pubDate>Sun, 01 Dec 2024 12:41:00 &#43;0800</pubDate>
    <author>huazi</author>
    <guid>https://guluguluhhhh.github.io/cmu15445-extendible_hash_index/</guid>
    <description><![CDATA[<h1 id="extendible-hash-index">Extendible Hash Index</h1>
<p>在此编程项目中，将使用<strong>可扩展哈希</strong>的变体作为哈希方案，在数据库系统中实现磁盘支持的哈希索引。</p>
<p>下图显示了一个可扩展哈希表，其中<code>header</code>页最大深度为 2，<code>directory</code>页最大深度为 2，存储<code>bucket</code>页最多包含两个条目。值被省略，并且<strong>键的哈希值</strong>显示在<code>bucket</code>页面中，而不是键本身。</p>]]></description>
</item>
<item>
    <title>Cmu15445 Trie</title>
    <link>https://guluguluhhhh.github.io/cmu15445-trie/</link>
    <pubDate>Sun, 17 Nov 2024 09:55:13 &#43;0800</pubDate>
    <author>huazi</author>
    <guid>https://guluguluhhhh.github.io/cmu15445-trie/</guid>
    <description><![CDATA[<h1 id="trie">Trie</h1>
<p>trie 实现的是键值存储，字符串键可以映射到任何类型值。键的值存储在改键的最后一个字符的终端节点。例如将（“ab”， 1） 和 （“ac”， “val”） 插入到 trie 中。
</p>]]></description>
</item>
</channel>
</rss>
