Merge pull request #22 from artiship/path-1

纠正翻译错误
This commit is contained in:
Feng Ruohang 2019-01-21 06:20:37 +08:00 committed by GitHub
commit b7515fceb2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

30
ch1.md
View File

@ -10,33 +10,17 @@
[TOC]
现今很多应用程序都是**数据密集型data-intensive**的,而非**计算密集型compute-intensive**的。因此CPU很少成为这类应用的瓶颈更大的问题通常来自数据量、数据复杂性、以及数据的变更速度。
​现今很多应用程序都是 **数据密集型data-intensive** 的,而非 **计算密集型compute-intensive** 的。因此CPU很少成为这类应用的瓶颈更大的问题通常来自数据量、数据复杂性、以及数据的变更速度。
数据密集型应用通常由标准组件构建而成,标准组件提供了很多通用的功能;例如,许多应用程序都需要:
***数据库database***
- 存储数据,以便自己或其他应用程序之后能再次找到 ***数据库database***
- 记住开销昂贵操作的结果,加快读取速度(***缓存cache***
- 允许用户按关键字搜索数据,或以各种方式对数据进行过滤(***搜索索引search indexes***
- 向其他进程发送消息,进行异步处理(***流处理stream processing***
- 定期处理累积的大批量数据(***批处理batch processing***
存储数据,以便自己或其他应用程序之后能再次找到
***缓存cache***
记住开销昂贵操作的结果,加快读取速度
***搜索索引search indexes***
允许用户按关键字搜索数据,或以各种方式对数据进行过滤
***流处理stream processing***
向其他进程发送消息,进行异步处理
***批处理batch processing***
定期处理累积的大批量数据
如果这些功能听上去平淡无奇,那是因为这些**数据系统data system**是非常成功的抽象:我们一直不假思索地使用它们并习以为常。绝大多数工程师不会幻想从零开始编写存储引擎,因为在开发应用时,数据库已经是足够完美的工具了。
​如果这些功能听上去平淡无奇,那是因为这些 **数据系统data system** 是非常成功的抽象:我们一直不假思索地使用它们并习以为常。绝大多数工程师不会幻想从零开始编写存储引擎,因为在开发应用时,数据库已经是足够完美的工具了。
但现实没有这么简单。不同的应用有着不同的需求,因而数据库系统也是百花齐放,有着各式各样的特性。实现缓存有很多种手段,创建搜索索引也有好几种方法,诸如此类。因此在开发应用前,我们依然有必要先弄清楚最适合手头工作的工具和方法。而且当单个工具解决不了你的问题时,组合使用这些工具可能还是有些难度的。