|
|
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
HettС каких пор Map/Reduce стал алгоритмом поиска? Скорее это агрегация данных. Он в стеке технологий стоит на шаг выше. А что вы положите в Reduce - подсчёт или поиск это уже особенности имплементации редюсера. Главное - интерфейс соблюдается и контракт весьма либерален. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 15:43 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczВо-первых, слово "алгоритм", вроде, до вас тут никто не упоминал. Во-вторых Map/Reduce это способ распределения задач для обработки большого набора данных. Решать этим способом можно разные задачи, а не только считать агрегаты. В-третих, обратимся, например, к википедии. Я исхожу из того, что вопрос был задан: "Как в большой колекции обьектов найти обьект без прямого применения цыкла for?", что, если не "алгоритм" тут можно применить? Вы зачем-то ссылаетесь на какую-то парадигму, но она опять же требует реализации алгоритма, который в ее случае будет еще сложнее, учитывая особенности этой модели. Так зачем вообще предлагать эти решения, когда явно автор не это спрашивает. Просто покидаться умными словами? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 15:49 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
авторОн в стеке технологий стоит на шаг выше. А что вы положите в Reduce - подсчёт или поиск В случае Reduce поиск будет сводиться опять же к подсчету. Разве нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 15:52 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
Java Stream API не предлагали ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 15:57 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
HettЯ исхожу из того, что вопрос был задан: "Как в большой колекции обьектов найти обьект без прямого применения цыкла for?", что, если не "алгоритм" тут можно применить? Если бы автор хотел "алгоритм", то так бы и написал. Автор сам не знает чего хочет, поэтому спрашивает как оно вообще бывает помимо полного перебора. На этот вопрос я подробно и ответил - два общих подхода, индексирование и распараллеливание. Алгоритмы это частные решения. Автор про них не спрашивал. Если ты знаешь конкретные, "алгоритмы", то ответь автору. Меня ты для чего комментируешь? То что ты не знал про использование MapReduce для поиска, ещё не значит что ты можешь решать за автора темы что ему интересно, а что нет. ОК? HettВы зачем-то ссылаетесь на какую-то парадигму, Затем что она часто используется для поиска во многих NoSQL решениях. Тоже не знал? Hettно она опять же требует реализации алгоритма, который в ее случае будет еще сложнее, учитывая особенности этой модели. Набор слов. HettТак зачем вообще предлагать эти решения, когда явно автор не это спрашивает. Давай, объясни нам что автор спрашивает. HettПросто покидаться умными словами? Железный аргумент от человека, который тут ещё ни одного предложения по теме вопроса не написал, зато уже пару раз обосрался с по вопросу распределенных вычислений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 15:59 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
UsmanJava Stream API не предлагали ? Предлагали: 19209920 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 16:00 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
Боюсь что Stream API породит еще больше вопросов. Чувак по сути вас просит подсказать как проиндексировать его данные для поиска. И ему нужен алгоритм и структура данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 16:06 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczUsmanJava Stream API не предлагали ? Предлагали: 19209920 ок, ну, тогда остается Код: java 1. и Код: java 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 16:18 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
Я думаю ему нужно нечто вроде. Код: java 1. 2. 3. 4. 5. (но здесь нужно вернуть не один док а сет документов) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 16:35 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
maytonБоюсь что Stream API породит еще больше вопросов. Чувак по сути вас просит подсказать как проиндексировать его данные для поиска. И ему нужен алгоритм и структура данных. Может там за кадром мощная оптимизация? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 21:18 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
NebomaytonБоюсь что Stream API породит еще больше вопросов. Чувак по сути вас просит подсказать как проиндексировать его данные для поиска. И ему нужен алгоритм и структура данных. Может там за кадром мощная оптимизация? Это что разговор инженеров? Давайте бенчмарк. Только перед тем как его начинать имеет смысл оговорить критерии сравнения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 22:42 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
Раз уж на досугах изучаю этот прекрасный ЯП, то вот моя балалайка: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. сильно не пинайте ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2016, 10:23 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
HettРаз уж на досугах изучаю этот прекрасный ЯП, то вот моя балалайка: Стоит обратить внимание на Java 8 и Guava, чтобы не изобретать MultiMap и не писать колбасу из if-ов. К тому же это поможет расширить сознание под функциональное программирование. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2016, 10:33 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
Еще через страниц ~20 окажется что у автора постановка годная для использования Apache Lucene и все мапы идут лесом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2016, 11:14 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
maytonЕще через страниц ~20 окажется что у автора постановка годная для использования Apache Lucene и все мапы идут лесом. Автору темы, как обычно, пофигу. Вбросил и пропал. Дальше сами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2016, 11:15 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
arrt, Как вариант, в качестве ключей можно использовать Enum ( Перечисления ). А вместе с ними EnumMap/EnumSet . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2016, 11:39 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
Usmanarrt, Как вариант, в качестве ключей можно использовать Enum ( Перечисления ). А вместе с ними EnumMap/EnumSet . Set - Множество Операции над множествами: Код: java 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2016, 11:49 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
Он пишет авторНапример автор-название, автор-год издания. И при поиске по ключу вывод самого ключа, и значений. И если автор введен не полностью - то уже поиск из возможных вариантов. Попробуйте натянуть работу с множествами на эту постановку. И потом он завтра захочет искать издательство-год-издания, автор-соавтор, ISBN.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2016, 12:05 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
maytonИ потом он завтра захочет искать издательство-год-издания, автор-соавтор, ISBN....через пару страниц (: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2016, 12:15 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
Был вопрос но он не выяснен. Мой подход имеет смысл? И насколько он эфективен. Но там пара k-v расматривается в контексте: автор-id, названия-id... и т.д. Ведь надо какой то уникальный идентификатор же. Ведь автор-названия может иметь несколько вариантов, и вариантов комбинаций больше, а так только n мапов, которое соответсвует количеству полей колекции, и делает такой подход более схожым с бд... И таким образом нашел ID, и сразу и при ее нахождение перешел к обьекту колекции посредством gеt(id) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2016, 22:17 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
arrtБыл вопрос но он не выяснен. Мой подход имеет смысл? И насколько он эфективен. Но там пара k-v расматривается в контексте: автор-id, названия-id... и т.д. Ведь надо какой то уникальный идентификатор же. Ведь автор-названия может иметь несколько вариантов, и вариантов комбинаций больше, а так только n мапов, которое соответсвует количеству полей колекции, и делает такой подход более схожым с бд... И таким образом нашел ID, и сразу и при ее нахождение перешел к обьекту колекции посредством gеt(id) Ничего не понял. I. 1. В случае работы в оперативной памяти/Java ID нафиг не нужно, т.к. указатель на объект и так замечательно роль ID выполняет 2. Не хватает ID, добавьте его, в чем проблема? arrt\Если использовать отображения то я вижу вариант создания нескольких производных карт. Например автор-название, автор-год издания. И при поиске по ключу вывод самого ключа, и значений......Правильный ли это подход? II. Какое нафиг автор --> название, автор --> год издание? Ключевое поле --> объект. А в объекте уже все данные и хранятся p.s. или я не въехал в тему ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2016, 22:30 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
Leonid Kudryavtsev, так поле id уже добавили. Как тогда различать обьекты. Как их определить то. This один. Да и если карта состоит из полей - это компоненты одного уровня, а как тогда поле-обьект - автор->this?? author-list.get(id).. Id то ведь уникальное, другие поля хоть не примитивы, а стринги, но обьекты ведь.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2016, 13:10 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
arrtLeonid Kudryavtsev, так поле id уже добавили. Как тогда различать обьекты. Как их определить то. This один. Да и если карта состоит из полей - это компоненты одного уровня, а как тогда поле-обьект - автор->this?? author-list.get(id).. Id то ведь уникальное, другие поля хоть не примитивы, а стринги, но обьекты ведь.. Возможно я плохо соображаю. Но не только смысл текста от меня ускользает, но даже отдельных слов я не знаю ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2016, 13:37 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
arrtLeonid Kudryavtsev, так поле id уже добавили. Как тогда различать обьекты. Как их определить то. This один. Да и если карта состоит из полей - это компоненты одного уровня, а как тогда поле-обьект - автор->this?? author-list.get(id).. Id то ведь уникальное, другие поля хоть не примитивы, а стринги, но обьекты ведь.. Вот тебе серебрянная пуля. https://lucene.apache.org/core/index.html Иди читай. А потом приходи и говори почему не подходит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2016, 14:23 |
|
||
|
Как в большой колекции обьектов найти обьект без прямого применения цыкла for?
|
|||
|---|---|---|---|
|
#18+
кстати.. насчет скорострельности.. кто то говорил что между явой и бд - бд производительнее. типа лучше объем данных грузануть в ИМДБ (не путать с рейтингом кинофильмов), и там проделать операции с объемом данных, типа сортировки выборки и т.п. а теперь вопрос: факт, что есть такая штука, как Н2, факт, что она очень быстрая. она быстрее и мускула и постгреса оракла и т.п. по крайней мере в ряде операций. сами н2шники тесты не озвучивают но, их можно найти да и сам я в этом убеждался. и теперь самое интересное: н2 это не какой то там мегасервер - это ява-приложение. или даже ява-библиотека, интегрируемая в ява приложение. исходя из этого КАК Можно утверждать, что ява делает эти операции хуже, чем классическая полновесная бд? да, я речь не веду о выборке и сортировке 5 миллиардов записей, но того, что можно взять в память и там этим манипулировать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2016, 15:46 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39242475&tid=2124005]: |
0ms |
get settings: |
11ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
59ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
86ms |
get tp. blocked users: |
2ms |
| others: | 226ms |
| total: | 420ms |

| 0 / 0 |
