Uploaded image for project: 'Couchbase Documentation'
  1. Couchbase Documentation
  2. DOC-121

Docs request: documentation/blog on using k/v versus views

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Won't Fix
    • Affects Version/s: None
    • Fix Version/s: tech-debt
    • Component/s: views
    • Labels:
      None

      Description

      Sorry if this is already started or in existence...

      Need to be able to help users understand the differences in performance/scale/behavior between using views or managing indexes within k/v.

      Something i just sent to a customer:
      It's really a matter of understanding two things: the consistency your application requires between writes and those writes being seen in a view update, and the latency/throughput requirements you have for the queries of the views themselves.

      Consistency: Because views are processed after data has been written to disk, there will be a delay between when you make a write and when it is available in the view. You can mitigate this with our "observe" function, but that will introduce a performance penalty on the write itself since you will be waiting for it to be written to disk...not something we'd recommend for every write. The amount of delay is really dependent on the resources available to the system and the amount of load you're putting on it. The nice thing is that this scales out very linearly by adding more nodes since each node only has to process the data that it is responsible for and more nodes means each node does less work.

      Query latency/throughput: This is where the scale and performance questions really come in. Because a query will always have to gather data from all nodes of the cluster, it's not something that necessarily scales out with more nodes. Additionally, the query results are coming from disk. The nice thing here is that not all requests actually have to get served from disk, the OS will do a very good job of caching the disk IO and actually sending from RAM. However, it will be a bit variable and unpredictable.

      Also:
      -need specific use case examples
      -need instructions on how to accomplish within k/v

      No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

        Hide
        kzeller kzeller added a comment -

        Any suggestions on who could contribute the information if this turns into docs, or who would write this blog (which can then be incorporated into our docs)?

        Show
        kzeller kzeller added a comment - Any suggestions on who could contribute the information if this turns into docs, or who would write this blog (which can then be incorporated into our docs)?
        Hide
        dipti Dipti Borkar added a comment -

        This should be in the documentation.

        Show
        dipti Dipti Borkar added a comment - This should be in the documentation.
        Hide
        kzeller kzeller added a comment -
        Show
        kzeller kzeller added a comment - Blog from JChris: here ya go http://blog.couchbase.com/performance-oriented-architecture
        Hide
        akurtzman Amy Kurtzman added a comment -

        Perry, does the blog post mentioned in the previous comment satisfy this information need? Or is there something more that you'd like to see? Can this issue be closed?

        Thanks,
        Amy

        Show
        akurtzman Amy Kurtzman added a comment - Perry, does the blog post mentioned in the previous comment satisfy this information need? Or is there something more that you'd like to see? Can this issue be closed? Thanks, Amy
        Hide
        perry Perry Krug added a comment -

        I really don't think it does. JChris's blog is useful on its own, but really doesn't address what I put in the description of this bug.

        Show
        perry Perry Krug added a comment - I really don't think it does. JChris's blog is useful on its own, but really doesn't address what I put in the description of this bug.
        Hide
        akurtzman Amy Kurtzman added a comment -

        Thanks, we'll keep it open.

        Show
        akurtzman Amy Kurtzman added a comment - Thanks, we'll keep it open.
        Hide
        akurtzman Amy Kurtzman added a comment -

        This request will be covered by the secondary indexes topic for Sherlock.

        Show
        akurtzman Amy Kurtzman added a comment - This request will be covered by the secondary indexes topic for Sherlock.

          People

          • Assignee:
            akurtzman Amy Kurtzman
            Reporter:
            perry Perry Krug
          • Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Gerrit Reviews

              There are no open Gerrit changes