Автор | Программирование. Помогите изобрести велосипед. Буквы в числа |
А настролько важно использовать СУБД?
Вроде задачка несложная, хранить можно хоть в текстовике, работать с которым будет хоть тот же паскаль. А там уж что хочешь, то и делай. |
FireSwarm
rowid это не замена primary key. Скорее это дополнительная полезная фишка, использование которой позволяет во много раз ускорить доступ к произвольной строке (по сравнению с PK). Да и само по себе значение столбца rowid не хранится в БД. |
Balmung
Фишка в скорости. Да и у ТС данные изначально в БД. |
для MrSlayer:
если данные изначально в БД - их можно оттуда забрать.
Тут скорее может помешать момент, если надо будет поддерживать работу нескольких человек с базой, но и это реализуемо (правда, тут уж действительно лучше использовать клиент-серверные СУБД).
Что до скорости - все зависит от пряморукости того, кто будет реализовывать. Да и в том же Дельфи хватает готовых шустрых типов данных вроде TStringList с кучей функций, алгоритмов поиска и сортировки. |
44+
http://www.delphibasics.ru/TStringList.php |
Balmung
Да я понял о чем ты, на JAVA и C++ есть аналог map.
Вообще сделать можно все, что угодно. Только вот нужно ли... Есть уже используется СУБД, то очень глупо не использовать возможности оной. Это будет быстрее в плане выполнения, а уж про трудозатраты я вообще молчу. |
для MrSlayer:
так я и говорю, что можно перенести, если есть проблемы с конкретной СУБД.
Насчет времени - еще неизвестно, что будет быстрее, а трудозатраты - мизерны. Если не нужна совместная работа с базой, все элементарно. |
Balmung
1) тебе придется обеспечивать самому уникальность
2) как будешь осуществлять обновление данных и опять таки обеспечивать уникальность при обновлении
3) как будет обеспечиваться уникальность при параллельной работе нескольких пользователей
4) придется тратить дополнительные производственные ресурсы (ведь от СУБД ты все равно никуда не денешься, раз данные хранятся в ней)
и это только в том случае если данных будет действительно 25 тыщ строк. А если это будут миллионы строк или даже десятки миллионов?
ps Если бы задача стояла извлечения данных из блокнотика я бы с тобой согласился, и то при условии, что будет всего 1 табличка как сказал ТС.
А что касается быстроты - то даже такая простейшая задача, как извлечение конкретной строки в СУБД будет выполняться в несколько раз быстрее, ибо B-дерево жешь. В делфи придется самому подобное реализовывать. (в C++ правда спасет boost) |
обожаю читать топики по программированию. хорошо чо сам не занялся. |
1) тебе придется обеспечивать самому уникальность
Этим занимается СУБД.
2) как будешь осуществлять обновление данных и опять таки обеспечивать уникальность при обновлении
Этим занимается СУБД.
3) как будет обеспечиваться уникальность при параллельной работе нескольких пользователей
Этим занимается СУБД.
4) придется тратить дополнительные производственные ресурсы (ведь от СУБД ты все равно никуда не денешься, раз данные хранятся в ней)
и это только в том случае если данных будет действительно 25 тыщ строк. А если это будут миллионы строк или даже десятки миллионов?
У меня база на десятки миллинов строк и сотни террабайт размером. Никаких проблем с производительностью. МС СКЛ это очень хорошая СУБД, на самом деле. |
для MrSlayer:
про несколько пользователей я и не говорю)
Но для одного конкретно эту задачу можно легко и эффективно решить, по моим прикидкам, используя пару файликов из блокнотика) |
FireSwarm
Это я не тебе писал. Все это относилось к преимуществу работы в СУБД, чем выгружать те же данные в память и работать с ними в прикладной программе.
Что касается выбора СУБД, то тут все зависит от требований под задачу, количества денег и наличия того или иного специалиста :)
Я сам работал только с oracle и ibm db2. Детише майкрософта не щупал. Но у него есть явный минус - жестко ограничена ОС и если понадобится задействовать какое-нибудь другое оборудование, вроде мейнфрейма :) возникнут проблемы с миграцией. |
МС СКЛ это очень хорошая СУБД, на самом деле.
и дорогая. |
KoNniK
ну они все не из дешевых... |
для MrSlayer:
мускул дешевый. %) |
KoNniK
+ хотя у db2 вполне нормальная бесплатная версия, урезанная лишь в количестве ресурсов. То что подается бесплатным у oracle вызывает лишь отвращение :) |
для MrSlayer:
у него есть явный минус - жестко ограничена ОС и если понадобится задействовать какое-нибудь другое оборудование, вроде мейнфрейма :) возникнут проблемы с миграцией.
Серверные ОС от мелкософта нормально стоят на мэйнфреймах. Но привязка к ОС есть, тут не поспоришь.
МС СКЛ это очень хорошая СУБД, на самом деле.
и дорогая.
Оракул гораздо дороже. |
мускул дешевый. %)
К сожалению, он не всегда удовлетворяет требованиям. |
KoNniK
Опять таки какая задача. Пока возможностей СУБД хватает все ок. Но когда захочется чего-то большего или объемы данных сильно возрастут, тогда придется мигрировать, а это тоже деньги. |
FireSwarm
Серверные ОС от мелкософта нормально стоят на мэйнфреймах.
Это извращение. На юниксовую часть нужно ставить всферу, разворачивать виртуалку с windows server. За каждый этап платить немалые деньги :)
DB2 все равно, windows, linux или zOS. |