Гость
Map
Форумы / NoSQL, Big Data [игнор отключен] [закрыт для гостей] / Key-Value. Тестирование производительности. / 12 сообщений из 12, страница 1 из 1
19.12.2013, 15:55
    #38506683
BlackEric
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Key-Value. Тестирование производительности.
Хотелось бы видеть сравнительное быстродействие на чтение ModgoDB, Riak и Redis как Key-Value хранилища. Есть такое?
Или можете предложить методику тестирования если ничего готового нет?


photoua.narod.ru
...
Рейтинг: 0 / 0
20.12.2013, 01:51
    #38507292
DPH3
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Key-Value. Тестирование производительности.
BlackEric,

довольно бессмысленная задача, разве что указать конкретные условия и задачи, для которых проходит тестирование. Уж больно архитектура у всех разная.
...
Рейтинг: 0 / 0
20.12.2013, 18:39
    #38508367
BlackEric
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Key-Value. Тестирование производительности.
DPH3,

Я хочу по ключу быстро забирать блоб с данными, текст, изображение или другой бинарник с данными. От нескольких байт до мегабайт. Интересна максимальная скорость на чтение. Я понимаю, что тут многое будет зависеть от клиентских библиотек через которые с бд будет общаться приложение.
...
Рейтинг: 0 / 0
21.12.2013, 11:48
    #38508719
Birkhoff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Key-Value. Тестирование производительности.
BlackEricDPH3,

Я хочу по ключу быстро забирать блоб с данными, текст, изображение или другой бинарник с данными. От нескольких байт до мегабайт. Интересна максимальная скорость на чтение. Я понимаю, что тут многое будет зависеть от клиентских библиотек через которые с бд будет общаться приложение.Не совсем про базу из списка, но вот год назад было такое сообщение про Oracle NoSQL DB
https://blogs.oracle.com/charlesLamb/entry/oracle_nosql_database_performance_tests

Может быть поможет. Правда, с тех пор уже один или два новых релиза вышли.
...
Рейтинг: 0 / 0
23.12.2013, 04:00
    #38509508
DPH3
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Key-Value. Тестирование производительности.
BlackEricDPH3,
Я хочу по ключу быстро забирать блоб с данными, текст, изображение или другой бинарник с данными. От нескольких байт до мегабайт. Интересна максимальная скорость на чтение. Я понимаю, что тут многое будет зависеть от клиентских библиотек через которые с бд будет общаться приложение.

Сколько данных? Данные в оперативной памяти одного компьютера, в оперативной памяти кластера, на диске отдельной машины, на диске кластера?
Данные никогда не меняются или меняются?
Нужен ли кластер?
Какие требования к надежности? Нужен ли backup или достаточно иметь много копий внутри одного ДЦ в оперативной памяти или надежность вообще не важна?
Поиск по точному значению ключа или возможны какие-то варианты?
Данные всегда нужны по равномерно-случайному ключу или иногда нужны пачками?

Что потом делать с данными (отдавать через сеть, десериализовывать в какие-то объекты, писать в /dev/null)?

Ну и еще куча подобных вопросов, без которых ответ на вопрос "быстро забирать блоб с данными" смысла не имеет.
...
Рейтинг: 0 / 0
23.12.2013, 14:43
    #38510018
BlackEric
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Key-Value. Тестирование производительности.
DPH3Сколько данных? Данные в оперативной памяти одного компьютера, в оперативной памяти кластера, на диске отдельной машины, на диске кластера?
Данные никогда не меняются или меняются?
Нужен ли кластер?
Какие требования к надежности? Нужен ли backup или достаточно иметь много копий внутри одного ДЦ в оперативной памяти или надежность вообще не важна?
Поиск по точному значению ключа или возможны какие-то варианты?
Данные всегда нужны по равномерно-случайному ключу или иногда нужны пачками?

Что потом делать с данными (отдавать через сеть, десериализовывать в какие-то объекты, писать в /dev/null)?

Ну и еще куча подобных вопросов, без которых ответ на вопрос "быстро забирать блоб с данными" смысла не имеет.

Для начала - данные на диске одной машины. 4-5 Гиг будет в процессе работы. Данные меняться будут изредка, возможно ночью отдельным заданием, с чтение пересекаться будут редко. Меняться данные будут редко. Кластер пока не нужен, а там как пойдет, но это не раньше чем через год-два.
Бэкап разумеется нужен. Ночной раз в сутки для начала устроит.
Поиск по точному значению ключа. Фактически это id. C равномерностью сложнее, скорее всего будет группа запросов из связанных данных одного объекта, потом после обработки этих данных будем переключаться на другой объект. Хотя в многопользовательском режиме возможно это будет выглядеть как равномерно-случайный ключ со стороны бд.

Данные от будут отдаваться по сети на клиента.
...
Рейтинг: 0 / 0
23.12.2013, 17:27
    #38510257
DPH3
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Key-Value. Тестирование производительности.
BlackEric,
Ага, а на каком языке идет разработка?
И "потребителей" данных - один или несколько?
И какие, все-таки, требования к скорости отдачи? Главное latency или пропускная способность? Потребители - в том же ДЦ или удаленные?
...
Рейтинг: 0 / 0
23.12.2013, 17:41
    #38510271
BlackEric
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Key-Value. Тестирование производительности.
DPH3,

Язык - хз. Думаем, как и про СУБД. Режим многопользовательский.
Датацентра не будет. Будет локалка, пока.
...
Рейтинг: 0 / 0
23.12.2013, 19:19
    #38510369
DPH3
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Key-Value. Тестирование производительности.
BlackEricDPH3,

Язык - хз. Думаем, как и про СУБД. Режим многопользовательский.
Датацентра не будет. Будет локалка, пока.

Если брать приличный язык (Java, C#), то самым эффективным будет вообще не использовать никакой СУБД. Просто хранить нужные объекты в больной hashmap в памяти приложения.
Так как изменений "онлайн" практически нет, то задачи блокировки не возникают, все thread-safe.

Persistance реализовывать или через банальную сериализацию на диск (опять-таки, в Java/С# дофига соответствующих решений) или через любую СУБД (и хранить блобы).

Ну а 4-5 гигов при текущей стоимости оперативки - не деньги )

Производительность - максимальная, все данные уже в удобном виде и даже в том же процессе. Никаких сетевых задержек )

Если же "обработчиков" данных много, то основные задержки будут, подозреваю, при сериализации/десериализации и стоит оптимизировать именно этот кусок. Так-то взять данные из памяти и отдать по сети - не долго )
...
Рейтинг: 0 / 0
09.01.2014, 17:01
    #38520759
Birkhoff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Key-Value. Тестирование производительности.
BlackEric,

Может если распределенность не требуется, то вообще взять BerkeleyDB?
http://ru.wikipedia.org/wiki/Berkeley_DB
...
Рейтинг: 0 / 0
10.01.2014, 01:21
    #38521170
mijatovic
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Key-Value. Тестирование производительности.
Доброго дня!

в контексте NoSQL есть еще одни результаты тестирования, как раз с BLOB:
http://oracle-nosql.blogspot.com/2014/01/26.html
...
Рейтинг: 0 / 0
16.01.2014, 22:45
    #38528980
VoltDB
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Key-Value. Тестирование производительности.
Методика и результаты тестирования пропускной способности key-value здесь: http://voltdb.com/voltdb-3-x-performance-characteristics/

Код для тестов здесь: https://github.com/VoltDB/voltdb-kv-benchmark
...
Рейтинг: 0 / 0
Форумы / NoSQL, Big Data [игнор отключен] [закрыт для гостей] / Key-Value. Тестирование производительности. / 12 сообщений из 12, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]