我需要使用SSIS将一个大型(40GB+)XML文件加载到SQLServer2012数据库表中。我遇到问题是因为SSIS似乎试图将整个文档加载到内存中而不是流式传输它。这是我的SSIS包的更多详细信息。我创建了一个具有以下属性的XML源:数据访问模式:来自变量的XML文件(但可以是XML文件位置)变量名:指定我电脑中XML文件路径的变量。XSD位置:定义正在读取的XML的XSD的路径。XML结构简单,只有3个层级:带有标题信息的根元素一级定义对象集合定义单个对象的叶级别(每个对象都有一组固定的字段)我需要为每个叶元素插入一个数据库记录,从更高层次重复字段。换句话说,我需要展平XML层次
关闭。这个问题是off-topic.它目前不接受答案。想改进这个问题吗?Updatethequestion所以它是on-topic用于堆栈溢出。关闭10年前。Improvethisquestion我们有一个120MB的XML文件要查看。在IE中打开它会使我的机器爬行。我猜IE正在将整个文件加载到内存中。是否有工具可以更快地查看此内容?理想情况下是基于WindowsGUI的工具。如果您可以通过折叠/展开元素来向下钻取数据,那就太好了。Textpad可以工作,但数据不是以分层方式格式化的。即:将数据显示为:abc代替:abc
我们使用XSLT生成数据报告。数据当前作为XML文档存储在Oracle中(不使用XMLTYPE,而是使用普通的CLOB)。我们选择正确的XML文档并创建一个文档:.........在某些情况下,完整的XML文档包含+100000个文档。这意味着首先将一个巨大的XML文档加载到内存中,从而导致各种内存问题。我们如何防止这种情况发生?我们在.NET2.0中使用XslCompiledTransform类。我知道有两种解析XML文档的形式:DOM和SAX。但据我所知,SAX方式不可能与XSLT结合使用。DOM解析方法迫使我们将整个东西加载到内存中。我们有哪些选择?首先将完整文档写入磁盘是否有帮
我在大型xml文件的处理时间方面遇到了这个问题。总的来说,我的意思是平均600MB。目前,解析数据并将其插入数据库大约需要50-60分钟。我想就如何改善处理时间征求意见?就像减少到20分钟。因为根据当前时间,我需要2.5个月的时间才能将xml中的内容填充到数据库中。顺便说一下,我有3000多个xml文件,平均大小为600mb。我的php脚本在命令行中通过cron作业。我也阅读了其他类似下面的问题,但我还没有找到任何想法。WhatisthefastestXMLparserinPHP?我看到有些人已经解析了最大2GB的文件。我想知道处理时间有多长。希望大家多多帮忙。将不胜感激。谢谢。我有这
我必须将现有XML文件中的节点复制到新创建的XML文件中。我正在使用XDocument实例来访问现有的XML文件。问题是XML文件可能非常大(比如说500K行;Openstreetmap数据)。在不导致内存错误的情况下遍历大型XML文件的最佳方法是什么?我目前只使用XDocument.Load(path)并循环遍历doc.Descendants(),但这会导致程序卡住,直到循环完成。所以我认为我必须异步循环,但我不知道实现此目的的最佳方法。 最佳答案 您可以使用XmlReader和IEnumerable迭代器产生你需要的元素。这种方
我正在使用以下代码来解析相当大的xml文件(>50GB):useXML::Parser;my$p=newXML::Parser('Handlers'=>{'Start'=>\&handle_start,'End'=>\&handle_end,'Char'=>\&handle_char,});$p->parsefile('source.xml');...subhandle_start{...}问题是解析需要很长时间,我想要某种进度表。我更喜欢一种不需要先扫描整个文件就可以得到总计数的方法-例如,输入文件中的当前位置将是完美的,因为我可以简单地在开始时检查文件的总大小,然后在handle_
我必须存储大量复杂的数据。我目前正在使用XML文件,因为结构的复杂性不允许我使用(普通)数据库存储数据。我的问题是:是否有任何系统(类似于数据库)能够处理/存储大量复杂数据?如果没有,如果存储XML文件中的数据? 最佳答案 您可能想查看documentorienteddatabases,比如CouchDB. 关于xml-存储大型、复杂的数据结构,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/ques
我有什么:一个大型XML文件@近100万行内容。内容示例:^重复900k行左右(当然内容会改变)我需要什么:在XML文件中搜索".一旦找到,将该行及其下面的所有行移动(写入)到一个单独的XML文件中。是否建议对搜索部分使用File.ReadAllLines等方法?你们对写作部分有什么建议?据我所知,逐行不是一种选择,因为这会花费太长时间。 最佳答案 为了完全放弃搜索字符串上方的内容,我不会使用File.ReadAllLines,因为它会将整个文件加载到内存中。尝试File.Open并将其包装在StreamReader中。在Strea
我需要解析和处理XML提要,不幸的是,提要的大小约为110mb(我对此无能为力)但是为了能够解析它,我需要查看结构(或者如果有人有任何其他我很想听听想法)。但由于某些原因,我无法使用editplus打开该文件。我在一台64位Vista机器上,有4gb的ram(其中很多免费使用)但是文件崩溃了我尝试打开它的每个程序。任何人都知道我如何盲目解析(服务器运行linux...)?!(请使用PHP..!)或可能能够解决我的问题的程序?干杯更新我设法找到了问题,但我接受的答案解决了这个问题。似乎XML文件不仅很大,而且都在一行上,这似乎打破了大多数程序中的行限制。选择的答案textpad++检测到
我有一个大约100mb的大型XML文档。我需要在此文档中找到两个标签的属性。我可以使用与以下类似的代码来做到这一点:XmlDocumentxmlDocument=newXmlDocument();xmlDocument.Load("C:\\myxml.xml");XmlNodenode1=xmlDocument.SelectSingleNode("/data/objects[@type='datatype1']");if(null!=node1){result=node1["Version"].Value;}但是这样做会将整个XML加载到内存中,这似乎需要大约200mb。无论如何我可以