数据库是一系列信息集合,可轻松访问。它主要在计算机系统中运行,并由数据库管理系统(DBMS)控制。让我们在这里查看数据库的一些概念 - 分别索引,复制和碎片。
索引
数据库可以具有大量数据,并具有多达数百万个记录。在需要的时候,没有索引的混乱数据很难检索,并且整个数据库必须一一迭代。如果是旧数据,那将是绝对的噩梦。摆脱这种并发症的解决方案是索引。
数据库索引是一种数据结构,可帮助快速检索数据库中持有的信息。我们使用索引查找在存储信息时分配的数据。当数据太大而无法迭代搜索数据时,我们使用数据库索引。这是relational database的核心必要性,也是non-relational databases的核心。当数据索引时,我们有一个非常优化的查找时间。
复制
复制意味着制作内容的副本来复制它们。在数据库中,当我们学习缩放时,会听到术语复制。我们可以复制我们的数据库,以便如果数据库过载并在某个时候崩溃,则其他重复的数据库会处理负载,我们可以避免系统故障。这会在系统中创建冗余,以维持系统中的高可用性。
我们可以同步和异步进行数据复制。选择同步方式时,与主数据库中的更改同步复制的数据库更新。您可以分配一个时间间隔,其中主数据库和复制数据库可以同步和更新。要确保的另一件事是,如果对副本的写操作以某种方式失败,那么对主数据库的写操作也会失败。正如我们前面在文章中讨论的那样,这属于特征原子。
但是,复制中可能发生的争议是数据太大的时候,唯一的问题是使系统更可用,但不要改善latency and throughput。因此,我们缩小了导致我们碎片的数据。
碎片
数据碎片意味着将巨大的数据库分解为较小的数据库,以便在数据库复制后保持延迟和吞吐量。您可以选择希望数据破坏的方式。有两种类型的方法可以将您的数据水平和垂直分片分解。在水平碎片中,同一表的行存储在多个数据库节点中,而在垂直分片中,不同的表和列存储在单独的数据库中。
aygarp-modsiw / System-Design-Concepts
具有某些系统设计概念的存储库。
System Design
Systems design is the process of defining elements of a system like modules, architecture, components and their interfaces and data for a system based on the specified requirements.
This is a index for the concepts of system.
If you wish to open these in a new tab, Press koude0
S.N. | Table of Content |
---|---|
1. | Caching |
2。 | Network Protocols |
3。 | Storage: The Underrated Topic |
4。 | Latency and Throughput |
5。 | System Availability |
6。 | Leader Election |
7。 | Proxies |
8。 | Load Balancing |
9。 | Endpoint Protection |
10. | HTTPS: Is it better than HTTP? |
11。 | Polling and Streaming |
12. | Long Polling |
13。 | Hashing |
14. | CAP Theorem |
15. | PACELC Theorem |
16。 | Messaging and Pub-Sub |
17。 | Database |
18. | Logging, Monitoring, and Alerting |
19. | Distributed System |
20. | Scaling |
21. | Event Driven Architecture (EDA) |
谢谢!
我希望本文对您有所帮助。
请不要忘记跟随我!
欢迎任何形式的反馈或评论!
感谢您的时间和支持!!!!
继续阅读!继续学习!