java - 使用 Java 处理文件
问题描述
我有一个关于在 Java 中处理大文件的最佳方法是什么的疑问?我们应该使用像 Cassandra 这样的 no-sql 数据库还是尝试使用我们现有的 Oracle 数据库(转储文件的内容)。
我的文件最多可以包含 1 或 2 个字段。但大多数情况下,我能够对文件内容做的只是搜索一个 Id 并返回布尔值。文件可以包含数千万或低至数千的记录。此文件也可以每天刷新。每当刷新时,我都需要清除所有以前的值。
任何的意见都将会有帮助!!
问候,维姬
解决方案
根据您的要求,
甲骨文
- 如果每天的数据数以千万计,则适合索引并满足您的要求。
- 索引将存储在内存中,搜索此短数据会更快。如果表也很短,您还可以请求将表保留在内存中,如果还需要任何其他列,这将更快。
- 您可以每天删除表并再次导入文件作为新表。这应该有效。
卡桑德拉
- 也有利于索引。您的所有搜索也会更快(类似于 oracle 用于此类小数据)
- Cassandra 是 NoSQL 数据库,旨在为大容量数据和查询提供可扩展性、高写入吞吐量、可用性。
- Cassandra 通常在集群环境中运行以上属性。
我建议检查您的要求,如果您只是将数据保存在数据库中并且想要偶尔查询一次或每秒查询 100 个请求,那么使用 Cassandra 就像用大锤敲击墙上的钉子,小锤子或木槌就足够了。
推荐阅读
- reactjs - 在 ReactJS 中调用挂载函数
- php - 有没有办法在 HTML 文件(扩展名)中运行 for 循环?
- css - CSS 过渡计时函数和动画名称
- python - 从 BeautifulSoup 获取类数据
- java - 使用 JPanel 指定背景 img 的大小
- node.js - Sequelize ORM:在联结表上使用可延迟约束
- node.js - 我可以在没有 NGINX 的情况下提供多个 Ghost 博客服务吗?
- qt - SwipeView 事件处理
- python-3.x - 从另一个 file.py 在字典中添加键值对
- javascript - 如何将 WKWebview 中的 postmessage 调用到 JS?