【发布时间】:2017-12-15 15:27:29
【问题描述】:
背景:
我有一个用Python 编写的应用程序来监控工具的状态。这些工具从特定的运行中发送它们的数据,所有这些数据都以 JSON 文件的形式存储在 Oracle 数据库中。
我的问题/解决方案:
当我想将当前运行数据与之前运行的数据进行比较时,我不想连接到数据库然后重复查询它,而是要复制数据库查询,以便我可以将新的运行数据与复制我所做的而不是查询结果。 我想这样做的原因是因为不断查询服务器以获取上一次运行的数据很慢,并且会给服务器带来不必要的负载/使用。
对于上一次运行的数据,有多个文件与之关联(因为有多个工具),因此每个查询都有多个需要复制的文件。在本地存储查询中的文件副本是我打算做的,但我想知道最好的方法是什么,因为我是相对论新手来做这样的事情。
- 因此,对于如何有效存储多个 JSON 文件的查询结果的任何帮助和建议,我们将不胜感激!
【问题讨论】:
-
为什么你不 md5 数据,只是比较新的 md5 和旧的哈希
-
@mbieren 当我说比较时,我的意思是我希望能够从中提取值,然后进行比较。我将使用以前的数据和新数据进行数据分析。根据您的评论,我假设您打算对其进行哈希比较以查看它们是否相同,这不是我想要做的。对不起,我的帖子的原始措辞有任何混淆。如果我对您的意思的假设有误,请纠正我。谢谢。
-
我认为效率很大程度上取决于数据量以及值如何存储在数据库中。数据是存储在 varchar2(4000 或 32767)还是 CLOB 中?
-
您使用哪个 Oracle 数据库版本? Oracle 在 12c 中添加了 JSON 功能。使用新功能时,您对以前数据的查询应该会执行得非常好。
-
这也是我的猜测。将它们本地存储在 TmpFile 上不会快得多。除了空间问题
标签: python json database oracle