More Related Content
Similar to Cassandra Basics: Indexing (10)
Cassandra Basics: Indexing
- 9. AT SCALE
Everything depends on
THE INDICES
- 23. “b”: {“name”:”Ben”, “street”:”1234 Oak St.”,
“city”:”Seattle”, “state”:”WA”}
“jason”: {”name”:”Jason”, “street”:”456 First Ave.”,
“city”:”Bellingham”, “state”:”WA”}
“zack”: {”name”: “Zack”, “street”: “4321 Pine St.”,
“city”: “Seattle”, “state”: “WA”}
“jen1982”: {”name”:”Jennifer”, “street”:”1120 Foo Lane”,
“city”:”San Francisco”, “state”:”CA”}
“albert”: {”name”:”Albert”, “street”:”2364 South St.”,
“city”:”Boston”, “state”:”MA”}
- 28. [state]: {
[city1]: {[name1]:[user1], [name2]:[user2], ... },
[city2]: {[name3]:[user3], [name4]:[user4], ... },
...
[cityX]: {[name5]:[user5], [name6]:[user6], ... }
}
- 29. “CA”: {
“San Francisco”: {”Jennifer”: “jen1982”}
}
“MA”: {
“Boston”: {”Albert”: “albert”}
}
“WA”: {
“Bellingham”: {”Jason”: “jason”},
“Seattle”: {”Ben”: “b”, ”Zack”: “zack”}
}
- 30. Row Key
“CA”: {
“San Francisco”: {”Jennifer”: “jen1982”}
}
“MA”: {
“Boston”: {”Albert”: “albert”}
}
“WA”: {
“Bellingham”: {”Jason”: “jason”},
“Seattle”: {”Ben”: “b”, ”Zack”: “zack”}
}
- 31. Row Key
Super Column
“CA”: {
“San Francisco”: {”Jennifer”: “jen1982”}
}
“MA”: {
“Boston”: {”Albert”: “albert”}
}
“WA”: {
“Bellingham”: {”Jason”: “jason”},
“Seattle”: {”Ben”: “b”, ”Zack”: “zack”}
}
- 32. Row Key
Colum
Super Column
n
“CA”: {
“San Francisco”: {”Jennifer”: “jen1982”}
}
“MA”: {
“Boston”: {”Albert”: “albert”}
}
“WA”: {
“Bellingham”: {”Jason”: “jason”},
“Seattle”: {”Ben”: “b”, ”Zack”: “zack”}
}
- 33. Row Key
Colum
Super Column Value
n
“CA”: {
“San Francisco”: {”Jennifer”: “jen1982”}
}
“MA”: {
“Boston”: {”Albert”: “albert”}
}
“WA”: {
“Bellingham”: {”Jason”: “jason”},
“Seattle”: {”Ben”: “b”, ”Zack”: “zack”}
}
- 36. {
“Bellingham”: {”Jason”: “jason”},
“Seattle”: {”Ben”: “b”, ”Zack”: “zack”}
}
- 40. [state1]/[city1]: {[name1]:[user1], [name2]:[user2], ... }
[state1]/[city2]: {[name3]:[user3], [name4]:[user4], ... }
[state2]/[city1]: {[name5]:[user5], [name6]:[user6], ... }
...
[stateX]/[cityY]: {[name7]:[user7], [name8]:[user8], ... }
- 41. “CA/San Francisco”: {”Jennifer”: “jen1982”}
“MA/Boston”: {”Albert”: “albert”}
“WA/Bellingham”: {”Jason”: “jason”}
“WA/Seattle”: {”Ben”: “b”, “Zack”: “zack”}
- 44. {
”WA/Bellingham”: {”Jason”: “jason”},
“WA/Seattle”: {”Ben”: “b”, “Zack”: “zack”}
}
- 48. <Keyspace Name="UserDb">
<ColumnFamily Name="Users"
CompareWith="UTF8Type" />
<ColumnFamily Name="LocationUserIndexSCF"
CompareWith="UTF8Type"
CompareSubcolumnsWith="UTF8Type"
ColumnType="Super" />
<ColumnFamily Name="LocationUserIndexCF"
CompareWith="UTF8Type" />
<ReplicaPlacementStrategy>
org.apache.cassandra.locator.RackUnawareStrategy
</ReplicaPlacementStrategy>
<ReplicationFactor>1</ReplicationFactor>
<EndPointSnitch>org.apache.cassandra.locator.EndPointSnitch</EndPointSnitch>
</Keyspace>