You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Hanifi Gunes (JIRA)" <ji...@apache.org> on 2016/01/15 18:32:40 UTC

[jira] [Created] (DRILL-4275) Refactor e/pstore interfaces and their factories to provide a unified mechanism to access stores

Hanifi Gunes created DRILL-4275:
-----------------------------------

             Summary: Refactor e/pstore interfaces and their factories to provide a unified mechanism to access stores
                 Key: DRILL-4275
                 URL: https://issues.apache.org/jira/browse/DRILL-4275
             Project: Apache Drill
          Issue Type: Improvement
          Components: Execution - Flow
            Reporter: Hanifi Gunes
            Assignee: Hanifi Gunes


We rely on E/PStore interfaces to persist data. Even though E/PStore stands for Ephemeral and Persistent stores respectively, the current design for EStore does not extend the interface/functionality of PStore at all, which hints abstraction for EStore is redundant. This issue proposes a new unified Store interface replacing the old E/PStore that exposes an additional method that report persistence level as follows:

{code:title=Store interface}
interface Store<V> {
  StoreMode getMode();
  V get(String key);
  ...
}

enum StoreMode {
  EPHEMERAL,
  PERSISTENT,
  ...
}
{code}

The new design brings in less redundancy, more centralized code, ease to reason and maintain.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)