跳转到主要内容

Athena数据库的命令行界面(CLI)。具有自动完成和语法高亮功能。

项目描述

Build Status PyPI Downloads image image Join the chat at https://gitter.im/dbcli/athenacli

简介

AthenaCLI是Athena服务的命令行界面(CLI),可以进行自动完成和语法高亮,是dbcli社区的自豪成员。

快速开始

安装

通过pip安装

如果您已经知道如何安装Python包,那么您可以直接这样做

$ pip install athenacli

通过brew安装

Homebrew用户可以通过以下方式安装

$ brew install athenacli

如果您不知道如何安装Python包,请参阅安装页面以获取更多选项(例如docker)

配置

首次启动时,会在~/.athenacli/athenaclirc自动创建一个配置文件(运行athenacli)。请参阅文件本身以了解所有可用选项的描述。

以下4个变量是必需的。如果您是aws cli的用户,可以参考awsconfig文件,了解如何重用aws cli的凭证配置。

# AWS credentials
aws_access_key_id = ''
aws_secret_access_key = ''
region = '' # e.g us-west-2, us-east-1

# Amazon S3 staging directory where query results are stored.
# NOTE: S3 should in the same region as specified above.
# The format is 's3://<your s3 directory path>'
s3_staging_dir = ''

# Name of athena workgroup that you want to use
work_group = '' # e.g. primary

或者您也可以使用环境变量

$ export AWS_ACCESS_KEY_ID=YOUR_ACCESS_KEY_ID
$ export AWS_SECRET_ACCESS_KEY=YOUR_SECRET_ACCESS_KEY
$ export AWS_DEFAULT_REGION=us-west-2
$ export AWS_ATHENA_S3_STAGING_DIR=s3://YOUR_S3_BUCKET/path/to/
$ export AWS_ATHENA_WORK_GROUP=YOUR_ATHENA_WORK_GROUP

创建一个表

$ athenacli -e examples/create_table.sql

您可以在以下位置找到 examples/create_table.sql这里

运行查询

$ athenacli -e 'select elb_name, request_ip from elb_logs LIMIT 10'

REPL

$ athenacli [<database_name>]

功能

  • 在输入时自动完成SQL关键词,以及数据库中的表和列。
  • 语法高亮。
  • 智能完成将建议上下文相关的完成。
    • SELECT * FROM <tab> 只会显示表名。
    • SELECT * FROM users WHERE <tab> 只会显示列名。
  • 美观地打印表格数据和各种表格格式。
  • 一些特殊命令,例如:收藏查询。
  • 别名支持。即使在列名被别命名时,列完成也能正常工作。

请参阅功能页面以获取上述功能的截图。

用法

$ athenacli --help
Usage: main.py [OPTIONS] [DATABASE]

A Athena terminal client with auto-completion and syntax highlighting.

Examples:
    - athenacli
    - athenacli my_database

Options:
-e, --execute TEXT            Execute a command (or a file) and quit.
-r, --region TEXT             AWS region.
--aws-access-key-id TEXT      AWS access key id.
--aws-secret-access-key TEXT  AWS secretaccess key.
--s3-staging-dir TEXT         Amazon S3 staging directory where query
                                results are stored.
--work-group TEXT             Amazon Athena workgroup in which query is run, default is primary
--athenaclirc PATH            Location of athenaclirc file.
--help                        Show this message and exit.

有关如何使用AthenaCLI的详细信息,请参阅用法

贡献

如果您有兴趣为此项目做出贡献,首先我想表达我最诚挚的感谢。我编写了一篇小文档,描述了如何在开发环境中运行此项目。

如果您需要帮助,请随时联系我。我的电子邮件:zhuzhaolong0 AT gmail.com

常见问题解答

有关其他信息,例如“我如何获取对AthenaCLI的支持?”请参阅常见问题解答

鸣谢

特别感谢Amjith Ramanujam创建了pgcli和mycli,这激发了我创建AthenaCLI的想法,AthenaCLI是基于mycli的克隆。

感谢Jonathan Slenders创建了Python Prompt Toolkit,这让我接触到了pgcli和mycli。与这个库一起玩耍非常有趣。

感谢PyAthena为Athena数据库提供了一个纯Python适配器。

最后但同样重要的是,感谢我的团队和经理鼓励我从事这个业余项目。

类似的项目

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

athenacli-1.6.8.tar.gz (43.2 kB 查看哈希值)

源代码

构建分发

athenacli-1.6.8-py2.py3-none-any.whl (48.2 kB 查看哈希值)

上传时间 Python 2 Python 3

由以下机构支持