laravel - 在 Laravel 中播种大数据的最佳案例

标签 laravel laravel-4

我有一个包含超过 30,000 条记录的文件,另一个包含 41,000 条记录。是否有使用 laravel 4 的 db:seed 播种的最佳案例研究?命令?一种使插入更迅速的方法。

谢谢您的帮助。

最佳答案

不要害怕,40K 行的表有点小。我有一个 100 万行的表,种子很顺利,我只需要在做之前添加这个:

DB::disableQueryLog();

在禁用它之前,Laravel 浪费了我所有的 PHP 内存限制,不管我给它多少。

我使用 fgets() 从 .txt 文件中读取数据,以编程方式构建数组并执行:
DB::table($table)->insert($row);

一个接一个,可能特别慢。

我的数据库服务器是 PostgreSQL,插入需要大约 1.5 小时才能完成,可能是因为我使用的 VM 内存不足。这些天我会在一台更好的机器上做一个基准测试。

关于laravel - 在 Laravel 中播种大数据的最佳案例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19682401/

相关文章:

laravel - 工匠错误: Failed to listen on localhost:8000 (reason: An attempt was made to access a socket in a way forbidden by its access permissions.)

php - Laravel 验证自定义消息

php - 如何安装和配置现有的 Laravel 项目? (拉维尔 4)

php - Laravel s3 文件系统驱动程序不使用 AWS_URL 变量

php - 在 Eloquent 中模拟右连接

php - 在 Eloquent 中按自定义顺序对集合进行排序

php - 在搜索中输入字符 ñ 时,它会从数据库中检索所有行

php - Laravel - 分页和 get()

php - 由于 apache2 配置,Laravel 4 Controller 路由无法正常工作

javascript - bootstrap-vue.js 与 laravel 未知的自定义元素 : <b-alert> error