{"issue":{"state":"open","pull_request":{"diff_url":null,"html_url":null,"patch_url":null},"user":{"avatar_url":"https://secure.gravatar.com/avatar/f9c681840591c5b0550d461864d1c136?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"f9c681840591c5b0550d461864d1c136","url":"https://api.github.com/users/eslick","login":"eslick","id":294768},"milestone":null,"assignee":{"avatar_url":"https://secure.gravatar.com/avatar/f9c681840591c5b0550d461864d1c136?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"f9c681840591c5b0550d461864d1c136","url":"https://api.github.com/users/eslick","login":"eslick","id":294768},"labels":[],"updated_at":"2011-10-29T16:52:35Z","comments":0,"closed_at":null,"url":"https://api.github.com/repos/compasslabs/clojure-hbase-schemas/issues/2","body":"Instead of manually configuring a table, add a schema-aware layer to the admin interface to allow for table creation/deletion.\r\n\r\nDescribe the column in the schema:\r\n\r\n(define-schema :tablename [:key-type :keyword\r\n                                                   :descriptor-default {:compression-type Compression$Algorithm/LZO}]\r\n :family {:key-type :string\r\n               :exceptions {...}\r\n               :descriptor\r\n                     {:block-cache-enabled true\r\n                      :max-versions 10}}\r\n\r\nThe family descriptor is merged with the default-descriptor so defaults will need to be overridden by children if necessary.\r\n\r\nAdmin API:\r\n\r\n(instantiate-table schema-name) -> creates the table and columns using descriptor information or defaults\r\n(upgrade-table schema-name) -> \r\n\tdisable table\r\n\tget column family defs\r\n\tdiff existing table descriptors with schema specifications\r\n\tchange/add/del column families as appropriate\r\n\tre-enable table\r\n(table-synchronized? schema-name) ->\r\n        Is the database description the same as that specified by the schema","html_url":"https://github.com/compasslabs/clojure-hbase-schemas/issues/2","number":2,"title":"Manipulate table definitions using schemas","id":2087605,"created_at":"2011-10-29T16:52:35Z"},"action":"opened"}