问题标签 [bulkinsert]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - SqlBulkCopy.BulkCopyTimeout 属性
我正在使用 VSTS 2008 + C# + .Net 3.5 + ADO.Net 开发一个控制台应用程序来进行批量插入复制。
我想同时使用批量插入批处理和批量插入超时属性。对于 BulkCopyTimeout 属性,我很困惑,想知道它是适用于整个批量还是仅适用于每批批量?
http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlbulkcopy.bulkcopytimeout.aspx
提前谢谢,乔治
ado.net - 如何使用 ado.net 3.5 批量插入现有数据库表
我在数据库中有一个已经有 100 条记录的表。现在我必须再插入 100 条记录。现在我们必须使用哪个对象?无论是dataadapter还是sqlbulkcopy?
sql-server - 将带有换行符的 CSV 批量插入 SQL Server
我有一个看起来像这样的 csv:
是否可以将其直接导入 SQL Server?
sql - 如何使用 SubSonic 批量插入?
我有一些看起来像这样的东西
那是对数据库的太多插入。我可以做类似的事情吗?
谢谢。
sql - MySql 批量加载命令行工具
MySql 是否有批量加载命令行工具,例如用于 SQLServer 的 bcp 和用于 Oracle 的 sqlldr?我知道有一个 SQL 命令LOAD INFILE
或类似命令,但有时我需要将不同盒子上的文件批量加载到 MySQL 数据库。
sql - 批量插入带有回车符的文本字段的文件(Enters)
我在批量插入包含数据类型文本字段的文件时遇到问题,它包含输入,字段的分隔符是管道“|” 并且行终止符是“|\n”
我收到文本字段旁边的字段截断错误。我认为批量插入认为第二个字段中的输入是下一行。
这是数据示例
表架构是:
如您所见(好吧,看不到),有输入(用 CR 标记)并且批量插入将它们与新行混淆。
任何帮助将不胜感激。
谢谢
mysql - 索引不适合 key_buffer 时的快速 MySQL 批量加载
这里有一个关于如何正确配置 mysql (myisam) 以便快速执行批量插入(加载数据文件)的问题。
要导入 6 Gb 文本文件,1500 万行,16 列(一些 int,一些 varchar(255),一个 varchar(40),一个 char(1),一些 datetime,一个 mediumtext)。
相对 my.conf 设置:
共有三个索引 - 一个主索引(autincrement int)、一个唯一 int 和一个唯一 varchar(40)。
问题是在执行 load data infile 命令后,前 3 gigs 的数据被快速导入(基于 table.myd 的大小增加 - 5-8 mb/s),但是一旦超过 3020 Mb 就会限制导入速度大大减少 - table.myd 的大小正在增长 0.5mb/s。Key_blocks_unused
我注意到,导入过程会在耗尽为零时减慢。这些是mysql> show status like '%key%';
导入开始时的输出:
这就是它在 3020Mb 限制之后的样子,即当下key_blocks_unused
降到零时,这就是批量插入过程变得非常慢的时候:
问题很清楚,据我了解 - 索引存储在缓存中,但是一旦缓存填满,索引就会被一一写入磁盘,这很慢,因此所有过程都会减慢。如果我禁用基于 varchar(40) 列的唯一索引,因此所有索引都适合Key_blocks_used
(我猜这是直接依赖的变量key_buffer
,不是吗?),所有批量导入都是成功的。所以,我很好奇,如何让 mysqlKey_blocks_used
一次将所有数据放入磁盘,并释放Key_blocks_used
?. 我知道它可能会即时进行一些排序,但是我想它应该可以进行一些缓存的 RAM 磁盘同步,以便成功管理索引,即使它们并不完全适合内存缓存. 所以我的问题是“如何配置 mysql 以便批量插入避免在(几乎)每个索引上写入磁盘,即使所有索引都不适合缓存?" 最后一点 - 对于给定的表,delay_key_write 设置为 1,尽管与禁用时相比,它没有增加任何加速。
提前感谢您的任何想法、想法、解释和 RTM!(:
还有一个小问题——在达到 0 之前,我将如何计算有多少 varchar(40) 索引可以放入缓存Key_blocks_unused
?
PS 禁用索引,$myisamchk --keys-used=0 -rq /path/to/db/tbl_name
然后使用 重新启用它们$myisamchk -rq /path/to/db/tbl_name
,如Mysql 文档中所述,这是一种已知的解决方案,该解决方案有效,但仅在批量插入空表时才有效。当表中已经有一些数据时,索引唯一性检查是必要的,因此禁用索引不是解决方案。
sql - BULK INSERT 如何在内部工作?
有人可以解释一下 BULK INSERT 在内部是如何工作的,为什么它比正常的 INSERT 操作快得多?
问候,希希尔。
sql - 数据仓库重复维度行
我们开始使用来自事件日志的数据加载数据仓库。我们有一个普通的星型模式,其中事实表中的一行代表一个事件。我们的维度表是user_agent、ip、referal、page等的典型组合。一个维度表是这样的:
我们自动生成 id 以最终加入事实表。我的问题是:在我们的批量加载过程中识别重复记录的最佳方法是什么?在实际插入持久存储之前,我们将日志文件的所有记录上传到临时表中,但是,id 只是自动递增的,因此两天的两个相同的暗记录将具有不同的 id。创建值列的哈希是否合适,然后尝试对其进行比较?似乎尝试在每个值列上进行比较会很慢。有没有针对这种情况的最佳实践?
php - 在 100 个文件中的标记前批量插入代码
我想插入
在大约 100 个 php 文件的结束正文标记之前。不幸的是,制作该网站的人没有制作页眉或页脚模板。
做这个的最好方式是什么?我尝试使用 grep/find 获取文件列表并通过 xargs 将结果传送到 sed,但我没有运气。我可能有正则表达式错误。谁能帮我解决这个问题?
此外,您是否推荐任何适用于 Apple OS X 的图形工具?
谢谢,迈克
编辑
作品。