Drizzle Client Rewrite

From OpenSQLCamp

Jump to: navigation, search

Eric Day of the Drizzle team at Sun Microsystems talks about the Drizzle client rewrite

Drizzle client project

https://capstonedd.cs.pdx.edu/wiki/requirements

http://drizzle.org/wiki/Proposed_Client_Features

http://drizzle.org/wiki/Client/Boots_API_Design_Concept


Will be a Launchpad project

  • Implemented in Python
  • Provide cmd line int to relation db servers
    • abstract out the delimiter stuff (avoid bobby tables problems)
    • python dbi / ?

Other client tools to target:

  1. _dump
  2. _import
  3. _ping
  4. _...replication protocols?, _protobuf stuff (python is supported)

Mapping SHOW commands:

  • abstraction to the information schema
  • Implement -E like psql
  • TARGET doing the SHOW commands first

Tab completion (and the ability to turn them off

  • there's probably a python library

Plugin system

  • python library with predefined objs
  • output control ideas: SELECT blah FROM blah -> csv(',') -> file(fsdfsd)

CLIENT

  • Send SQL once, and then cache the abstract syntax tree...

Interface to hide PS etc.

  • DBD
  • leave the abstraction of the non-defined SQL standard stuff (like PS)

Feature request

  • pager integration

Shells? Need to choose one

SUGGESTIONS

  • create a reference guideline for naming parameters

SUGGESTED NAMES:

   anemone
   mermaid
   boots

GENERAL ADVICE:

  • Make the interface to using it non-pythonic, to help avoid the language bigots
  • Packaging -> install the tool in /usr/bin, etc to make it not so Pythonic
  • General error reporting should not be python stack dumps (do not follow yum's example)
  • Create a tool that renames itself
Personal tools