|
Вариант для распечатки |
Пред. тема | След. тема | ||
Форум Разговоры, обсуждение новостей | |||
---|---|---|---|
Изначальное сообщение | [ Отслеживать ] |
"Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от opennews (??) on 18-Окт-11, 13:08 | ||
Иван Ворас (Ivan Voras), один из коммитеров FreeBSD, анонсировал (http://ivoras.sharanet.org/blog/tree/2011-10-11.bullet-cache...) новую систему для организации кэширования данных в оперативной памяти c хранением данных в формате ключ/значение - Bullet Cache (http://mdcached.sourceforge.net/). По своим возможностям и выполняемым задачам система очень близка (http://mdcached.sourceforge.net/UserGuide.html) к Memcached (http://memcached.org/) и отличается, главным образом, внутренней архитектурой, нацеленной на более активное использование многопоточности, и поддержкой тегов. Кроме того, в Bullet Cache реализовано несколько расширенных режимов для обращения к данным и определения их времени жизни в кэше, что позволяет предоставить приложению более полный контроль над содержимым кэша. | ||
Ответить | Правка | Cообщить модератору |
Оглавление |
Сообщения по теме | [Сортировка по времени | RSS] |
1. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Аноним (??) on 18-Окт-11, 13:08 | ||
Очень хорошо! И то что нужно. | ||
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору |
2. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Erley (ok) on 18-Окт-11, 13:13 | ||
Миллион tps - это просто отличный результат! | ||
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору |
6. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Аноним (??) on 18-Окт-11, 13:21 | ||
Отличный от чего? В какую сторону? С чем сравнивалось? | ||
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору |
7. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Erley (ok) on 18-Окт-11, 13:39 | ||
> Отличный от чего? В какую сторону? С чем сравнивалось? | ||
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору |
3. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Crazy Alex (ok) on 18-Окт-11, 13:13 | ||
Человек оринетируется на скорость и тащит текстовый SQL-подобный протокол? Пример Mysql его ничему не научил? | ||
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору |
4. "Bullet Cache - высокопроизводительная система кэширования да..." | +5 +/– | |
Сообщение от Аноним (??) on 18-Окт-11, 13:15 | ||
MySQL такой медленный потому что использует SQL-синтаксис? Внезапно! | ||
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору |
5. "Bullet Cache - высокопроизводительная система кэширования да..." | –2 +/– | |
Сообщение от Crazy Alex (ok) on 18-Окт-11, 13:19 | ||
Внезапно, при выборке по первичному ключу (аналог key-value) у японцев получалось сильно поднять производительность, введя простой для разбора протокол вместо SQL (см. HandlerSocket). | ||
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору |
8. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Аноним (??) on 18-Окт-11, 13:40 | ||
> Внезапно, при выборке по первичному ключу (аналог key-value) у японцев получалось сильно поднять производительность, введя простой для разбора протокол вместо SQL (см. HandlerSocket). | ||
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору |
10. "Bullet Cache - высокопроизводительная система кэширования да..." | –1 +/– | |
Сообщение от Crazy Alex (??) on 18-Окт-11, 14:11 | ||
Тут подсказки интуиции не требуются - вся ифнормация есть в открытом виде. Идём на сайт HandlerSocket, читаем, при желании - сравниваем. Суть именно в том, что на простых быстрых запросах (по первичному ключу, например) скорость упирается в разбор SQL. | ||
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору |
11. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Аноним (??) on 18-Окт-11, 14:17 | ||
> Тут подсказки интуиции не требуются - вся ифнормация есть в открытом виде. Идём на сайт HandlerSocket, читаем, при желании - сравниваем. Суть именно в том, что на простых быстрых запросах (по первичному ключу, например) скорость упирается в разбор SQL. | ||
Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору |
15. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Crazy Alex (ok) on 18-Окт-11, 14:47 | ||
Не знаю, насколько он там не эталонный, но мой опыт подтверждает то, что лукап по хорошо оптимизированной струтуре данных по времени сравним с примитивным разбором строки из 10-15 байт, если блокировки не влезут. | ||
Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору |
19. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Аноним (??) on 18-Окт-11, 15:10 | ||
> Не знаю, насколько он там не эталонный, но мой опыт подтверждает то, | ||
Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору |
12. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от опроро on 18-Окт-11, 14:34 | ||
Prepare Statement | ||
Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору |
13. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Crazy Alex (ok) on 18-Окт-11, 14:43 | ||
Может, прочтёте о чём вообще речь? А речь о том, что в шустром кеше делать SQL-подобный синтаксис - нарываться на тормоза. Или вы и там prepare реализовывать предложите? | ||
Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору |
20. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Аноним (??) on 18-Окт-11, 15:30 | ||
:facepalm: | ||
Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору |
24. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Crazy Alex (??) on 18-Окт-11, 15:52 | ||
Плёвое дело по сравнению с чем? В запросом к диску - да сколько угодно. С генерацией страницы с кучей исполняемого кода и, возможно, теми же SQL-запросами - тем более. Но НЕ по сравнению с поиском в прилично оптимизированном хэше. Ну есть у меня этот опыт, так что знаю о чем говорю. В таких случаях надо использовать бинарные сериализованные форматы, которые парсить не надо вообще - тупо выгребать строки заранее известных размеров по заранее известным смещениям. | ||
Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору |
26. "Bullet Cache - высокопроизводительная система кэширования да..." | +2 +/– | |
Сообщение от Аноним (??) on 18-Окт-11, 16:12 | ||
Объясни как ты себе представляешь работу MySQL? На примере PHP я представляю примерно так: | ||
Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору |
29. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Crazy Alex (??) on 18-Окт-11, 16:16 | ||
Если там есть хоть какие-то сложные запросы - нет, конечно. См. японцев с HandlerSocket - проблема проявляется на простых запросах вида "SELECT name FROM table WHERE primaryKey=1" и подобных - то есть когда сам запрос выполняется мгновенно. Вот там уже парсинг SQL и обработка эскейпов чувствуется. | ||
Ответить | Правка | ^ к родителю #26 | Наверх | Cообщить модератору |
30. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Аноним (??) on 18-Окт-11, 16:30 | ||
До тебя никак не дойдёт, что скорость поиска зависит от реализации. Неужели ты думаешь, что в эту крошечную библиотеку встроен полноценный SQL-парсер с поддержкой всех SQL-стандартов? Да тут по сути конечный автомат с максимум 10-20 состояниями, распарсить строку в 100 байт и понять, что хотят найти в кэше на нём можно за 0,000001 сек., если не меньше. | ||
Ответить | Правка | ^ к родителю #29 | Наверх | Cообщить модератору |
33. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Crazy Alex (ok) on 18-Окт-11, 17:11 | ||
Я уже глянул в исходниках - нет там текстового синтаксиса, это дурной перевод. Есть нормальный бинарный формат и API-функции. | ||
Ответить | Правка | ^ к родителю #30 | Наверх | Cообщить модератору |
35. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Аноним (??) on 18-Окт-11, 17:28 | ||
> Я сказал, что для таких быстрых выборок, как поиск по primary key в Mysql и тем более - выборка из хеша оверхед на парсинг строки уже в 10-15 символов чувствуется очень хорошо. Потому что сам на это нарывался. А если эскейпы надо обрабатывать - так это вообще лишний memcpy, что ни в какие ворота. | ||
Ответить | Правка | ^ к родителю #33 | Наверх | Cообщить модератору |
36. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Crazy Alex (ok) on 18-Окт-11, 17:47 | ||
О memcpy я речь вёл в контексте именно кэша, там вообще работы с диском нет, как и сложных запросов. | ||
Ответить | Правка | ^ к родителю #35 | Наверх | Cообщить модератору |
32. "Bullet Cache - высокопроизводительная система кэширования да..." | +2 +/– | |
Сообщение от Грустный Анон on 18-Окт-11, 16:54 | ||
Нужно ещё понимание работы RDMS. | ||
Ответить | Правка | ^ к родителю #29 | Наверх | Cообщить модератору |
21. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от опроро on 18-Окт-11, 15:31 | ||
люди реально думают что базы данных данных настолько тупые насколько они умные ) | ||
Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору |
27. "Bullet Cache - высокопроизводительная система кэширования да..." | +1 +/– | |
Сообщение от Crazy Alex (??) on 18-Окт-11, 16:12 | ||
Вопрос снят - никакого SQL и вообще текстового протокола в Bullet Cache нет - именно по причине тормозности, на что и указывает автор в исходниках. | ||
Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору |
28. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Crazy Alex (??) on 18-Окт-11, 16:13 | ||
> Вопрос снят - никакого SQL и вообще текстового протокола в Bullet Cache | ||
Ответить | Правка | ^ к родителю #27 | Наверх | Cообщить модератору |
39. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от опроро on 18-Окт-11, 20:11 | ||
ну я ответил по поводу HandlerSocket | ||
Ответить | Правка | ^ к родителю #28 | Наверх | Cообщить модератору |
37. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Аноним (??) on 18-Окт-11, 20:04 | ||
http://msdn.microsoft.com/en-us/library/aa260835.aspx -- см. там раздел "The (so-called) Prepared property". | ||
Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору |
42. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Аноним (??) on 18-Окт-11, 22:57 | ||
> Может, прочтёте о чём вообще речь? А речь о том, что в | ||
Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору |
14. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Аноним (??) on 18-Окт-11, 14:44 | ||
Оставь. Нельзя (сложно) программиста php убедить в том что ассемблер суммирует быстрее, если он не знает что такое ассемблер. Большинство посетителей, как я понимаю, не сильны в реализации технологий, а видят лишь обложку. И по цвету обложки делают вывод о содержании. | ||
Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору |
16. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Crazy Alex (ok) on 18-Окт-11, 14:49 | ||
Кто-то проигнорирует, кто-то заинтересуется - народ здесь разный... | ||
Ответить | Правка | ^ к родителю #14 | Наверх | Cообщить модератору |
17. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Аноним (??) on 18-Окт-11, 14:52 | ||
> Кто-то проигнорирует, кто-то заинтересуется - народ здесь разный... | ||
Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору |
23. "Bullet Cache - высокопроизводительная система кэширования да..." | +3 +/– | |
Сообщение от Crazy Alex (??) on 18-Окт-11, 15:43 | ||
>> Кто-то проигнорирует, кто-то заинтересуется - народ здесь разный... | ||
Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору |
40. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Школьник (ok) on 18-Окт-11, 22:16 | ||
Я не могу говорить конкретно за MySQL, однако, мне приходилось работать тестировщиком другой RDBMS(проприетарной). В общем, исходя из того, что я узнал, я сделал такие выводы: производительность падает не только (и, возможно, не столько) на разборе SQL, сколько при таких дальнейших операциях как загрузка метаданных(хотя они часто кэшируются), проверка существования указанных в запросе таблиц, колонок, проверка типов данных, приведение типов данных, составление плана запроса, его оптимизация, преобразование плана в специальное внутреннее представление и т.д. Собственно разбор SQL (синтаксический разбор) тоже играет роль, но явно не первую. | ||
Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору |
18. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Аноним (??) on 18-Окт-11, 15:07 | ||
А что уж сразу не британские ученые? | ||
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору |
22. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Crazy Alex (??) on 18-Окт-11, 15:42 | ||
Ну и откуда сие недоверие? Методика тестов, патчи, результаты - у них всё открыто. Можно проверить, что и сделала куча народу. А для этого чуда я, пожалуй, побалуюсь на досуге с аналогичным патчем - поглядим, что получится. | ||
Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору |
31. "Bullet Cache - высокопроизводительная система кэширования да..." | +2 +/– | |
Сообщение от Грустный Анон on 18-Окт-11, 16:48 | ||
Классический пример "слышал звон, да не знаю где он" - основная нагрузка, за исключением выборки данных, приходится на query optimizer & planner, а не на разбор запроса, sql синтаксис тут совершенно не при чём. | ||
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору |
34. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Crazy Alex (ok) on 18-Окт-11, 17:13 | ||
Смеётесь? Нет там никакой нагрузки на планировщик при выборке по первичному ключу. | ||
Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору |
25. "Bullet Cache - высокопроизводительная система кэширования да..." | +3 +/– | |
Сообщение от Crazy Alex (??) on 18-Окт-11, 16:03 | ||
Тьфу, зря только ругался с неграмотными людьми. Скачал исходники, глянул - никакого SQL-like syntex там нет, а есть набор API-функций и бинарный протокол, как и должно быть. Больше того - вот что пишет разработчик: "The network protocol will be binary. Empirically, too much time is spent in parsing text protocols in memcached and sqlcached." | ||
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору |
38. "Bullet Cache - высокопроизводительная система кэширования да..." | –3 +/– | |
Сообщение от Аноним (??) on 18-Окт-11, 20:10 | ||
Да Да. Только все сразу поняли о чем речь а вы нет. | ||
Ответить | Правка | ^ к родителю #25 | Наверх | Cообщить модератору |
43. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Crazy Alex (ok) on 20-Окт-11, 01:48 | ||
Вы первоначальный текст новости не застали. | ||
Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору |
44. "Bullet Cache - высокопроизводительная система кэширования да..." | +/– | |
Сообщение от Аноним (??) on 20-Окт-11, 23:06 | ||
Библиотеки под Python пока нет: | ||
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору |
Архив | Удалить |
Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема |
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |