Druid添加扩展S3数据源
Contents
最近接触aws比较多,然后研究了下实时数仓druid/kylin的部分,数据是存在s3桶中,driud连接s3的文章介绍不多,只有官方有一点点介绍,不详细,这里记录下。druid的扩展很多,有一部分是官方维护,一部分是社区维护,也可以自己定制自己的扩展 具体的列表见:https://druid.apache.org/docs/latest/development/extensions.html
1. 首先需要在druid添加s3的扩展
-
根据自己的启动方式,选择该目录下的配置文件,我是用micro-quickstart模式启动的,配置文件目录如下:
apache-druid-0.17.0/conf/druid/single-server/micro-quickstart/_common/common.runtime.properties
-
在27行添加 druid-s3-extensions:
druid.extensions.loadList=["druid-hdfs-storage", "druid-kafka-indexing-service", "druid-datasketches","druid-s3-extensions"]
-
重新启动,就可以看到原来灰色的s3,已经可用。
2.设置AWS凭证
AWS官方推荐使用设置凭证方式.第一种也很方便,直接在driud的
apache-druid-0.17.0/conf/druid/single-server/micro-quickstart/_common/common.runtime.properties
配置文件中有相应的注释打开设置key即可。
添加默认的aws配置文件到机器
默认凭证配置文件–通常位于 ~/.aws/credentials
(此位置可能因平台而异),此凭证文件由多个 AWS 开发工具包和 AWS CLI 共享。AWS SDK for Java使用 ProfileCredentialsProvider 加载这些凭证。
在本地系统上的 AWS 凭证配置文件中设置凭证,该配置文件位于:
-
Linux, macOS, or Unix 上的
~/.aws/credentials
-
Windows 上的 C:\Users\USERNAME
\.aws\credentials
此文件应包含以下格式的行:
|
|
用您自己的 AWS 凭证值替换值 your_access_key_id
和 your_secret_access_key
。
3.设置AWS区域
如果未选择区域,则默认情况下将使用us-east-1。
使用设置凭证以设置默认 AWS 区域:
在本地系统上的 AWS 配置文件中设置 AWS 区域,该文件位于:
-
Linux, macOS, or Unix 上的
~/.aws/config
-
Windows 上的
C:\Users\USERNAME\.aws\config
此文件应包含以下格式的行:
|
|
使用所需的 AWS 区域(例如“us-west-2”)替换 your_aws_region
。
参考: https://druid.apache.org/docs/latest/development/extensions-core/s3.html#reading-data-from-s3 https://docs.aws.amazon.com/zh_cn/sdk-for-java/v1/developer-guide/setup-credentials.html