2011-01-11 4 views
5

Я хочу хранить миллионы записей временных рядов (длительное время, двойное значение) с Java. (Наша система мониторинга в настоящее время хранит каждую запись в большой таблице mySQL, но производительность очень плохая.)База данных временных рядов для java?

Существуют ли базы данных временных рядов, реализованные в java?

+2

Производительность плохо в каком смысле? Вставляя? Выбор? Если вы не предоставите некоторые варианты использования (т. Е. Проблемные запросы), никто никогда не сможет дать осмысленный ответ ... – CAFxX

+0

Можете ли вы, пожалуйста, что вы на самом деле имеете в виду «Эффективность - это действительно плохо». Миллионы вставок не должны быть проблемой для mysql. Что вы действительно пытаетесь сделать с данными - это таблица? –

ответ

0

Что вам нужно делать с данными и когда?

Если вы всего лишь сэкономив значения для более поздних версий, простой текстовый файл может сделать красиво, а затем позже загрузить в базу данных.

1

Вы можете посмотреть KDB. Он в основном используется финансовыми компаниями для получения данных о рыночных временных рядах.

2

Производительность была плохой из-за неправильного дизайна базы данных. Я использую mysql, и таблица имела такую ​​схему:

+-------------+--------------------------------------+------+-----+-------------------+-----------------------------+ 
| Field  | Type         | Null | Key | Default   | Extra      | 
+-------------+--------------------------------------+------+-----+-------------------+-----------------------------+ 
| fk_category | smallint(6)       | NO | PRI | NULL    |        | 
| method  | enum('min','max','avg','sum','none') | NO | PRI | none    |        | 
| time  | timestamp       | NO | PRI | CURRENT_TIMESTAMP | on update CURRENT_TIMESTAMP | 
| value  | float        | NO |  | NULL    |        | 
| accuracy | tinyint(1)       | NO |  | 0     |        | 
+-------------+--------------------------------------+------+-----+-------------------+-----------------------------+ 

Ошибка была неверна. После добавления первичного ключа с несколькими столбцами все мои запросы бывают быстрыми:

+-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ 
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment | 
+-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ 
| job |   0 | PRIMARY |   1 | fk_category | A   |   18 |  NULL | NULL |  | BTREE  |   |    | 
| job |   0 | PRIMARY |   2 | method  | A   |   18 |  NULL | NULL |  | BTREE  |   |    | 
| job |   0 | PRIMARY |   3 | time  | A   | 452509710 |  NULL | NULL |  | BTREE  |   |    | 
+-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ 

Спасибо за все ваши ответы!

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