将连续数据流插入数据库

时间:2017-05-17 07:24:12

标签: mysql json neo4j sqlite

我的问题非常通用,而且关于建筑行为。

我不断收到大量数据(JSON)。这可能是最多30个jsons的借调。

我需要将每个插入到数据库中,并使用许多不同的查询来分发信息。这个数据库可以是任何东西,但我更喜欢Neo4j。

如果我看到,如果我收到后立即插入,那么插入越来越晚,我的意思是我有500个json文件和200个插入(即使db中的索引)。

所以我认为我应该将工作分开:一个脚本用于接收数据,一个脚本或单独的线程插入数据库。

那么,根据您的经验,这个案例最好的方法是什么?等待处理的磁盘上的临时json文件?

1 个答案:

答案 0 :(得分:0)

几乎总是在这种通用案例中,答案是取决于。例如,它取决于每个传入更新的大小(以及应用它需要多少处理)。它还取决于更新是否独立(更新顺序是否重要?)。例如,您可以在队列/收件箱中收集传入的更新,然后让多个线程异步获取更新并并行执行它们。

我会说需要有关实际用例的更多信息才能提供更详细的解决方案。

希望这有帮助,汤姆