我该如何提高使用 Derby 批量数据加载的性能?

发布于 2024-12-15 15:22:58 字数 476 浏览 0 评论 0原文

我正在使用 Derby In-Memory DB。我需要一开始就从 csv 文件加载一些数据。目前,将所有 csv 文件加载到表中大约需要 25 秒。我希望时间可以减少。由于数据文件实际上并不是很大。

我所做的是使用 derby 的内置程序。

{CALL SYSCS_UTIL.SYSCS_IMPORT_TABLE (?,?,?,',','"','UTF-8',1 )} or
{CALL SYSCS_UTIL.SYSCS_IMPORT_TABLE (?,?,?,',','"','UTF-8',0 )}

唯一特别的事情是有时一个表中的数据被分割成许多小的 csv 文件。所以我必须一一加载它们。而且我测试过是否可以将它们组合在一起,只需要16秒。但是我无法删除此功能,因为用户需要它。

我可以做些什么来减少加载数据的时间吗?我应该禁用日志或编写一些用户定义的函数/过程或可以进行任何其他调整吗?任何建议都会很好。

谢谢!

I am using Derby In-Memory DB. I need to perform some data loading from csv files in the beginning. For now, it takes about 25 seconds to load all the csv files into their tables. I hope the time can be reduced. Due to the data files are not very large actually.

What I have done is using the built-in procedure from derby.

{CALL SYSCS_UTIL.SYSCS_IMPORT_TABLE (?,?,?,',','"','UTF-8',1 )} or
{CALL SYSCS_UTIL.SYSCS_IMPORT_TABLE (?,?,?,',','"','UTF-8',0 )}

The only special thing is sometimes the data in one tables is splitted into many small csv files. So I have to load them one by one.And I have tested if I can combine them together, it will only take 16 seconds. However I cannot remove this feature because it is needed by the user.

Is there anything I can do to reduce the time of loading data? Should I disable log or write some user-defined function/procedure or any other tune can be done? Any advice will be fine.

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

野稚 2024-12-22 15:22:58

使用 H2 而不是 Derby,并使用 CSVREAD 功能。如果仍然太慢,请参阅快速导入优化,或使用CSV 工具(不使用数据库)。免责声明:我编写了 H2 的 CSV 支持。

Use H2 instead of Derby, and use the CSVREAD feature. If that's still too slow, see the fast import optimization, or use the CSV tool directly (without using a database). Disclaimer: I wrote the CSV support for H2.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文