Как обращаться с таблицей, которая имеет очень большие данные? - PullRequest
0 голосов
/ 22 декабря 2010

Мне нужно создать одну таблицу, которая содержит 30 столбцов и тысячи строк.Как мне управлять этим?

Существует ли какая-либо структура данных, такая как дерево B + для таблиц, в которой хранятся ненужные данные на диске?

Я должен реализовать это с помощью Java / JDBC.

Есть идеи?

Ответы [ 2 ]

1 голос
/ 22 декабря 2010

Все файловые системы NTFS, ReiserFS, NSS, XFS и JFS используют этот тип дерева для индексации метаданных. Системы управления реляционными базами данных, такие как IBM DB2, Informix, Microsoft SQL Server, Oracle 8, Sybase ASE, PostgreSQL, Firebird, MySQL и SQLite, поддерживают этот тип дерева для табличных индексов.

И тысячи записей являются нормальными в корпоративных приложениях.

Применение индексов к часто извлекаемым полям улучшит поиск, но повлияет на вставку.

Попробуйте по возможности нормализовать базу данных.

На прикладном уровне вы можете использовать API-интерфейсы кэширования, такие как OSCache, EHCache, JCache и т. Д.

0 голосов
/ 22 декабря 2010

Я бы основывал решение в памяти на такой структуре, как

Map<Object, DataType> table

и либо выберите HashMap, если я хотел быстрое чтение и вставку отдельных строк, либо TreeMap, если отсортированный вывод по ключам является типичным сценарием.

Big - как всегда - довольно родственник. Вы можете назначить дополнительное пространство кучи для виртуальной машины, чтобы потребление памяти для этой таблицы составляло «арахис».

DataType, кстати, некоторый класс Java, который содержит все значения для записи в таблице.

Если постоянство является требованием, определите таблицу в существующем ядре базы данных и разработайте несколько операторов SQL-запросов, чтобы просто прочитать требуемые данные.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...