问题标签 [etl]

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.

0 投票
5 回答
45192 浏览

sql-server - 将 XML 数据保存到 SQL Server 的最佳方法是什么?

有没有一条非常直接的直接路线?(即SQL Server可以读取XML)

或者,最好解析 XML 并通过 ADO.Net 以通常的方式将其作为单独的行或批量更新进行传输?

我意识到可能存在涉及大型复杂存储过程的解决方案——虽然我并不完全反对这一点,但我倾向于将我的大部分业务逻辑放在 C# 代码中。我见过使用 SQLXMLBulkLoad 的解决方案,但它似乎需要相当复杂的 SQL 代码。

作为参考,我将一次处理大约 100 行,每行大约有 50 个小数据(字符串和整数)。这最终将成为每天的批处理作业。

您可以提供的任何代码片段将不胜感激。

0 投票
2 回答
126 浏览

sql - 我如何(快速)整理来自不同表格的 ID?

我有三个非规范化表,我必须从表面上看(数据来自一些外部资源)。这三个表有不同的定义,但它们各自从不同的角度描述了同一个对象。

这些表之间唯一的共同点是它们的主键。我可以使用 SELECT UNION SELECT 将 ID 聚集在一起,但查询似乎相对较慢,即使每个表都有其 PK 字段索引。我可以创建一个视图来抽象这个查询 vw_object_ids,但它以相同的速度执行。我想我可以添加一个索引来实现视图,但是在 SQL Server 2005 中,您不能使用 UNION 来索引视图。

我想要的是让 ID 的主索引与基础数据同步,这些数据可能随时更新或删除。我想我可以通过一组疯狂的触发器无限期地完成此任务,或者只是满足于未索引视图的速度。但我只是想确保我没有遗漏任何选项,或者这个场景是否有名称或是否表明了一种模式。

想法?

0 投票
3 回答
1638 浏览

c# - 如何使用 ADO.Net 最好地插入 350,000 行

我有一个包含 350,000 行的 csv 文件,每行大约有 150 列。

使用 ADO.Net 将这些行插入 SQL Server 的最佳方法是什么?

我通常这样做的方式是手动创建 SQL 语句。我想知道是否有任何方法可以将其编码为简单地将整个数据表插入 SQL Server?或者像这样的一些捷径。

顺便说一句,我已经尝试过用 SSIS 来做这件事,但是有一些数据清理问题我可以用 C# 处理,但用 SSIS 就不那么容易了。数据以 XML 开始,但为了简单起见,我将其更改为 CSV。

0 投票
4 回答
3118 浏览

sql-server - 将非规范化的关系数据从 Excel 导入 SQL Server

我需要将 Excel 电子表格中的数据导入 SQL Server,但数据不是关系/规范化格式,因此导入向导不会删除它(据我所知)。

数据格式如下:

(抱歉,我缺乏在早上这个时候拿出“真实”数据的创造力......)

每行包含一个唯一的产品,但类别结构是重复的。我想将此数据导入三个表:

(我知道 SubCategory 应该真正包含在 Category 中,DB 不是我的设计)

我需要一种方法来根据类别导入唯一行,然后是子类别列,然后在将其他列导入产品时,根据名称获取对子类别的引用。

如果没有编写脚本,有没有办法使用导入向导或其他工具来做到这一点?

0 投票
1 回答
886 浏览

sql-server - 有人用过 CozyRoc SSIS+ 吗?

我为一家大型加拿大零售商工作,我们目前正在考虑将 CozyRoc 用于我们的大型 ETL 项目。我想知道是否有人可以推荐该软件,最好是通过电子邮件链或电话。

0 投票
3 回答
3715 浏览

database - 如何处理大型数据集的增量负载 ssis

我有 2 个表(约 400 万行),我必须对匹配和不匹配的记录执行插入/更新操作。我对必须用于增量负载的方法感到非常困惑。我应该使用 Lookup 组件还是新的 sql server 合并语句?会不会有太多的性能差异?

0 投票
1 回答
384 浏览

email - 即席数据处理/ETL

我刚开始在一家新公司从事外包通信(例如打印和邮件、电子邮件、传真)。要求之一是处理客户数据并准备好邮寄。

对于重复性工作,使用与一些寻址软件链接的 ETL 工具很容易,但对于临时工作来说,这有点矫枉过正。我以前使用过内部开发的东西(笨重但可用),但我不想在这里重新开发。有什么建议吗?

一些特点:

  • 基本 DBMS 功能(最好带有适当的 DBMS 后端以支持 SQL)
  • 字段连接(例如结合名字 + 姓氏)
  • “推列”(例如,对于地址字段 1 - 8,将它们向左推,因此如果一个为空白,则下一个被推上)
  • 澳大利亚邮政邮件分拣和dpid分配(或者可以相对容易地链接到外部工具)
0 投票
2 回答
2979 浏览

ssis - SSIS 事务 - 大型记录集

我想知道 SSIS 如何处理大型数据集的事务。我有一个大约 150,000 行的“大型”数据集,作为从临时数据库到实时数据库的 ETL 的一部分,每一行都需要根据业务规则进行验证。

如果任何记录不符合其业务规则,则不会有任何记录出现在实时数据库中(即回滚事务)。

我的问题是 SSIS 如何处理大型事务 - 或者可以吗?如果最后一条记录不符合其业务规则,它会处理输入 149,999 条记录然后回滚整个记录吗?或者是否有更好的最佳实践来执行这种类型的大数据传输操作?

我目前的想法是在控制流级别处理序列容器中的每条记录,并在容器上启用事务设置。所有验证都将在序列容器中完成,插入也将在此容器中完成。

0 投票
8 回答
33875 浏览

sql-server - 如何恢复或重置 SSIS 包密码?

我有一些 SSIS 包受密码保护(它们的保护级别显然是 EncryptAllWithPassword)由离开公司且无法再访问的开发人员,并且由于密码不能被尝试打开它们而出现以下错误提供:

加载“Package.dtsx”时出错:无法删除包保护,出现错误 0xC0014037“包已使用密码加密。未指定密码或密码不正确。”。这发生在 CPackage::LoadFromXML 方法中。

有什么办法可以打开这些包吗?我可以访问最初用于创建这些包的管理员帐户,并且其他包由同一个人加密,但使用我知道的不同密码。

我已经就这个问题联系了当地的微软代表,到目前为止,他们只将我链接到一个描述如何设置或更改密码的页面,这无济于事,因为我需要先打开包或提供旧密码。有没有人遇到过类似的情况或知道解决此问题的方法?

0 投票
3 回答
4184 浏览

sql - 对 ETL 的良好 SQL Server 集成服务 (SSIS) 示例/示例的建议?

我正在寻找一些体面的示例/示例,使用 SSIS 从一个 SQL Server 数据库到另一个不一定在同一个实例中执行一些 ETL。

这个想法是将数据行及其层次结构(关系)从一个 OLTP 数据库迁移到另一个数据库。

SSIS 为我们提供了一些优势,使其成为迁移/ETL 平台的不错选择(除其他外,它需要完全可配置并能够按自动计划执行)。

除了 MS 社区示例(在 Codeplex 上)之外,有人知道任何体面的示例/示例吗?

编辑:我也看过http://www.sqlis.com/虽然我还没有找到我正在寻找的东西..