Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-489

CellValue class for transporting cell timestamp with cell value simultaneously

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • None
    • 0.2.0
    • Client, regionserver
    • None

    Description

      All of the get* methods take a timestamp parameter that means "at least as old as X". This is handy for getting data that fits your expectations about when it should exist. However, the result you get back doesn't actually contain the real timestamp the cell was stored at.

      For example, let's say you write the stock price for your favorite company into row "YHOO" at cell "stock:price". It takes the default timestamp of right now. Then, a day passes. You want to get the most recent stock price for YHOO, and also when the price was gathered. In the current system, you couldn't do this at all without also doing a scan at the same time.

      If we added a new class called CellValue that contained the byte[] cell value as well as the long timestamp of when it was stored, we could return an instance of this class wherever we used to return just the byte[]. This could be used in all the get() methods, getRow, getClosestAtOrBefore, etc. This has the advantage of making timestamp into a first-class citizen in HBase, which it hasn't been so far.

      Thoughts?

      Attachments

        1. 489.patch
          73 kB
          Bryan Duxbury
        2. 489-v2.patch
          73 kB
          Bryan Duxbury
        3. 489-v3.patch
          78 kB
          Bryan Duxbury

        Issue Links

          Activity

            People

              bryanduxbury Bryan Duxbury
              bryanduxbury Bryan Duxbury
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: