0%

前言

笔者踩了许多坑,最大的两个问题是Riak必须配置3个节点,第二个问题是得手动修改jar包才能进行配置。至于用Python和Java连接Riak,笔者有时间会单独出一篇教程。

环境

CentOS 7.6 64位

若未有特殊说明,所有操作均在root下进行操作。

阅读全文 »

本文内容参考自YouTube Abdul Bari,若有错误还请指正。十分推荐观看原视频,讲得非常清晰易懂。

前言

本文将从硬盘的物理结构说起,介绍关系表中的数据如何在磁盘上进行存储和表示。并通过查询的例子,说明为什么要使用索引来加快查询。本文将从索引结构的设计角度,从m路查找树过渡到B树和B+树。

阅读全文 »

系统架构

image-20220902151055829

在GFS中,一个文件由多个chunk组成,每一个chunk大小都是64MB,而一个文件的chunk可能不在同一个chunkserver上,也就是分布在不同的chunkserver上。

GFS采用的是单主架构,client通过filename和offset向master索要chunk信息,master返回对应的chunk在哪个chunkserver上,然后client再和chunkserver交互。

每个chunkserver直接使用linux的文件系统。

阅读全文 »

背景

Geo-replicated DBMS

SLOG假设一个数据库系统是跑在横跨世界各地的数据中心的系统,这种系统我们通常称之为Geo-replicated Database Management System(DBMS),它将数据复制多份在各地的资料中心中。

阅读全文 »

1. introduction

​ 动态数据集上的图处理在许多应用领域越发重要,如推荐系统和欺诈检测等。现今,许多场景下都需要进行大规模的图计算,如图分析(analytics),图模式匹配(graph pattern matching, GPM), 图遍历(tranversals).而这些图计算的数据集是动态变化的,随时都在进行更新。 创建这样一个系统仍然是一个未解决的问题,其根源就是没有底层数据结构既能保证高效率的事务更新,又能有效处理各种各样的图工作负载(比如模式匹配、图遍历就是不同的工作负载)。这篇文章就是要解决这个问题。 为支持分析工作负载(如page rank)和图遍历(单源最短路径)需要支持快速扫描。为了支持模式匹配(如triangle counting),数据结构需要有序to enable fast intersections。为了保证更新速度,该数据结构需要支持动态更新。为了保证并发,需要实现多版本。

阅读全文 »