tangwei/doris 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

tangwei/doris

最新稳定版本:v0.1.7

Composer 安装命令:

composer require tangwei/doris

包简介

A doris Stream Load for php.

README 文档

README

English

doris通过极少量数据(5 分钟一次)时可以使用 INSERT 写入数据, 吞吐较高时推荐使用 Stream Load 通过 HTTP 写入数据

Stream Load

安装

composer require tangwei/doris

使用

快速使用

$feHost = 'http://127.0.0.1:8030';       
$db = 'test_db';       
$user = 'root';       
$password = '';       
$streamLoad = new StreamLoad($feHost, $db, $db,$password);
$builder = $streamLoad->table('test_stream_load');
$builder->data([
    ['user_id' => 1, 'name' => 'q', 'age' => 11],
    ['user_id' => 2, 'name' => 'w', 'age' => 118],
]);
$builder->data(
    ['user_id' => 3, 'name' => 'q3', 'age' => 9],
);
$data = $builder->load();

获取streamLoad对象

通过.env文件配置,获取streamLoad对象

DORIS_FE_HOST=http://192.168.1.72:8040
DORIS_DB=testdb
DORIS_USER=root
DORIS_PASSWORD=''
DORIS_CONST_MEMORY=1
$streamLoad = Doris::streamLoad();

内存模式

提交大量数据时,可以设置constMemory为true,减少内存占用

$streamLoad = Doris::streamLoad();
$builder = $streamLoad->constMemory(true)->table('test_stream_load');

设置Header参数

可以通过setHeader方法设置参数,参考官方文档Header参数

$builder = Doris::table('test_stream_load');
$builder->setHeader(\Doris\StreamLoad\Header::COLUMNS, 'user_id,name,age');

异步模式

$builder = Doris::table('test_stream_load');
$builder->setHeader(\Doris\StreamLoad\Header::GROUP_COMMIT, 'async_mode');

通过文件提交数据

本地有cvs文件,可以通过文件直接导入上传

$builder = Doris::table('test_stream_load')
            ->setHeaders([
                'format' => 'csv',
                'column_separator' => ',',
                'trim_double_quotes' => 'true',
                'enclose' => '"',
            ])
            ->load('/user/test.csv');

hyperf 框架使用

底层自动判断协程环境,无需额外处理

性能测试

文件格式 数据量 constMemory 耗时(s) 内存大小(MB)
json 100万 fales 1.93 48.58
json 100万 true 7.59 1.21
cvs 100万 fales 1.62 22.83
cvs 100万 true 7.52 1.21

统计信息

  • 总下载量: 16
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-03-08