Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом / 25 сообщений из 77, страница 1 из 4
04.03.2012, 13:52
    #37690474
АлексейС
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
Пишу тут кое-что, вот мучаюсь муками выбора нормальной k-v базы. Может быть есть у кого на примете сильный вариант?

Что попробовал:
- Kyoto Cabinet - отлично, но сетевой интерфейс - тормознутая фигня.
- LevelDb - замечательно, но сетевой интерфейс есть только в Kyoto Tycoon, Riak, и первое и второе - не подходит
- Voldemort медленный
- Cassandra, Hypertable - мои любимые по всем статьям, но из пушки по воробьям, хочу именно быстрый k-v
- Tarantool, Redis - данные надо хранить в памяти, мне это не подходит.

Итого, что хотелось бы:
1) k-v, быстро, очень быстро, чтобы запись MAX до 100 мкс на нормальной машине, чтение тоже до 100мкс, и чем меньше, тем лучше
2) хороший, быстрый, приятный в использовании сетевой java интерфейс
3) в памяти хранятся только ключи
4) простая установка

Коллеги, помогите пожалуйста, если кто в теме. Спасибо.
...
Рейтинг: 0 / 0
04.03.2012, 14:03
    #37690487
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
АлексейС,

А чем классика от орасла, я имею ввиду Беркли ДБ, не подошла?
...
Рейтинг: 0 / 0
04.03.2012, 14:42
    #37690522
1024
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
АлексейСПишу тут кое-что, вот мучаюсь муками выбора нормальной k-v базы. Может быть есть у кого на примете сильный вариант?

Что попробовал:
- Kyoto Cabinet - отлично, но сетевой интерфейс - тормознутая фигня.
- LevelDb - замечательно, но сетевой интерфейс есть только в Kyoto Tycoon, Riak, и первое и второе - не подходит
- Voldemort медленный
- Cassandra, Hypertable - мои любимые по всем статьям, но из пушки по воробьям, хочу именно быстрый k-v
- Tarantool, Redis - данные надо хранить в памяти, мне это не подходит.

Итого, что хотелось бы:
1) k-v, быстро, очень быстро, чтобы запись MAX до 100 мкс на нормальной машине, чтение тоже до 100мкс, и чем меньше, тем лучше
2) хороший, быстрый, приятный в использовании сетевой java интерфейс
3) в памяти хранятся только ключи
4) простая установка

Коллеги, помогите пожалуйста, если кто в теме. Спасибо.

используй лучше нормальную базу. Все эти кейВалуе это ж для тех кто не смог выучить скл, тяжёлое наследие 70-х годов, назовём вещи своими именами. Возможно, если ты делаешь новый твиттер то можно но задуматься о нестандартном. Но у тебя вряд ли это нужно.
...
Рейтинг: 0 / 0
04.03.2012, 15:14
    #37690577
АлексейС
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
ShSergeАлексейС,

А чем классика от орасла, я имею ввиду Беркли ДБ, не подошла?

Проблема в том, что мне обязательно нужен сетевой интерфейс, а это всё-таки встраиваемое решение.

1024используй лучше нормальную базу. Все эти кейВалуе это ж для тех кто не смог выучить скл, тяжёлое наследие 70-х годов, назовём вещи своими именами. Возможно, если ты делаешь новый твиттер то можно но задуматься о нестандартном. Но у тебя вряд ли это нужно.

)))) Нет, у k-v всё-таки есть применение, индекс, например, для тех же "нормальных баз")

Вот и мне k-v нужен для индекса. SQL мне не нужен, мне вообще ничего от базы не нужно кроме сетевого интерфейса и k-v, где v - любая последовательность байтов.

Походу придётся писать сетевой интерфейс вокруг какой-нибудь встраиваемой бд=(
...
Рейтинг: 0 / 0
04.03.2012, 17:04
    #37690695
Leonidv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
А почему исключили mongodb? Долгая запись?
...
Рейтинг: 0 / 0
04.03.2012, 17:42
    #37690721
АлексейС
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
LeonidvА почему исключили mongodb? Долгая запись?

Да, к сожалению. Она, конечно, очень приятная в использовании, но не подходит. Очень много возможностей, они оттягивают на себя производительность так или иначе.

Для текущих целей больше всего подходит cassandra, так как она очень быстрая, колонки можно почти неограниченно добавлять к ключу, сетевой доступ быстрый... Но мне не нужны кластерные возможности, да и накладные расходы по памяти на каждую колонку там очень большие, компарация имён колонок мне не нужна тоже.

В идеале какой-нибудь быстрый сетевой интерфейс для leveldb или kyoto cabinet. Но нету их... интерфейсов этих...

И я так понял встраиваемых бд с реально быстрыми java интерфейсами вообще нет. Странно и печально. Неужели ни у кого никогда не появилось желания использовать хотя бы berkeley db удалённо?
...
Рейтинг: 0 / 0
04.03.2012, 17:45
    #37690724
dominator
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
АлексейС,

Посмотрите на
http://www.couchbase.com/couchbase-server/overview
он имеет API memcached, но с персистентностью
...
Рейтинг: 0 / 0
04.03.2012, 21:00
    #37690853
rrrrrrrr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
АлексейС1) k-v, быстро, очень быстро, чтобы запись MAX до 100 мкс на нормальной машине, чтение тоже до 100мкс, и чем меньше, тем лучше
3) в памяти хранятся только ключи


Не очень понял - если данные подгружаются с диска, то как же там может быть 100мкс на чтение? Что-то другое имелось в виду?
...
Рейтинг: 0 / 0
04.03.2012, 22:28
    #37690916
АлексейС
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
dominatorАлексейС,

Посмотрите на
http://www.couchbase.com/couchbase-server/overview
он имеет API memcached, но с персистентностью

Не очень хочется иметь memcached фронтендом к базе, так как очень важна простая установка, желательно, чтобы это была и база и сетевой интерфейс в одном. Да и всё-равно сам couch очень уж медленный=( Совсем медленный...

rrrrrrrrНе очень понял - если данные подгружаются с диска, то как же там может быть 100мкс на чтение? Что-то другое имелось в виду?

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

Но я уже понял, что хочу слишком многого и буду писать сетевой интерфейс к leveldb...
...
Рейтинг: 0 / 0
04.03.2012, 23:12
    #37690948
Leonidv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
АлексейС,

Мне просто из любопытства. Что вы вкладываете в понятие "сетевой интерфейс"?
...
Рейтинг: 0 / 0
04.03.2012, 23:19
    #37690953
АлексейС
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
Leonidv,

ну, по сути это будет простенький сервер поверх leveldb(или другой k-v базы), для обращения к нему клиентов
...
Рейтинг: 0 / 0
04.03.2012, 23:22
    #37690956
АлексейС
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
Друзья, спасибо за участие!
...
Рейтинг: 0 / 0
05.03.2012, 11:57
    #37691317
Valery Shiskin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
АлексейС,

Посмотрите на OrientDb. Мне было бы любопытно узнать Ваше мнение
...
Рейтинг: 0 / 0
05.03.2012, 16:34
    #37691862
PSV100
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
АлексейС,

LevelDb тестировалась под свои требования? Очень интересны ощущения от ее использования. Лично я эту либу в руках не вертел, но как-то натыкался в инете на какой-то блог (ссылки не сохранил), где LevelDb гонялась в сравнении с SQLite-ом (также, если не ошибаюсь, это обсуждалось и на оф. форуме скулайта). Всего не помню, но выводы такие: гугловский тест SQLite-а на сайте LevelDb - некорректный, в реальности по перфомансу LevelDb от sqlite ушла не далеко, а на ряде операций она хуже sqlite-а (это даже при наличии sql-слоя, также те тесты показали, что и у скулайта не всё гладко, причём не по причине sql). К тому же, как я понял, LevelDb эффективна только при маленьком размере value-части.

Valery ShiskinАлексейС,
Посмотрите на OrientDb. Мне было бы любопытно узнать Ваше мнение
Присоединяюсь к OrientDb. Я баловался с ней год назад, концептуально интересна, но показалась очень сырой, были всякие непонятные глюки. В то время поинтересовался у ребят из TrackStudio, они пытались её заюзать для своей системы - из-за глюков и поломок баз её забросили. Но вроде, судя по местному форуму, пилят ее активно, потихоньку начинают использовать, но проектов что-то не видно пока.
Кто-то OrientDb уже гонял по-серьёзному ?
...
Рейтинг: 0 / 0
05.03.2012, 17:23
    #37691980
АлексейС
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
Valery ShiskinАлексейС,

Посмотрите на OrientDb. Мне было бы любопытно узнать Ваше мнение

Ух, какая штука прошла мимо меня, спасибо! Потестирую, если выдержит мои тесты, то будет очень круто, конечно. По возможностям - кажется то что надо и заявляемое время доступа очень хорошее.

PSV100АлексейС,

LevelDb тестировалась под свои требования? Очень интересны ощущения от ее использования. Лично я эту либу в руках не вертел, но как-то натыкался в инете на какой-то блог (ссылки не сохранил), где LevelDb гонялась в сравнении с SQLite-ом (также, если не ошибаюсь, это обсуждалось и на оф. форуме скулайта). Всего не помню, но выводы такие: гугловский тест SQLite-а на сайте LevelDb - некорректный, в реальности по перфомансу LevelDb от sqlite ушла не далеко, а на ряде операций она хуже sqlite-а (это даже при наличии sql-слоя, также те тесты показали, что и у скулайта не всё гладко, причём не по причине sql). К тому же, как я понял, LevelDb эффективна только при маленьком размере value-части.

LevelDb понравилась тем, что вместила 1 млрд строк, при этом вела себя весьма скромно в плане памяти оперативной и локальной, правда в тот момент сравнивалась она с cassandra, которая вообще очень прожорлива. Надо будет затестить снова, но вообще очень приятная базка. У коллеги она работает в продакшене в виде кэша, но кэш тот дёргается редко, так что не сказал бы что это тест в хвост и в гриву.

Тут важно еще посчитать сколько конкурентных запросов база может переварить на большом количестве конкурентных записей и чтений и для меня это тоже очень важный параметр. Если база записывает чуть медленнее, но выдержит более высокую постоянную нагрузку, то это круче для меня
...
Рейтинг: 0 / 0
05.03.2012, 17:30
    #37692000
АлексейС
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
PSV100АлексейС, К тому же, как я понял, LevelDb эффективна только при маленьком размере value-части.


Кстати да, leveldb использовалась только для небольших value.

Для крупных блобов под нагрузкой ни одна база из тестируемых не подошла
...
Рейтинг: 0 / 0
05.03.2012, 19:38
    #37692270
PSV100
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
АлексейСLevelDb понравилась тем, что вместила 1 млрд строк, при этом вела себя весьма скромно в плане памяти оперативной и локальной, правда в тот момент сравнивалась она с cassandra, которая вообще очень прожорлива. Надо будет затестить снова, но вообще очень приятная базка. У коллеги она работает в продакшене в виде кэша, но кэш тот дёргается редко, так что не сказал бы что это тест в хвост и в гриву.

Тут важно еще посчитать сколько конкурентных запросов база может переварить на большом количестве конкурентных записей и чтений и для меня это тоже очень важный параметр. Если база записывает чуть медленнее, но выдержит более высокую постоянную нагрузку, то это круче для меня
Как я понимаю, конкурентность запросов к базе перекладывается на плечи своего "сервера". Если я не ошибаюсь, leveldb фактически однопоточная штука для контроля действий в своём приложении (т.е. один поток как минимум при записе, иногда создаются служебные вспомогательные потоки, например, при перекомпоновке файлов). Имхо, с leveldb нужно очень осторожно смотреть на конкуренцию. Я cassandr-у тоже не юзал, но на глаза попадались отзывы о том, что при интенсивной нагрузке возня с перекомпоновкой данных по уровням (файлам), как и у leveldb, ощутимо сказывается на производительности.
Как дела у OrientDB с сетевым стеком - я уже не помню, но мне показалось, что её родной сервер - фактически учебный пример. Для своего приложения над конкурентностью нужно хорошенько кумекать под свои задачи.

АлексейС, если погоняете leveldb и OrientDB - плиз, поделитесь своими выводами.

P.S. На всякий случай: здесь есть JNI-интерфейс для leveldb, здесь какой-то любительский порт leveldb на чистую жабу (сам ничего не использовал).
...
Рейтинг: 0 / 0
05.03.2012, 20:01
    #37692301
АлексейС
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
PSV100Как я понимаю, конкурентность запросов к базе перекладывается на плечи своего "сервера". Если я не ошибаюсь, leveldb фактически однопоточная штука для контроля действий в своём приложении (т.е. один поток как минимум при записе, иногда создаются служебные вспомогательные потоки, например, при перекомпоновке файлов). Имхо, с leveldb нужно очень осторожно смотреть на конкуренцию. Я cassandr-у тоже не юзал, но на глаза попадались отзывы о том, что при интенсивной нагрузке возня с перекомпоновкой данных по уровням (файлам), как и у leveldb, ощутимо сказывается на производительности.
Как дела у OrientDB с сетевым стеком - я уже не помню, но мне показалось, что её родной сервер - фактически учебный пример. Для своего приложения над конкурентностью нужно хорошенько кумекать под свои задачи.

АлексейС, если погоняете leveldb и OrientDB - плиз, поделитесь своими выводами.

P.S. На всякий случай: здесь есть JNI-интерфейс для leveldb, здесь какой-то любительский порт leveldb на чистую жабу (сам ничего не использовал).

LevelDb у нас на индексации данных работала на 16ти потоках, это при очень интенсивной записи, причём это была её java версия. Но она как-то была принята в использование де-факто, без особого тестирования... и вот как-то угадалось)))

Cassandra у меня на тестах валилась под нагрузкой 600-700 одновременных коннектов к базе. Это количество записей и чтений в один момент времени через thrift. И вообще эта база - моя любимая. Но не без изъянов, конечно. Как и все базы.....
...
Рейтинг: 0 / 0
05.03.2012, 20:19
    #37692316
АлексейС
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
АлексейС,

Кстати 600-700 - это еще зависит от типа нагрузки и от многих факторов, у меня было до 3000 потоков-чтений в пике, когда я совсем жёстко убивал...
...
Рейтинг: 0 / 0
05.03.2012, 20:29
    #37692328
PSV100
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
АлексейСLevelDb у нас на индексации данных работала на 16ти потоках, это при очень интенсивной записи, причём это была её java версия. Но она как-то была принята в использование де-факто, без особого тестирования... и вот как-то угадалось)))

Cassandra у меня на тестах валилась под нагрузкой 600-700 одновременных коннектов к базе. Это количество записей и чтений в один момент времени через thrift. И вообще эта база - моя любимая. Но не без изъянов, конечно. Как и все базы.....
А java-версия leveldb - это тот порт, который я указал, или есть какая-то разработка от самого гугла ?

P.S. Имхо, OrientDB - неплохая альтернатива, выглядит очень привлекательно. Раньше с надёжностью было тяжко, сейчас может уже получше. Пилят ее мало народу (в основном, ее автор), но с прицелом на коммерческую поддержку, уже какую-то контору создают для всяких "облачных полётов" на её основе. Так что, имхо, до юзабельного состояния должны уже довести, вроде близок релиз первой версии.
...
Рейтинг: 0 / 0
05.03.2012, 20:41
    #37692348
АлексейС
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
PSV100А java-версия leveldb - это тот порт, который я указал, или есть какая-то разработка от самого гугла ?

P.S. Имхо, OrientDB - неплохая альтернатива, выглядит очень привлекательно. Раньше с надёжностью было тяжко, сейчас может уже получше. Пилят ее мало народу (в основном, ее автор), но с прицелом на коммерческую поддержку, уже какую-то контору создают для всяких "облачных полётов" на её основе. Так что, имхо, до юзабельного состояния должны уже довести, вроде близок релиз первой версии.

Да, именно этот порт.

OrientDB попробую обязательно, меня тоже очень привлекло. Возможно сегодня вечером потестирую.
...
Рейтинг: 0 / 0
05.03.2012, 20:42
    #37692349
АлексейС
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
АлексейС,

Ой, блин, уже почти 9 часов.... =(
...
Рейтинг: 0 / 0
05.03.2012, 21:02
    #37692365
rfq
rfq
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
АлексейС,

jdbm2-4 еще попробуйте. Проект многолетний.
...
Рейтинг: 0 / 0
06.03.2012, 00:02
    #37692606
Йуный джавистЪ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
OrientDb

Спасибо за наводку, отлично поржал.
OrientDB scales out very well on a single machine. A single server makes the work of about 125 servers running MySQL.

Наш супер сервер заменяет стопицот серверов MySQL!!!!11111
The transactional engine can run in distributed systems supporting up to 9.223.372.036 Billions of records for the maximum capacity of 19.807.040.628.566.084 Terabytes.

Наш супер сервер хранит СТОТЫЩМИЛЬЕНОВ терабайт!!!111111
I can't believe! Why it's so fast?
OrientDB has been designed to be very fast.

Ах, вот почему один OrientDB заменяет тыщу серверов MySQL! Оказывается, он был designed to be very fast, а MySQL был designed to be very slow.
Истории успеха, размещенные на сайте, тоже поражают:
document storage for a very specialized crawler: more than 100k documents, daily updates with 1k new docs.

Не иначе, какой-то школьник сделал личный краулер любимых порносайтов. Наверное, если бы он использовал MySQL, то потребовалось бы 125 серверов MySQL.
java ... -Dtx.log.synch=true ...

Теперь понятно, откуда взялась цифра в 125 MySQL серверов. Сервер банально пишет данные в оперативную память, что позволяет демонстрировать большие цифры в говнобенчмарках. Самое смешное, что отключается это даже не через конфиг, а вообще через аргументы JVM.
http://code.google.com/p/orient/wiki/MemoryManagement

Происхождение этой удивительной страницы можно объяснить только одним образом. Авторы рассчитывают, что какой-нибудь не разбирающийся в СУБД разработчик помедитирует на эту картинку, и у него в мозгу всплывет ассоциация: так в Hibernate есть что-то подобное! Если тут как в Hibernate, то наверное хорошо.

Коллеги, изучайте нормальные технологии. Верить, что есть некая волшебная СУБД с документацией в 3 странички, которая в 100 раз уделывает mysql или postgres, просто смешно.
...
Рейтинг: 0 / 0
06.03.2012, 02:51
    #37692710
Valery Shiskin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом
Йуный джавистЪ,

Можно нам глупым поинтересоваться, что имеется ввиду под "нормальными технологиями" ?
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Нужна очень быстрая k-v база, с быстрым сетевым java интерфейсом / 25 сообщений из 77, страница 1 из 4
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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