从相当大的xml文件中提取数据

时间:2019-02-26 16:17:35

标签: xml database ms-access

我在一家医院工作,我需要创建我们拥有的不同产品的清单,并希望包含有关它们的所有信息。我很幸运,因为每个医疗设备均由FDA分类,并且您可以XML格式下载。问题在于文件为8gb(可在此处找到:https://accessgudid.nlm.nih.gov/download

我不幸运的是,在医院网络中,我在允许使用的程序方面极为有限。我花了一些时间研究如何解决这个问题,但是我发现的每个解决方案都涉及使用其他软件。我真正能使用的只是访问(和VBA)。

该文件太大,无法从整体上创建数据库。您可以从网站上下载单个搜索响应,因此我尝试由制造商来进行搜索,并在3(约50-100)后达到Access的大小限制。

我想做的是能够通过许多不同的术语(设备ID,参考,产品名称)进行搜索,让它搜索数据库,如果不存在,请在xml文件中找到并创建库存数据库中的记录。问题在于,其中大多数都嵌套在XML文件的4或5层深处。 这是指向架构的链接:https://accessgudid.nlm.nih.gov/download/schema

我不太熟悉XML本身,但是总体上对SQL和数据库有不错的了解。我还受益于速度不是很大的要求,并且可以轻松地使查询花费10秒钟以上的时间来完成。

FDA也提供了一个API,但不幸的是,它们仅允许通过deviceID进行查找,但并不总是可用。手动添加记录是另一种选择,但同样,设备ID并非总是可用,并且FDA数据库包含包装上没有的信息。

有什么方法可以相对快速地找到嵌套在XML文件中的信息,而该XML文件太大而无法容纳在内存中,并且无需使用外部软件(我可以使用某些非安装软件来躲藏,但是仍然要避免如果可能的话。

编辑:此外,数据下载采用80左右的100兆XML文件,这些文件似乎并不是以任何特定方式组织的。

0 个答案:

没有答案