我正在开发一个拥有庞大数据库的项目。 [一周内大约32gb的数据]。我们正在使用DB2和spring-framework + jdbc。我只是想知道JDBC是否能够处理这么多数据?或者我应该使用其他东西?或者如果JDBC能够做到这一点,那么我应该使用一些特定的技术来做这件事。
答案 0 :(得分:9)
JDBC只是连接 - 它不关心数据库中有多少数据。我希望它在数据库方面更像是一个问题,如果有的话。如果你有创建等价格昂贵的索引,你更有可能遇到问题 - 但说实话,一周32GB并不是那么大。我希望任何“真正的”服务器端数据库都能轻松处理它。
我建议你在将自己放在任何特定路径上之前尝试一下。尽可能快地查找数据。如果你在几个小时内无法创建32GB的数据,我会有点担心。
答案 1 :(得分:6)
JDBC只是数据库和java程序之间的接口。数据库可以处理大量数据。在Java世界中,在数据库连接方面几乎没有使用JDBC的替代方法。
答案 2 :(得分:1)
虽然您的SQL API和数据库抽象层很重要,但对数据库性能和可维护性的最大影响将是DBA将用于管理每周插入的大量数据的索引,群集和分区方案。这些领域中最强大的功能可用于Linux,UNIX和Windows的DB2数据引擎的企业版。我建议看一下多维聚类(MDC),范围表分区和深度压缩的组合,以便在表增长时管理表,便于轻松滚入/滚出,最重要的是,快速归零以最少的扫描请求数据。您还可以从物化查询表(MQT)中受益。 IBM最近发布的DB2版本9.7对其中的一些功能提供了值得注意的增强,最明显的是索引的积极压缩方案。
答案 3 :(得分:0)
这一切都取决于您在数据库上进行的处理。您将在任何时间访问多少个表,并且还将从数据库中进行更多写入或读取。基于此,您可以设计它。您还可以使用像hibernate这样的ORM解决方案,它与spring完美集成。这将为您提供一些选项,如缓存,以避免每次都直接访问数据库。您还应该设置一些连接池以重用连接。