Большая база данных данных

Я собираю большой объем данных, который, скорее всего, будет выглядеть следующим образом:

Пользователь 1: (a, o, x, y, z, t, h, u)

Где все переменные динамически изменяются относительно времени, кроме u - это используется для хранения имени пользователя. То, что я пытаюсь понять, так как мой фон не очень интенсивный в "больших данных", это когда я заканчиваю свой массив, он будет очень большим, что-то вроде 108000 x 3500, так как я буду проводить предварительный анализ на каждый тайм-код, и графическое отображение, что будет подходящей базой данных для управления этим, - это то, что я пытаюсь определить. Поскольку это для научных исследований, я смотрел на CDF и HDF5 и основывался на том, что я читал здесь NASA Я думаю, что я хочу использовать CDF. Но это правильный способ управления такими данными для скорости и эффективности?

Окончательный набор данных будет содержать всех пользователей в виде столбцов, а строки будут отмечены по времени, поэтому моя программа анализа будет читать строку за строкой для интерпретации данных. И введите записи в набор данных. Возможно, я должен смотреть на такие вещи, как CouchDB и RDBMS, я просто не знаю, где начать. Совет будет оценен.

2 ответа

Это расширенный комментарий, а не исчерпывающий ответ...

С уважением, набор данных размера 108000*3500 на самом деле не квалифицируется как большие данные в наши дни, если только вы не указали единицу, такую ​​как GB. Если это всего лишь 108000*3500 байт, это только 3 ГБ плюс изменение. Любая из технологий, о которых вы упомянули, будет легко справляться с этим. Я думаю, вы должны сделать свой выбор на основе того, какой подход ускорит ваше развитие, а не ускорит ваше исполнение.

Но если вам нужны дальнейшие предложения, я предлагаю:

все из которых имеют некоторую тягу в академическом сообществе крупных данных и начинают использоваться вне этого сообщества.


Я использую CDF для некоторых аналогичных данных, и я думаю, что он должен работать хорошо. Однако вам нужно иметь в виду несколько вещей. Учитывая, что я не знаю подробностей вашего проекта, это может быть или не быть полезным...

3 ГБ данных находятся в непосредственной близости от ограничения размера файла для более старой версии CDF, поэтому убедитесь, что вы используете обновленную библиотеку.

В то время как 3 ГБ не так много данных, в зависимости от того, как вы его читаете и пишете, все может быть медленным. Обязательно используйте функции гиперчитания/записи, когда это возможно.

CDF поддерживает метаданные (называемые атрибутами global/variable), которые могут содержать информацию, такую ​​как имя пользователя и описания данных.

Легко разбить данные на несколько файлов. Я бы рекомендовал использовать один файл для каждого пользователя. Это означает, что вы можете написать имя пользователя только один раз для всего файла как атрибута, а не в каждой записи.

Вам понадобится создать дополнительную переменную epoch. Это определенная временная метка для каждой записи. Я не уверен, будет ли у вас сейчас отметка времени, или если вам нужно будет обработать ее, но это то, о чем вам нужно подумать. Кроме того, для переменной эпохи должен быть присвоен определенный тип (эпоха, эпоха16 или TT2000). TT2000 - самая последняя версия, которая дает наносекундную точность и обрабатывает секунды прыжка, но большинство читателей CDF, с которыми я столкнулся, еще не справляются с этим. Если вам не нужна такая точность, я рекомендую epoch16, поскольку это было стандартом на некоторое время.

Надеюсь, что это поможет, если вы пойдете с CDF, не стесняйтесь меня беспокоиться о любых проблемах, которые вы нанесли.

licensed under cc by-sa 3.0 with attribution.