【问题标题】:Daily data generation and insertion每日数据生成和插入
【发布时间】:2013-10-20 09:19:36
【问题描述】:

我遇到了一个问题,也许这里有人可以帮我解决。

我在一家商业智能公司工作,我想以客户使用产品的方式模拟我们产品的整个使用周期。

简而言之,我们的客户每天向他们的数据库插入大约 2000 万条记录,而我们的产品在一天结束时会处理新数据。

我想每天自动创建大约 2000 万条记录并将它们插入某个数据库(可能是 MSSQL)。

我应该指出,记录的数量每天应该在 15 到 2500 万之间变化。除此之外,数据应该被插入到与外键链接的 6 个表中。

我通常使用 Redgate 的 SQL 生成器来创建数据,但据我所知,它适合一次性数据生成,而不是我正在寻找的持续数据生成。

如果有人知道适合这种情况的方法/工具,请告诉我。 谢谢!

【问题讨论】:

  • 您不能将其作为cron 作业(Linux/Unix)或计划任务(Windows)运行吗?
  • 我可以,但是有两个问题。首先,在 Windows 中使用调度程序意味着从命令行运行 SQL 生成器并每天将更多行附加到数据库中(这实际上很好..)。问题是生成器不检查主键约束并且每天都会创建相同的主键。其次,我不知道如何通过命令行将每天创建的行数设置为随机。
  • 生成相同的 PKs.. gack!必须有一种方法可以使产品正常工作,PK 生成是插入数据的#1 要求。至于随机化行数,我认为这实际上不会对处理或结果产生重大影响?所以,这是一种美好而不是必需品。

标签: database database-administration data-generation


【解决方案1】:

您还可以编写一个小型 Java(或类似)程序来从数据库中获取起始 ID,选择要插入的随机行数,然后将数据生成工具作为子进程执行。

例如,参见 Runtime.exec():

然后您可以将程序作为计划任务或cron 作业运行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-25
    相关资源
    最近更新 更多