官术网_书友最值得收藏!

Chapter 2. Cassandra Architecture

This chapter aims to set you into a perspective where you will be able to see the evolution of the NoSQL paradigm. It will start with a discussion of common problems that an average developer faces when the application starts to scale up and software components cannot keep up with it. Then, we'll see what can be assumed as a thumb rule in the NoSQL world: the CAP theorem that says to choose any two out of consistency, availability, and partition-tolerance. As we discuss this further, we will realize how much more important it is to serve the customers (availability), than to be correct (consistency) all the time. However, we cannot afford to be wrong (inconsistent) for a long time. The customers wouldn't like to see that the items are in stock, but that the checkout is failing. Cassandra comes into picture with its tunable consistency.

We will take a quick peep into all the actions that go on when a read or mutate happens. This leaves us with lots of fancy terms. Next, we will move on to see these terms in full glory with explanation as we discuss various parts of the Cassandra design. You will be amazed to see how close yet how far Cassandra is when compared with its precursors and inspiration databases, such as Google's BigTable and Amazon's Dynamo. We will meet with some of the modern and efficient data structures, such as bloom filters and Merkle trees, and algorithms, such as gossip protocol, phi accrual error detectors, and log-structured merge trees. Some of these discussions will help you rationalize the performance and constraints of Cassandra.

主站蜘蛛池模板: 松江区| 辽阳市| 定安县| 江北区| 镇赉县| 合山市| 奉节县| 酉阳| 西盟| 峡江县| 大冶市| 柯坪县| 武安市| 综艺| 观塘区| 肥乡县| 翁源县| 昭苏县| 平山县| 岢岚县| 甘南县| 南通市| 老河口市| 云阳县| 江都市| 弥勒县| 上高县| 抚松县| 彰化市| 长顺县| 芦溪县| 惠安县| 东乌| 彭泽县| 东方市| 宝坻区| 涟源市| 晋州市| 奉化市| 宁波市| 德安县|