Страница: 1 | 2 | 3 |
Вопрос: Определение геокоординат. Дело на миллион.
Добавлено: 08.03.09 14:42
Автор вопроса: Толик | ICQ: 81849136
Ответы
Всего ответов: 34
Номер ответа: 16
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #16
Добавлено: 10.03.09 09:02
Или возложить на SortedDictionary.
Номер ответа: 17
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #17
Добавлено: 10.03.09 14:19
и при этом весь объем данных держать в памяти?
Номер ответа: 18
Автор ответа:
Ra$cal
ICQ: 8068014
Вопросов: 18
Ответов: 817
Web-сайт:
Профиль | | #18
Добавлено: 10.03.09 15:34
я не знаю деталей реализации бд, но есть подозрение, что по объему требуемой оперативной памяти не будет принципиальной разницы. вот тут как раз нужен опыт в дотнете, чтобы сказать - бд точно будет грузить базу в память тока на момент запроса и потом тут же ее выгружать?. я вот не уверен. короч имхо главное убедить работодателя, почему выбран такой вариант. не думаю что он доебется, если адекватно описать причины применения того или иного решения.
зы: на хабре не так давно видел пост одного человека, который проводит собеседования. он грит у них задача была - написать программу, выводящую 100 чисел, и около четных чтобы было написано слово "четное" на любимом языке программирования. за полчаса из всех претендентов с задачей справлялись 10% вроде. так что и тут возможно так
Номер ответа: 19
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #19
Добавлено: 10.03.09 18:10
а это как?
Ты это про индексы спрашиваешь? Смотри в документации по той СУБД которую ты решил использовать.
В SQL Server открываешь нужную таблицу, там есть кнопка Indexes и там создаешь что тебе нужно.
Номер ответа: 20
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #20
Добавлено: 10.03.09 18:13
вот поэтому я и не люблю дотнет. каждая прога для хранения данных юзает по базе данных...может отменим курс теории алгоритмов, структуры данных, ведь у нас есть дотнет.
Выбор тут небольшой. Или юзаешь готовые СУБД, или лепишь говно на коленке.
Номер ответа: 21
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #21
Добавлено: 10.03.09 18:15
Но, тот ли это случай чтобы 100к записей хранить в текстовике (или бинарнике)? Это ведь не 1к и даже не 5к - это 100к!! Согласись - это уже довольно серьезные деньги..
Да за 100К можно 600-й мерс купить!!!
Номер ответа: 22
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #22
Добавлено: 10.03.09 18:16
и при этом весь объем данных держать в памяти?
Ну подумаешь, 30 метров. Сейчас в комп ставят по 2-4 гига, что там те 30 метров?
Номер ответа: 23
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #23
Добавлено: 10.03.09 18:22
я не знаю деталей реализации бд, но есть подозрение, что по объему требуемой оперативной памяти не будет принципиальной разницы. вот тут как раз нужен опыт в дотнете, чтобы сказать - бд точно будет грузить базу в память тока на момент запроса и потом тут же ее выгружать?.
Я думаю, зависит от базы данных.
Если ты подключаешься к SQL Server, то тебе вообще ничего память грузить не будет кроме тех данных которые ты в эту память сохраняешь. Можно, например, просканировать 10-гигабайтовую таблицу, при этом программа будет занимать в ОЗУ 10-20 метров (ну сколько там минимум .NET-овская прога занимает с загружеными сборками своими). А вот СУБД конечно память будет хавать, но это ж отдельный процес.
Правильно написанная СУБД (типа SQL Server) с правильно спроектированой базой данных не должны хавать много памяти. Если правильно расставить индексы, то кол-во операций ввода-вывода можно свести к минимуму.
Номер ответа: 24
Автор ответа:
Ra$cal
ICQ: 8068014
Вопросов: 18
Ответов: 817
Web-сайт:
Профиль | | #24
Добавлено: 10.03.09 18:37
ода, правильно спроектрованная база, правильные таблицы... просто установленный оракл хавал всю свободную память, имея только дефолтную таблицу с настройками оракла. так что бд это зло для таких дел. если есть желение юзать бд, то можно замутить юзаенье sqlite, она 50 000 строк добавляет меньше секунды, селекты не тестил еще, времени нету ну и плюс полностью управляемое состояние, на время работы создал объект базы, поюзал, закоммитил, закрыл.
зы: если структуры данных - говно на коленке, то это диагноз =\
Номер ответа: 25
Автор ответа:
Smith
ICQ: adamis@list.ru
Вопросов: 153
Ответов: 3632
Профиль | | #25
Добавлено: 10.03.09 19:57
С помощью бэдешек щас автоматизируют практически все и это видимо означает, что бд это универсальное решение, это компромис.
Еси кодеру некогда или знаний нет чтоб придумать свое тада тока бд.
Номер ответа: 26
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #26
Добавлено: 10.03.09 22:30
Не согласен.. это означает лишь то, что програмист либо туп либо ленив донельзя.. я видел такие проги в которых настройки программы вместо ini или xml хранили в БД.. (верх идиотизма). Бд надо применять там где это уместно, а не везде где угодно.. И как это не печально, но Ra$cal прав.. .net отупляет.. программисты перестают заботится об оптимизации своего кода,алгоритмов.. перестают думать головой.. все за них делает net! Нафига надо что то мутить с SortedDictionary.. писать сохранение/считывание.. юзать форматтеры.. зачем все это?? Когда можно кинуть на форму DataSet за пару кликов связать его с бд и не париться! И то что это будет тормозное уебище - никого не волнует! Главное, что это работает и всего за 10 минут! Конечно, net - мощный инструмент, но только в толковых руках.. в руках того, кто понимает КАК там все устроено и работает на более низком уровне.. а для этого знать просто net недостаточно.
это не тот случай... тут всего 1 таблица и никаких связей! Какой смысл юзать бд? что это даст? имхо в этом случае - смысла нету.. и если речь идет о 20-30 метрах памяти, то лучше реально заюзать какую нибудь структуру данных.
Номер ответа: 27
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #27
Добавлено: 11.03.09 00:01
100к это несерьезно, и лично я бы написал то, что быстрее писать. Где-то начиная с 1кк уже можно задумываться не над первым пришедшим в голову решением.
Номер ответа: 28
Автор ответа:
Smith
ICQ: adamis@list.ru
Вопросов: 153
Ответов: 3632
Профиль | | #28
Добавлено: 11.03.09 02:04
Я имел ввиду не сохранение настроек, разве это непонятно?
Для простого сохранения настроек при выходе и загрузки их при запуске я обычно даже ини не использую и тоже считаю, что нэт все упрощает.
Меня неправильно поняли.
Номер ответа: 29
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #29
Добавлено: 11.03.09 02:54
да не отмазывайся теперь.. все тебя правильно поняли
ты, в кратце, изложил основную суть и идеологию использования баз данных современными программистами
))
Номер ответа: 30
Автор ответа:
Smith
ICQ: adamis@list.ru
Вопросов: 153
Ответов: 3632
Профиль | | #30
Добавлено: 11.03.09 04:49
Невижу повода отмазываться.
Рад что ВСЕ поняли меня правильно.
Жаль конечно разочаровывать, но сам я не отношусь к современным программистам использующим бд для сохранения настроек.
Не умею работать с бд )