bentools / cpimport-bundle
Symfony Bundle - 使用MariaDb Columnstore CpImport工具与文件监视器
dev-master / 1.0.x-dev
2018-04-12 11:49 UTC
Requires
- php: ^7.1.3
- symfony/config: ~3.0||~4.0
- symfony/console: ~3.0||~4.0
- symfony/dependency-injection: ~3.0||~4.0
- symfony/http-kernel: ~3.0||~4.0
- symfony/lock: ~3.0||~4.0
- symfony/process: ~3.0||~4.0
- symfony/yaml: ~3.0||~4.0
Requires (Dev)
- symfony/dotenv: ~4.0
- symfony/framework-bundle: ~3.0||~4.0
- symfony/var-dumper: ~4.0
This package is auto-updated.
Last update: 2024-09-15 00:24:15 UTC
README
MariaDb ColumnStore 是一个非常强大的列式MySQL存储,非常适合分析和大数据。
但它有一个缺点,写入操作非常缓慢,但是配备了cpimport
,一个二进制文件,可以在几秒钟内将包含数百万行的CSV文件加载到您选择的表中。
这个Symfony扩展包使文件监视器能够监视一个目录,当新的CSV文件到来时,它会运行cpimport
并将它们删除。
安装
composer require bentools/cpimport-bundle:1.0.x-dev
配置
将包添加到您的内核中。然后,将您的目录映射到数据库/表,如下所示
# config/packages/cpimport.yaml (or app/config.yml in Symfony 3) cpimport: cpimport_bin: /usr/local/mariadb/columnstore/bin/cpimport watch: /path/to/csv_sales: database: my_shop table: sales_day options: delimiter: ',' enclosure: '"' timeout: 60
使用方法
自动处理配置目录中的新文件
php bin/console cpimport:watch
通过cpimport
手动处理CSV文件
php bin/console cpimport:run my_shop sales_day path/to/file.csv --delimiter=','