|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
ViPRos, еще вопрос к вам. с целью уточнить мы об одном и том же говорим ии нет? 1) вот вы создали граф на 100 gb. вам надо его записать, чтобы он стал доступен другим. здесь прокатят низкоуровневые схемы. параллелить можно до безобразия лишь бы корзина с дисками тянула. 2) разные системы работуют с графом, изменяя состояния узлов/ребер? тут же вроде не должно возникать обьемной записи на диск. в каком пункте у вас затык с записью? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2013, 23:50 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
Lord British, ну вот на новой машине влоб не получился, теперь буду эксперминнтровать - по контроллерам, дискам, партиции и т.д. рапсараллелить, но это уже другая песня (значит фиг продашь систему на фабрику какую нить, мы за это говно отдали 230 тыщ зеленых) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.02.2013, 23:53 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
Lord British, ну блин это опроцессный ПЛАН завода внешная и внутренная логистика, производственные процессы процессы перемещения мобильных процессорв(люди,инструмент, оснастка,..) - вощем все что на заводе шуршит по хорошему время (пере)счета всей этой байды должна быть меньше длительности самого короткого процесса (ну тут можно кое где сделать локальные пересчеты, но не всегда) этой инфой работают снаюженцы сбытовики бухи хуйухи 0 все ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2013, 00:00 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
ViPRosLord British, ну вот на новой машине влоб не получился, теперь буду эксперминнтровать - по контроллерам, дискам, партиции и т.д. рапсараллелить, но это уже другая песня (значит фиг продашь систему на фабрику какую нить, мы за это говно отдали 230 тыщ зеленых) Опиши задачу подробней. Почему нужно писать все сразу на диск? Есть варианты с распределенным вычислением, расчеты на подобных объемах нужно параллелить и держать в памяти ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2013, 00:01 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
ViPRosLord British, скоко надо что бы инсертить 50 000 000 записей? (по кб допустим) быстро вставить 50Гб это конечно не хухры-мухры. при такой задаче базы данных общего назначения, типа mssql etc , мало приспособлены. вам просто нужно специализированное ПО. может даж какое-то своё. компания то большая. и в рамках этого ПО уже можно достичь скорости , сооизмеримой со скоростью записи в SDD (или что там в RAID стоит у вас) а уж скуль использовать токма как надёжное резервное хранение. Хотя полагаю, что такая мысль вам в голову приходила. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2013, 00:07 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
SeVa, задача такова - составить пооперационный оптимальный план работ (кто когда что где скоко,.. должен делать) и мониторить этот план в реалтайме с визуализацией на разных уровнях агрегации (матсер или кладовщик видятт РМ или паллету, а директор цеха и склады и т.д.) сам граф невозможно строить параллельно, а вот параллельно строить разные графы (с применением разных политик управленческих) можно данные находятся у владельцев данных (технологий и ресурсов) вот приходит заказ к сбытовику он делает широковещательный запрос кто могет? доустим тут 2 владельца ТП (конечной сборки) - они окликаются в свою очнредь они выставялют свои заказы (внутри тоже РМ являются могут являтся) отдельными владельцами) кто то откликается и т.д. у каждого владельца(заказчика) есть оценщик критериальный в конце концов последние звена высталяют свои времена и/затраты , оценщики заказичков оценивают и выбирают лучщего поставщика и так до сбыта и клиента выбранный (меченый оценщиками) граф становтся планом а потом мониторинг и пересчет с учетом неподвижных-реперных плановых точек (внешних по поставкам и закупкам и финансам и кредитам) вот ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2013, 00:11 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
beg-in-er, угу просто это следующий этап счас птыаемся отшлифовать то что есть ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2013, 00:12 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
ViPRosbeg-in-er, просто это следующий этап мдя, Акуенная задача. ээхх.( сглотнул слюну ) ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2013, 00:17 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
beg-in-er, приходи работать, понравишься - возьмем ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2013, 00:21 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
ViPRosbeg-in-er, приходи работать, понравишься - возьмем Цеж москва?, а мы провинциалы питерские. московская рана от первого приезда ещё не зажила. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2013, 00:25 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
beg-in-er, да я сам гастарбайтер был у меня чек из питера, офгенный был чек просто нам вдвоем не место :( ушел через 1.5 гда ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2013, 00:27 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
ViPRos, Ок, как доберусь до первопрестольной , можно и встретится. уж больно маштабно всё выглядит. да и наработки кой какие есть в этом направлении. жалко их под сукном держать. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2013, 00:38 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
beg-in-er, ок ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2013, 00:41 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
ViPRosLord British, ну что такое - шуршит? скоко надо что бы инсертить 50 000 000 записей? (по кб допустим) Та Вверху спрашивал не просто так. Есть большая разница между разовой заливкой и оперативной обработкой этого вашего графа. Залить сотни гигов не проблема, sqlldr может писать почти напрямую (минуя все этапы, которые проходит insert) да еще и параллельно. Вы полностью можете загрузить полезной нагрузкой вашу дисковую систему . В таблице куда льете можно создать партиции их раскидать по "дискам". Грохните индексы перед заливкой, потом создадите. И т. п.. У вас смотрю железо хорошее присутствует, так что успехов. Что касается обработки уже залитого графа посмотрите вверху я приводил пример, разбейте граф на кусочки, и подгружайте по мере необходимости, кешируйте горячие куски, а сохраняйте только узменившиеся кусочки. Гуглите oracle ndm lod api идею можно подсмотреть. Конечно, если у вас текущая реализация пытается сохранить 50 gb на каждый чих - это косяк архитектурный. Пса. Пишу с тела не многословен. Сори ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2013, 00:47 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
ViPRos, Задача интересная у вас, приглашайте годного ДБА, он вас короткой дорогой приведет, а то будут сплошные велосипеды. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2013, 00:53 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
Lord British, автор Грохните индексы перед заливкой, хорошо построенный индекс ( я не про скл говорю, а вообще ) делается настолько быстро, что затраты на его создание ничтожны. как это в mssql делается незнаю. гигабайты не заливал. но там всё много медленее. а вот индекс строил. получилось быстрее , чем в Dictionary. а он очень шустрый. и по памяти в разы меньше. но это так. офтоп. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2013, 01:16 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
beg-in-er, Я тоже не про мсскл, про оракле. Предлагаю просто автору искать альтернативы в его субд... админы решают. Тут вот рассказываетсяхорошее промо, но лучше читать докуме http://www.dba-oracle.com/tips_lldr_loader.htm ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2013, 01:21 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
beginner, по поводу скорости созданияиндекса в субд (не поддержка в конкурентной среде, а создание) там есть масса опций, которые удовлетворять огромное число сценариев по скорости. так что говорить, что где-то больше/меньше, быстрее/медленнее не совсем корректно. просто поставить субд и визардом все сделать - это не тест, вы же понимаете. Нужно прочитать толмкды, переварить и. Бой. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2013, 01:27 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
ViPRosSeVa, задача такова - составить пооперационный оптимальный план работ (кто когда что где скоко,.. должен делать) и мониторить этот план в реалтайме с визуализацией на разных уровнях агрегации (матсер или кладовщик видятт РМ или паллету, а директор цеха и склады и т.д.) сам граф невозможно строить параллельно, а вот параллельно строить разные графы (с применением разных политик управленческих) можно данные находятся у владельцев данных (технологий и ресурсов) вот приходит заказ к сбытовику он делает широковещательный запрос кто могет? доустим тут 2 владельца ТП (конечной сборки) - они окликаются в свою очнредь они выставялют свои заказы (внутри тоже РМ являются могут являтся) отдельными владельцами) кто то откликается и т.д. у каждого владельца(заказчика) есть оценщик критериальный в конце концов последние звена высталяют свои времена и/затраты , оценщики заказичков оценивают и выбирают лучщего поставщика и так до сбыта и клиента выбранный (меченый оценщиками) граф становтся планом а потом мониторинг и пересчет с учетом неподвижных-реперных плановых точек (внешних по поставкам и закупкам и финансам и кредитам) вот Интересная задача. Здесь не DBA нужен, а совсем другие подходы. Сахават, не возражаешь, если я черкну тебе на почту? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2013, 09:30 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
SeVa, Напиши, конечно. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.02.2013, 10:27 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
ViPRosLord British, ну что такое - шуршит? скоко надо что бы инсертить 50 000 000 записей? (по кб допустим) Сделал тебе немного конкретики. Обычный домашний комп, старый как моя тоска 2007 года, памяти 4Gb noname DDRII, CPU Core 2 Duo 2.13 Ghz. Винт1: На нем лежит Fixed Width CSV размером 1.6 Gb (60 млн записей). Винт старый (обычный PC-шный SATAII 2007 года выпуска). Задрота вобщем. Винт2: Оракловая табличка получатель лежит на другом винте (обычном PC-шном SATAII 2010 года выпуска). На этот же винт установлен сам Oracle и OS. CSV файл 1.6 Gb с Винт1 на Винт2 копируется командой copy за 41 сек. Содержимое этого же файла загружается в БД за 45 сек. Потеря не большая по сравнению с обычным копированием, потому что оно просто пишет в datafiles минуя все. Вот и прикидывай с учетом рейдов, партишининга и т. п.. [spoiler proof] Код: sql 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.
[spoiler] ... |
|||
:
Нравится:
Не нравится:
|
|||
05.02.2013, 23:08 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
Lord British, Да ладно, это не только в Оракл подобные фишки. Массовый импорт и экспорт данных (SQL Server) И ув. SeVa правильно заметил, что а) массовые ToList() - это зло в чистом виде б) запрос можно переписать с использованием join-ов Не понимаю плача по производительности LINQ. Я воспринимаю его как некий аналог SQL. Естественно, что LINQ будет работать медленее, чем ручная реализация правильных алгоритмов. Просто написание запросов на нем декларативно имеет свои плюсы: а) гораздо быстрее писать запрос, чем ручная реализация, б) меньше потенциальных багов из-за косяков ручной реализации в) не факт, что выбранный программером алгоритм будет быстрее использованного в LINQ. Да, и ставить в вину LINQ то, что им нужно уметь пользоваться, вызывает некое недоумение - разве есть инструменты, которые можно использовать наилучшим образом без понимания принципов его работы? По сабжу как-то мало конкретики для меня, тк предметной областью не увлекался. Но понятно, что если нужно анализировать графы на таких объемах, то загон данных на MS SQL и расчет на SQL будут тяжеловесными (хотя критерии скорости обработки не приведены). В идеале - это InMemory Database System (Oracle TimesTen, McObject ExtremeDB). SQLite в этом режиме для 50 Гб не тестил, поэтому советовать не могу. Возможно, перед тем, как кидаться в бой, нужно подучить теорию графов и использовать математический аппарат для нужного алгоритма. Я не к тому, что сомневаюсь в квалификации, а к тому, что хороший математик всегда может предложить как минимум не худший алгоритм анализа/обхода графов и деревьев, чем просто программист ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2013, 10:58 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
SeVaДля цепочек параллельных вычислений сейчас появилась весьма интересная штучка - dataflow Можете ссылку привести на внятное описание? Хочу почитать, а по dataflow слишком много мусора в поиске вываливается. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2013, 11:00 |
|
на что хоть нарвался?
|
|||
---|---|---|---|
#18+
arm, к чему этот боян, пиочитайте вверху. а заливку автору показал не чтобы он ораклю себе ставил, а нашел аналог у себе в мсскл, потому, что те пути что он использовал медленные. привел бы название способа со скоростью заливки ~ копирование файла, автору может полегчало бы. на счет 50гб какая там инмеморидб, реализация кривая, он и сам об этом сказал вверху гдето. мы оптимальный пути на неск сотнях гб искали транспортной сети. и ниче никакой инмемори не понадобилось. нагородят реализацию на каждый чих сохраняющую 50гб графа, а потом думают, что у них случился фейсбук и инмеморинужна. какая там матиматика, все уже придумано до нас (с) не помню кто. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2013, 11:33 |
|
|
start [/forum/topic.php?fid=20&msg=38139519&tid=1404072]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
68ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
64ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 191ms |
0 / 0 |