市面上主流的分布式文件系统(FS):
(Hadoop的)HDFS,(Google的)GFS
 
 
详见ppt
 
1.数据服务与键值对数据库:
数据服务:data serving
数据服务:数据的简单读写
数据库事务:也算一种数据服务,但属于mission-critical,较为复杂的数据服务

1)数据服务起源:
优化布局;
日志分析,用户画像,写用户属性;
高并发的简单数据读写;
数据规模大;
属性动态增减;

2)键值对数据库

3)数据库v.s.键值对数据库:

 
吞吐量大;可扩展性好,复杂性简单;最终一致性;接口:API;成本低;

 2.键值对数据模型
*为什么不直接使用HashTable?
因为 动态列增减,实现不便;

*为什么不直接使用关系数据库表?
大量空值,高并发;
动态列增减;

 
 
1)数据模型:

 2)键值对系统操作接口:

3.键值对数据库原理:
1)CAP原理
分布式系统的3个属性:只能满足2个,舍弃1个

分布式:必须满足P,一般CP
传统:保证CA,舍弃P

 
2)最终一致性
BASE协议
3)键值对系统设计考虑
*牺牲以下数据库特性:

4)HBase(键值对数据库的代表)系统架构:

5)HBase存储格式:

 
HBase中的所有数据文件都存储在Hadoop HDFS文件系统上
HBase中KeyValue数据的存储格式:HFile

6)存储模型与实现原理

 
写操作:memtable
读操作:sstable

7)典型键值对数据库:


8)

NeqSql保持了ACID
NoSql没有

总结:

 
 

数据库系统概论(新技术篇)--中国人民大学【第13讲】KEY-VALUE数据库(键值对数据库)的更多相关文章

  1. 第五章 大数据平台与技术 第13讲 NoSQL数据库

    NoSQL不是不用SQL,是Not only SQL,不仅仅是结构化的查询. NoSQL兴起的原因 在Web2.0时代新浪一分钟可以发送两万条微博,苹果可以下载4.7万次应用. 数据的高并发性,同时有 ...

  2. 优雅智慧女性课程班 - 公开课程 - 课程介绍 - 中国人民大学商学院EDP中心

    优雅智慧女性课程班 - 公开课程 - 课程介绍 - 中国人民大学商学院EDP中心 优雅智慧女性课程班 课程总览 思想睿智成熟,外表美丽自信,气质优雅端庄,是魅力女性所应具备的特性.在当今不确定环境下, ...

  3. 数据库系统概论——Chap. 1 Introduction

    数据库系统概论--Introduction 一.数据库的4个基本概念 数据(data):数据是数据库中存储的基本单位.我们把描述事物的符号记录称为数据.数据和关于数据的解释是不可分的,数据的含义称为数 ...

  4. 数据库系统概论(1)——Chap. 1 Introduction

    数据库系统概论--Introduction 一.数据库的4个基本概念 数据(data):数据是数据库中存储的基本单位.我们把描述事物的符号记录称为数据.数据和关于数据的解释是不可分的,数据的含义称为数 ...

  5. 数据库系统概论(2)——Chap. 2 关系数据库基础

    数据库系统概论(2)--Chap.2 关系数据库基础 一.关系数据结构及形式化定义 1.关系 关系模型的数据结构只包含单一的数据结构--关系.在关系模型中,现实世界的实体及实体间的各种联系均用单一的结 ...

  6. Android下添加新的自定义键值和按键处理流程

            Android下添加新的自定义键值和按键处理流程     说出来不怕大家笑话,我写这篇博客的原因在于前几天去一个小公司面试Android系统工程师,然后在面试的时候对方的技术总监问了我 ...

  7. JVM基础系列第13讲:JVM参数之追踪类信息

    我们都知道 JVM 在启动的时候会去加载类信息,那么我们怎么得知他加载了哪些类,又卸载了哪些类呢?我们这一节就来介绍四个 JVM 参数,使用它们我们就可以清晰地知道 JVM 的类加载信息. 为了方便演 ...

  8. Android下添加新的自定义键值和按键处理流程【转】

    本文转载自: Android下添加新的自定义键值和按键处理流程     说出来不怕大家笑话,我写这篇博客的原因在于前几天去一个小公司面试Android系统工程师,然后在面试的时候对方的技术总监问了我一 ...

  9. 第13讲 | 套接字Socket:Talk is cheap, show me the code

    第13讲 | 套接字Socket:Talk is cheap, show me the code 基于 TCP 和 UDP 协议的 Socket 编程.在讲 TCP 和 UDP 协议的时候,我们分客户 ...

随机推荐

  1. Codeforces Round #545 (Div. 2) 交互 + 推公式

    https://codeforces.com/contest/1138/problem/F 题意 有一条长为t的链,一个长为c的环,定义终点为链和环相连环上的第一个点,现在有10个人在起点,你每次可以 ...

  2. CSS3中的px,em,rem,vh,vw

    1.px:像素,精确显示 2.em:继承父类字体的大小,相当于“倍”,如:浏览器默认字体大小为16px=1em,始终按照div继承来的字体大小显示,进场用于移动端 em换算工具:http://www. ...

  3. Linux性能优化实战学习笔记:第三十四讲

    一.上节回顾 上一节,我带你学习了 Linux 网络的基础原理.简单回顾一下,Linux 网络根据 TCP/IP模型,构建其网络协议栈.TCP/IP 模型由应用层.传输层.网络层.网络接口层等四层组成 ...

  4. MySQL实战45讲学习笔记:第十三讲

    一.引子 经常会有同学来问我,我的数据库占用空间太大,我把一个最大的表删掉了一半的数据,怎么表文件的大小还是没变? 那么今天,我就和你聊聊数据库表的空间回收,看看如何解决这个问题. 这里,我们还是针对 ...

  5. Web协议详解与抓包实战:HTTP1协议-如何传递 IP 地址?(6)

    一.HTTP消息在服务器端的路由 Host 头部 规范与实现间是有差距的 二.代理服务器转发消息时的相关头部 1.Host 头部与消息的路由 2.客户端与源服务器间存在多个代理 三.如何传递 IP 地 ...

  6. oracle--ORA-38760

    01,ORA-38760: This database instance failed to turn on flashback 02,问题处理思路 第一步:查看日志文件 查看这次启动的时候alter ...

  7. numpy delete方法

    import numpy as np lines = np.loadtxt(r'./test.txt',delimiter=',',dtype=int) print(lines) lines_copy ...

  8. linux内核debug的一种方式:procfs

    #include <linux/module.h> #include <linux/compat.h> #include <linux/types.h> #incl ...

  9. WPF DataGird 类似Excel筛选效果 未成品

    这个本是针对MSDN上所写的代码,不过写一半不想写了. 不想浪费代码,是个半成品的半成品. 效果图: 思路: 利用PopUp来做显示层. 显示层中的数据则是绑定到Datagrid的数据. popup中 ...

  10. ******可用 SpringBoot 项目打包分开lib,配置和资源文件

    spring-boot多模块打包后,无法找到其他模块中的类https://blog.csdn.net/Can96/article/details/96172172 关于SpringBoot项目打包没有 ...