系统设计基础 索引、代理、队列

164 阅读1分钟

索引

不仅要写数据还要更新索引。
目的:用来提高数据查询速度,在不遍历数据库每行的情况下,快速定位数据
方式:通过增加存储开销和慢写入(索引)来提高读取的速度。可以用数据表的一列或多列创建索引,支撑快速随机查找和有序记录的高效访问。
是什么:一种数据结构,类似目录,可以用来定位到实际数据位置。用某一列创建索引时会存储该列和指向整行的指针。可以创建相同数据的不同视图。对大型数据集,数据副本不需要太多。用索引即可实现过滤排序。
需要考虑用户会如何访问数据,在大数据集中(TB)找到小的有效内容(1K)作为索引是有挑战的。很难在一定时间迭代这么多数据。而且数据可能分散在多个物理设备上。

代理

是什么:硬件或软件的一部分,位于客户端和后端服务之间。接受客户端请求并传递到源服务。
用途:1.过滤请求和日志请求、转换请求(添加删除headers,加密解密,压缩)
2.通过缓存可以处理大量相同请求,减少远端服务压力 image.png