2015-07-30 7 views
0

У меня есть гигантские данные из более чем 2500000000 записей, распределенных между 10 столами в дерби. В каждой таблице есть два столбца «флораNfauna» и «местоположения». Теперь я должен найти определенную «флоруNfauna», найденную в определенных «местах», поэтому я использую запрос «select» с «like», например. «выберите * из таблиц, где floraNfauna нравится («% рыбы% ») и таких мест, как («% мелководных вод% »)»; и для получения результатов, которые считаются ниже 1000, требуется несколько дней. После поиска я обнаружил, что «полнотекстовый поиск» будет лучшим и быстрым подходом к этому. Можете ли вы помочь мне с примером?Derby: Поиск по всему тексту

+0

Каков размер ОЗУ на сервере/шт. Просьба также указать подробную информацию о таблице. 'desc' – mustangDC

+0

Система имеет 4 ГБ Ram с двухъядерным процессором с тактовой частотой 2,1 ГГц. Таблицы имеют только два столбца, каждый из которых сначала «floraNfauna» varchar (50), а второй - «местоположения» varchar (100). –

+0

2500000000 Огромный .. Вам нужно серьезно подумать об обновлении своей памяти и, самое главное, индексировать таблицу ... – mustangDC

ответ

0

Во-первых, вы должны рассмотреть возможность индексирования таблицы. Вот SO link, который определенно поможет узнать больше о Зачем индексировать таблицу БД.
Подробнее о Adding Indexes to a table.

Во-вторых, если вы используете централизованную базу данных, то обязательно подумайте об обновлении конфигурации вашего сервера.

Спасибо, надеюсь, что это поможет.