2011-12-21 3 views
0

Я хочу сохранить бесконечное число java BigInteger s в хранилище, откуда я могу получить эти данные, выполнить некоторую операцию, вставить новые данные. Операция должна быть очень быстрой. Какой будет лучший выбор для хранения данных для этой цели?Хранение данных с бесконечной емкостью

Приложение будет начинаться с простого числа 2 и проверяет правильность чисел некоторым алгоритмом. Если он найдет штрих, то он вставляет это в это хранилище. Используя сохраненные простые числа, он найдет следующий. Это приложение никогда не остановится. Если кто-то останавливает приложение, то всякий раз, когда он запускает его, он начинается там, где он был остановлен. В этом смысле он бесконечно мал.

Я думаю, что MySql, Oracle и т. Д. Не могут справиться с такой системой. Так же есть ли другое хранилище данных, которое можно использовать для этих целей?

+0

Значит, вам действительно нужно бесконечное количество постоянного хранилища? – home

+2

Бесконечный жесткий диск и бесконечная оперативная память будут моей рекомендацией. Вы захотите заказать бесконечно быстрый SSD, потому что вам не нужны задержки в доступе к любому из этих бесконечных наборов BigIntegers, которые вы имеете в виду. – duffymo

+0

Расширяемая файловая система? Должно быть самым экономичным решением. – Thomas

ответ

2

Я думаю, вы понимаете, что на практике нет понятия «бесконечность».

У вас может быть по требованию, расширяемое хранилище различными способами, включая Amazon S3.

Если вам действительно нужно управлять триллионами чисел, у вас есть задача исследования под рукой. В этом случае вопрос SO не будет работать.

+0

Спасибо. Это не для исследований. Я редактировал свой вопрос с дополнительной информацией. –

1

Вы никогда не сможете хранить «бесконечное» количество чисел, поскольку хранение связано с каким-либо физическим количеством (каким бы оно ни было).

См. Этот вопрос, который может быть более реалистичным: Efficient storage of prime numbers.

Смежные вопросы