Uploaded image for project: 'Accumulo'
  1. Accumulo
  2. ACCUMULO-2589 Create new client API
  3. ACCUMULO-2570

Consider API additions to support non-batch oriented reads/writes

    XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Resolved
    • Trivial
    • Resolution: Incomplete
    • None
    • None
    • client, tserver
    • None

    Description

      Primary Read API : Scanner and BatchScanner
      Primary Write API: BatchWriter

      Both the Read calls are oriented to a scanning a collection of key-values (unless someone knows of the Range.exact method), and have internals that are focused on multiple, repeated fetching of batches.

      For writes, Mutations are buffered internally and are focused around sending batches of updates.

      While these classes do support pointed accesses (write a single Mutation, get the Value from a single Key), the API is not succinct and may incur unnecessary penalty due to the implementation also needing to support batch operations.

      It would be nice to consider some new access patterns that are more focused around very pointed accesses that reduce the API complexity for simple cases. Extremely hypothetical example

        Value v = connector.get("tableName", new Key("row", "cf", "cq", "viz");
        connector.put("tableName", new Key("row", "cf", "cq", "viz"), new Value("value"));
      

      The implementation could focus on specifically handling this pointed accesses in the most efficient way without worrying about also handling batch operations.

      Attachments

        Activity

          People

            Unassigned Unassigned
            elserj Josh Elser
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: