下载
编译与部署
开始使用
操作手册
- 数据导入
- 表结构变更
- 物化视图
- HTTP API
- FE
- MANAGER
- Bootstrap Action
- Cancel Load Action
- Check Decommission Action
- Check Storage Type Action
- Config Action
- Connection Action
- Get DDL Statement Action
- Get Load Info Action
- Get Load State
- Get FE log file
- Get Small File
- HA Action
- Hardware Info Action
- Health Action
- Log Action
- Logout Action
- Meta Action
- Meta Action
- Meta Replay State Action
- Profile Action
- Query Detail Action
- Query Profile Action
- Row Count Action
- Session Action
- Set Config Action
- Show Data Action
- Show Meta Info Action
- Show Proc Action
- Show Runtime Info Action
- Statement Execution Action
- System Action
- Table Query Plan Action
- Table Row Count Action
- Table Schema Action
- Upload Action
- CANCEL LABEL
- Compaction Action
- CONNECTION
- getlogfile
- GET LABEL STATE
- GET TABLETS ON A PARTICULAR BE
- PROFILE
- QUERY DETAIL
- RESTORE TABLET
- SHOW DATA
- MIGRATE SINGLE TABLET TO A PARTICULAR DISK
- GET TABLETS DISTRIBUTION BETWEEN DIFFERENT DISKS
- FE
- 运维操作
- 配置文件
- 拦截规则
- 备份与恢复
- Broker
- Colocation Join
- Bucket Shuffle Join
- 动态分区
- 数据导出
- 导出查询结果集
- 分区缓存
- 权限管理
- LDAP
- 资源管理
- 查询执行的统计
- Runtime Filter
- Segment V2 升级手册
- 文件管理器
- SQL MODE
- 时区
- 变量
- 更新
- 多租户和资源划分
最佳实践
扩展功能
- 审计日志插件
- Doris On ES
- Doris output plugin
- ODBC External Table Of Doris
- Doris 插件框架
- Spark Doris Connector
- Flink Doris Connector
- DataX doriswriter
- UDF
设计文档
SQL 手册
- SQL 函数
- 日期函数
- convert_tz
- curdate
- current_timestamp
- curtime,current_time
- date_add
- date_format
- date_sub
- datediff
- day
- dayname
- dayofmonth
- dayofweek
- dayofyear
- from_days
- from_unixtime
- hour
- makedate
- minute
- month
- monthname
- now
- second
- strtodate
- time_round
- timediff
- timestampadd
- timestampdiff
- to_days
- unix_timestamp
- utc_timestamp
- week
- weekofyear
- year
- yearweek
- 地理位置函数
- 字符串函数
- 聚合函数
- bitmap 函数
- Hash函数
- Doris 窗口函数使用
- CAST
- DIGITAL_MASKING
- 日期函数
- 语法帮助
- 用户账户管理
- 集群管理
- ADMIN CANCEL REPAIR
- ADMIN CLEAN TRASH
- ADMIN CHECK TABLET
- ADMIN REPAIR
- ADMIN SET CONFIG
- ADMIN SET REPLICA STATUS
- ADMIN SHOW CONFIG
- ADMIN SHOW REPLICA DISTRIBUTION
- ADMIN SHOW REPLICA STATUS
- ADMIN SHOW DATA SKEW
- ALTER CLUSTER
- ALTER SYSTEM
- CANCEL DECOMMISSION
- CREATE CLUSTER
- CREATE FILE
- DROP CLUSTER
- DROP FILE
- ENTER
- INSTALL PLUGIN
- LINK DATABASE
- MIGRATE DATABASE
- SET LDAPADMINPASSWORD
- SHOW BACKENDS
- SHOW BROKER
- SHOW FILE
- SHOW FRONTENDS
- SHOW FULL COLUMNS
- SHOW INDEX
- SHOW MIGRATIONS
- SHOW PLUGINS
- SHOW TABLE STATUS
- SHOW TRASH
- UNINSTALL PLUGIN
- DDL
- ALTER DATABASE
- ALTER TABLE
- ALTER VIEW
- BACKUP
- CANCEL ALTER
- CANCEL BACKUP
- CANCEL RESTORE
- CREATE DATABASE
- CREATE ENCRYPTKEY
- CREATE INDEX
- CREATE MATERIALIZED VIEW
- CREATE REPOSITORY
- CREATE RESOURCE
- CREATE TABLE LIKE
- CREATE TABLE
- CREATE VIEW
- DROP DATABASE
- DROP ENCRYPTKEY
- DROP INDEX
- DROP MATERIALIZED VIEW
- DROP REPOSITORY
- DROP RESOURCE
- DROP TABLE
- DROP VIEW
- HLL
- RECOVER
- RESTORE
- SHOW ENCRYPTKEYS
- SHOW RESOURCES
- TRUNCATE TABLE
- CREATE FUNCTION
- DROP FUNCTION
- SHOW FUNCTIONS
- DML
- BROKER LOAD
- CANCEL LOAD
- DELETE
- EXPORT
- GROUP BY
- LOAD
- MINI LOAD
- MULTI LOAD
- PAUSE ROUTINE LOAD
- RESUME ROUTINE LOAD
- ROUTINE LOAD
- SHOW ALTER
- SHOW BACKUP
- SHOW CREATE FUNCTION
- SHOW CREATE ROUTINE LOAD
- SHOW DATA
- SHOW DATABASES
- SHOW DELETE
- SHOW DYNAMIC PARTITION TABLES
- SHOW EXPORT
- SHOW LOAD
- SHOW PARTITIONS
- SHOW PROPERTY
- SHOW REPOSITORIES
- SHOW RESTORE
- SHOW ROUTINE LOAD TASK
- SHOW ROUTINE LOAD
- SHOW SNAPSHOT
- SHOW TABLES
- SHOW TABLET
- SHOW TRANSACTION
- SPARK LOAD
- STOP ROUTINE LOAD
- STREAM LOAD
- ALTER ROUTINE LOAD
- INSERT
- UPDATE
- 数据类型
- 辅助命令
开发者手册
- 调试工具
- Doris BE存储层Benchmark工具
- 使用 Eclipse 搭建 FE 开发环境
- 使用 IntelliJ IDEA 搭建 FE 开发环境
- Apache Doris Be 开发调试
- Java 代码格式化
- C++ 代码格式化
Apache 社区
Doris output plugin
该插件用于logstash输出数据到Doris,使用 HTTP 协议与 Doris FE Http接口交互,并通过 Doris 的 stream load 的方式进行数据导入.
安装和编译
1.下载插件源码
2.编译
在extension/logstash/ 目录下执行
gem build logstash-output-doris.gemspec
你将在同目录下得到 logstash-output-doris-{version}.gem 文件
3.插件安装
copy logstash-output-doris-{version}.gem 到 logstash 安装目录下
执行命令
./bin/logstash-plugin install logstash-output-doris-{version}.gem
安装 logstash-output-doris 插件
配置
示例:
在config目录下新建一个配置配置文件,命名为 logstash-doris.conf
具体配置如下:
output {
doris {
http_hosts => [ "http://fehost:8030" ]
user => user_name
password => password
db => "db_name"
table => "table_name"
label_prefix => "label_prefix"
column_separator => ","
}
}
配置说明:
连接相关配置:
配置 | 说明 | |
---|---|---|
http_hosts | FE的HTTP交互地址 eg | ["http://fe1:8030", "http://fe2:8030"] |
user | 用户名,该用户需要有doris对应库表的导入权限 | |
password | 密码 | |
db | 数据库名 | |
table | 表名 | |
label_prefix | 导入标识前缀,最终生成的标识为 {label_prefix}_{db}_{table}_{time_stamp} |
导入相关配置:(参考文档)
配置 | 说明 |
---|---|
column_separator | 列分割符,默认为\t。 |
columns | 用于指定导入文件中的列和 table 中的列的对应关系。 |
where | 导入任务指定的过滤条件。 |
max_filter_ratio | 导入任务的最大容忍率,默认零容忍。 |
partition | 待导入表的 Partition 信息。 |
timeout | 超时时间,默认为600s。 |
strict_mode | 严格模式,默认为false。 |
timezone | 指定本次导入所使用的时区,默认为东八区。 |
exec_mem_limit | 导入内存限制,默认为 2GB,单位为字节。 |
其他配置
配置 | 说明 |
---|---|
save_on_failure | 如果导入失败是否在本地保存,默认为true |
save_dir | 本地保存目录,默认为 /tmp |
automatic_retries | 失败时重试最大次数,默认为3 |
batch_size | 每批次最多处理的event数量,默认为100000 |
idle_flush_time | 最大间隔时间,默认为20(秒) |
启动
执行命令启动doris output plugin:
{logstash-home}/bin/logstash -f {logstash-home}/config/logstash-doris.conf --config.reload.automatic
完整使用示例
1.编译doris-output-plugin
1> 下载ruby压缩包,自行到ruby官网下载,这里使用的2.7.1版本
2> 编译安装,配置ruby的环境变量
3> 到doris源码 extension/logstash/ 目录下,执行
gem build logstash-output-doris.gemspec
得到文件 logstash-output-doris-0.1.0.gem,至此编译完成
2.安装配置filebeat(此处使用filebeat作为input)
1> es官网下载 filebeat tar压缩包并解压
2> 进入filebeat目录下,修改配置文件 filebeat.yml 如下:
filebeat.inputs:
- type: log
paths:
- /tmp/doris.data
output.logstash:
hosts: ["localhost:5044"]
/tmp/doris.data 为doris数据路径
3> 启动filebeat:
./filebeat -e -c filebeat.yml -d "publish"
3.安装logstash及doris-out-plugin
1> es官网下载 logstash tar压缩包并解压
2> 将步骤1中得到的 logstash-output-doris-0.1.0.gem copy到logstash安装目录下
3> 执行
./bin/logstash-plugin install logstash-output-doris-0.1.0.gem
安装插件
4> 在config 目录下新建配置文件 logstash-doris.conf 内容如下:
input {
beats {
port => "5044"
}
}
output {
doris {
http_hosts => [ "http://127.0.0.1:8030" ]
user => doris
password => doris
db => "logstash_output_test"
table => "output"
label_prefix => "doris"
column_separator => ","
columns => "a,b,c,d,e"
}
}
这里的配置需按照配置说明自行配置
5> 启动logstash:
./bin/logstash -f ./config/logstash-doris.conf --config.reload.automatic
4.测试功能
向/tmp/doris.data追加写入数据
echo a,b,c,d,e >> /tmp/doris.data
观察logstash日志,若返回response的Status为 Success,则导入成功,此时可在 logstash_output_test.output 表中查看已导入的数据
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论