Regarding CouchBase performance

Hi CB community,

We are using Couchbase community edition 6.5 edition with gocb.v1 client package for golang. We are getting 28k performance for direct access of documents based on document key on 16 Core/32 GB machines with Couch Base on different machine (same sub net and same hardware details).

Another point is to highlight is that our product is having N1QL queries running over multiple buckets. When we pump the load to our application more than a particular rate, we start getting EOF or connection refused parameter. We tried to tune multiple parameters at CB end, but have no results/impact. Please suggest on this.

Based on the seeing the quotations and our customer commitments, we are planning to migrate to other database. Please suggest if there is any provision to get the better performance.

One more point should we move to Enterprise edition of CB. Will that help in getting better performance at CB end.

@Bharat_Gupta It would be great if you can provide the following details

  1. How many total documents you have?
  2. What is the query you are trying to run?
  3. How many data and query nodes you have?

If you can do a cb_collect logs and post it we can take a look

Thanks,
Raju

We only have the 8000 document in a particular bucket.
We are running only single query i.e. “select * from bucetname where cond1”
Will post the cb_collect logs in a while.

Thanks @Bharat_Gupta. I will look forward to the cb_collect logs, also post your index definition too along with your query

@raju, we have the total of 8000 documents where we are fetching the data using direct key.
We have another data where we are running N1QL query, where we are getting the performance not more that 2.5K for simple N1QL query "select SDB.* from SDB where tai=“987:954:00303A”’. In the bucket where this query is getting executed, are having 50 documents.
We are having single node in CouchDB cluster. with 16 Core, 32 GB RAM.

Regarding the logs, is there provision to upload the same as size is very large. I can share teh same via my email Id “bharat.gupta9892@gmail.com”

I am trying to upload the logs here, but its not getting uploaded.
Can anyone share how to post it.

@Bharat_Gupta Do you have an index something similar to this? CREATE INDEX adv_tai ON SDB(tai)"

Hi, I am having the following index.
CREATE INDEX INDEX_NSSF_SDB_TAC ON SDB(tai)

Regarding CB logs, can you share your email ID so that I can transfer via GDrive/Dropbox.

Attached is the link for CB logs.

Hi @Bharat_Gupta you can share the logs (I have sent you my email id)

Access granted. Waiting for your inputs on the same.

What are the N1QL benchmark that you have achieved in your Couchbase labs.
If will help us in benchmark our deployments and use cases.

Please share the resource and hardware details, if possible.

Thanks and Regards,
Bharat Gupta

The log analysis is the right way to give a proper solution for the problem, but here are some actions that you might help you to speed up your performance:


https://developer.couchbase.com/seo-monitoring-guide/
1 Like

Thanks @deniswsrosa for sharing. We will surely check this.
@raju, can you share your analysis fro the shared logs.

Your response would be highly appreciated.

Regards,
Bharat

Hi Community,

Can you share your observation on this well.

Regards,
Bharat

Hi CB Forums,

@raju. Your response is highly appreciated.
Well have few more queries, is there any significant gain in performance that you guys see upgrading from gocb.v1 to gocb.v2. We are using GO SDK for interaction with CB.
Also, any significant improvement in running the N1QL queries using gocb.v2 package instead of direct query like “select SD.* from SDB where tai = “<tai_value>””.

Your response will be highly appreciated.

Thanks and Regards,
Bharat Gupta

@Bharat_Gupta I was on vacation just came back. Here are some observations from the log files:

  1. Are you using Full Text Search? I see bunch of errors. If not, you can turn off that service
  2. I am also seeing

[ns_server:error,2020-10-23T09:05:47.861-04:00,ns_1@127.0.0.1:<0.12520.5>:mc_binary:try_get_xattr:579]Subdoc multi lookup error: arguments: #Port<0.36211> <<“NRF:service-nrfproxyamf:admin:admin”>> 996 <<"$XTOC">>, response: {memcached_error,
etmpfail,
undefined}
Not sure what you are trying here

Also how are you running the N1QL queries from Go SDK or via REST API?