[ 
https://issues.apache.org/jira/browse/KUDU-619?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15289740#comment-15289740
 ] 

Adar Dembo commented on KUDU-619:
---------------------------------

I spent some time looking at the various Kudu command line tools and what they 
do. Here's my summary:
{noformat}
cfile-dump
- Dump a cfile (block ID)
  1. Print header/footer (default: yes)
  2. Iterate over each row (default: yes)
  3. Print each row (default: yes)

log-dump
- Dump a tablet's log segments (tablet ID)
- Dump a particular log segment (file name)
  1. Print header/footer (default: yes)
  2. Print nothing, raw PBs, decoded ops, or opids (default: decoded ops)
  3. Truncate printed data (default: 100 bytes)

kudu-pbc-dump
- Dump a containerized PB file (file name)
  1. Dump each message on one line (default: no)

kudu-fs_dump
- Dump a tablet's rowsets (tablet ID)
- Dump a tablet's data blocks (tablet ID)
- Dump a rowset's data blocks (tablet ID + rowset index)
- Dump a cfile (block ID)
- Dump a tablet's metadata (tablet ID)
- Dump an FS's UUID
  1. Truncate number of printed rows (default: 0)
  2. Dump metadata only (default: no)
  3. Dump block headers only (default: no)

kudu-fs_list
- Dump an FS as a tree of file names
- Dump all log segment file names in the FS
- Dump log segments by file name belonging to a tablet (tablet ID)
- Dump all tablet file names in the FS
- Dump all block IDs in the FS
- Dump all block IDs belonging to a tablet (tablet ID)
  1. Dump log segment headers (default: no)

kudu-ts-cli
- Dump information about hosted tablets
- Dump tablet IDs that are RUNNING
- Change value of a gflag (key, value)
- Dump live tablet data (tablet ID)
- Delete a tablet (tablet ID, reason)
- Dump tserver's current timestamp 
- Dump tserver's status
  1. TS address (default: localhost)

kudu-ksck
- Run ksck on a cluster
  1. Master address (default: none)
  2. Do a checksum scan (default: no)
  3. If checksumming, restrict table set (default: none)
  4. If checksumming, restrict tablet set (default: none)

kudu-admin
- Do a config change (tablet ID, peer ID, ADDSERVER/REMOVESERVER/CHANGEROLE 
(VOTER/NONVOTER))
- Dump all tables
- Delete a table (table name)
  1. Master addresses (default: localhost)
{noformat}

> Consolidate, clean up, and bring consistency to tools
> -----------------------------------------------------
>
>                 Key: KUDU-619
>                 URL: https://issues.apache.org/jira/browse/KUDU-619
>             Project: Kudu
>          Issue Type: Improvement
>          Components: ops-tooling
>    Affects Versions: M5
>            Reporter: Adar Dembo
>
> We have a number of different tools for working with Kudu data. This is 
> obviously a good thing, but because they were written at different times and 
> by different people, they can be rather inconsistent with one another. Here's 
> the comprehensive list, at the time of writing:
> * cfile-dump
> * kudu-fs_dump
> * kudu-fs_list
> * kudu-ksck
> * kudu-pbc-dump
> * kudu-ts-cli
> * log-dump
> Let's do a few things to make these tools ready for primetime:
> # Consolidate all tools that handle the same use case, possibly removing any 
> duplicated tools.
> # Give all tools a consistent naming scheme.
> # Ensure that all tools are consistent w.r.t. gflags usage, output style, 
> logging, and other expectations.



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

Reply via email to