Which nodes to put indexes on?


#1

Hi trying 4.0 RC community edition.

I have 4 node cluster with 32 cores each and 128 GB of RAM.

I have create my bucket. Now I want to create the primary index.

Does the primary index need to be created on all 4 nodes?

How does it work if you have 4 nodes but the index is kept only on 1 with this new server architecture?


#2

Same goes for secondary indexes… I know people will say it depends on your requirements, but with so much horse power, should I not have each index on each server to be as fast as possible?


#3

Hey @javadevmtl,

It depends on how you’ve set up your cluster. In Couchbase Server 4.0 there is what is called Multi-Dimensional Scaling (MDS) in which you can scale your services independently.

For example, you could have the following 4 node configuration:

1x index node
1x query node
2x data node

In this case the three services are not evenly distributed across all four nodes allowing each service to have more dedicated resources.

It really depends on your plans for how you should determine service types and counts.

Here is a great blog post on the subject:

http://blog.couchbase.com/introducing-multi-dimensional-scaling

Does this better answer your question?

Best,


#4

More or less I guess I can try different configs…


#5

Actually I do have a question…

Is it ok to create the same index for the same field on 2 separate nodes?

So

CREATE INDEX foo1 ON BAR(foo) USING GSI WITH {"nodes":["10.x.x.1"]}
CREATE INDEX foo2 ON BAR(foo) USING GSI WITH {"nodes":["10.x.x.2"]}

#6

@javadevmtl, yes that should be fine. If I’m not mistaken that will also give you fault tolerance, so in case 10.x.x.1 goes down the query engine will go to 10.x.x.2 instead.

@geraldss can you confirm?


#7

Also can you confirm in community when doing the first setup of the node. When it’s time to pick the service type… Data is always ticked and can’t be unticked and when you untick index or query they both untick. So it seems with community you canot setup flexible topology.


#8

@javadevmtl that is true. MDS (multi-dimensional scaling) is only available in the enterprise edition. So with community you can use N1QL and all that, but every node is provisioned the same.


#9

Ok I think it’s fair then to add a comparison chart on the site. Unless I missed it… The site only mentions that enterprise has “more” features. Also whats not clear about Enterprise is it 30 day trial license? Can i download and try it out?


#10

Keep in mind that 4.0 GA is not released yet, there will be material on that. Here you can find more information on CE vs. EE in general http://www.couchbase.com/editions


#11

Yeah that’s the link. It says they’re different but that’s it. Ok cool can’t wait! :slight_smile:


#12

Yes, confirmed on fault tolerance.