跳至主要內容
《数据密集型应用系统设计》笔记一之分布式数据系统

《数据密集型应用系统设计》笔记一之分布式数据系统

出于以下目的,我们需要在多台机器上分布数据:

  • 扩展性:当数据量或者读写负载巨大,严重超出了单台机器的处理上限,需要将负载分散到多台机器上。
  • 容错与高可用性:当单台机器(或者多台,以及网络甚至整个数据中心)出现故障,还希望应用系统可以继续工作,这时需要采用多台机器提供冗余。这样某些组件失效之后,冗余组件可以迅速接管。
  • 延迟考虑:如果客户遍布世界各地,通常需要考虑在全球范围内部署服务,以方便用户就近访问最近数据中心所提供的服务,从而避免数据请求跨越了半个地球才能到达目标。

钝悟...大约 45 分钟笔记分布式分布式综合数据库原理
《数据密集型应用系统设计》笔记二之数据系统基础

《数据密集型应用系统设计》笔记二之数据系统基础

第 1 章 可靠、可扩展与可维护的应用系统

认识数据系统

很多应用系统都包含以下数据处理系统:

  • 数据库:用以存储数据,这样之后应用可以再次面问。
  • 高速缓存: 缓存那些复杂或操作代价昂贵的结果,以加快下一次访问。
  • 索引: 用户可以按关键字搜索数据井支持各种过掳。
  • 流式处理:持续发送消息至另一个进程,处理采用异步方式。
  • 批处理: 定期处理大量的累积数据。

设计数据系统或数据服务时,需要考虑很多因素,其中最重要的三个问题:


钝悟...大约 4 分钟笔记分布式分布式综合数据库原理