|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Несколько вопросов оптимизации БД
Здравствуйте!
Возникло несколько вопросов оптимизации БД, использую Firebird 2.5 и IBExpert, интересно ваше мнение... 1. СУБД используется Firebird, которую легко открыть и украсть данные, тк не поддерживается шифрование. Можно ли перейти на какую-то другую СУБД с поддержкой шифрования наиболее легко? Желательно также бесплатную. Желательно дистрибутив СУБД покомпактнее. 2. Если в СУБД поддерживается шифрование - шифруются ли все хранимые процедуры и др код обработки? Или только данные? Как можно защитить код в файле БД от корректировки? 3. Можно ли как-то быстро очистить весь файл БД от комментариев? 4. В БД есть некие таблицы, которые есть желание перенести из СУБД в программу. Подскажите, пожалуйста, как это сделать наиболее правильно и удобно? 5. В БД оказалась одна большая таблица назовём C состоящая из 50 полей данных автоматически скопированных из таблиц А и B - это вообще нормально? или предыдущий разработчик долдон?? PS У меня мало опыта с СУБД, но достаточно в разработки ПО, поэтому прошу отвечать подробно и профессионально. Заранее спасибо. |
#2
|
|||
|
|||
1, 2 Положи БД на Encrypted диск. Можно, конечно, шифровать и руками, но в этом нет смысла. Только потеряешь производительность и услолжнишь себе работу, т.к. многие фильтрации надо будет делать на клиентской стороне. Скорее всего именно поэтому рахработчики БД этим не особо заморачиваются.
3. А зачем??? Что бы усложнить себе же жизнь? Вообще, можно написать программку, которая будет выдирать все исходники из БД, убирать в них комментарии а потом пересоздавать нужные объекты, благо это все равно SQL... 4. Не совсем понятно, что ты хочешь сделать. Если просто на время работы перенести пару таблиц в память (типа справочники), то можно воспользоваться чем-то типа TMemTable или просто TClientDataSet. Но тогда ты теряешь возможность делать разные JOIN'ы на уровне запросы в БД. Если вообще "навсегда" перенести, то нет смысла, если от БД не отказываешься полностью. 5. Возможно, долдон. Хотя мог пойти на это для того, что бы добиться повыгения производительности в некоторых специфических ситуациях. Вообще, надо в таком случае делать не таблицу, а вью. |
#3
|
|||
|
|||
1 и 2 задачи разные:
1 - задача защиты данных от конкурентов юзера 2,3 - задача защиты ПО от копирования конкурентами разработчика 4 - навсегда, если справшиваю значит смысл есть 5 - да вот мне тоже кажется это как-то тупо... проще написать код, который сделает всё что нужно с таблицей А и сразу повторится на таблице B, чем делать ещё одну таблицу тупо копируя все нужные данные из А и B... Пока ответ есть только на вопрос №5, остальные без ответов... |
#4
|
||||
|
||||
PostreSQL не пробовал, помощнее, чем Firebird , будет, но переделывать, практически всю программу придётся.
Sybase ASA ещё бесплатные редакции бывают, тоже неплохая, в смысле защищённости. Цитата:
- Товарищ прапорщик!!! Остановите поезд!!! - Поезд СТОЙ! РАЗ! ДВА! Последний раз редактировалось Viajero, 27.07.2011 в 19:56. |
#5
|
|||
|
|||
PostgreSQL всё же прилично отличается и весит аж 50Мб, как MySQL в минимуме. Sybase ASA совсем уже напоминает монстроракл весом 300Мб и слабая русская поддержка (малое распространение в России).
В этом плане конечно ближайший родственник InterBase видимо оптимален - 20-25мб и ближайшее сходство. При переходе с Firebird на Interbase что придётся переделывать??? Цитата:
Последний раз редактировалось delphicoding, 27.07.2011 в 20:40. |
#6
|
|||
|
|||
У кого-нибудь ещё есть мнения по вопросам 2,3,4 ?
|
#7
|
|||
|
|||
Цитата:
2 - думаю, только данные 3 - нет, но можно написать такую тулзу. вопрос в том, что это бессмысленно. 4. Опять же, не имеет смысла. Проблем ты этим создаш больше, чем получишь бенифитов. |
#8
|
||||
|
||||
Цитата:
http://ibase.ru/conf2010/Firebird_3.pdf возможно в ближайшем будущем выйдет и бета - Товарищ прапорщик!!! Остановите поезд!!! - Поезд СТОЙ! РАЗ! ДВА! |
#9
|
|||
|
|||
lmikle
2 - плохо, а в InterBase тоже нет шифрования процедур? И вообще о шифровании в БД - кто-нибудь слышал/видел чтобы взламывали шифрованные БД и насколько легко это вообще делается? (шифрование и пароли тоже бывают разные) 3 - нет, не бессмысленно, удаление комментов повышает защищённость сложной БД от копирования или редактирования конкурентами разработчика или любителями краденных версий ПО. 4 - это не очень умно говорить другому человеку, что ему нужно, не зная ситуации. Если знаешь как правильно сделать п.4 с возможностью визуального редактирования таблицы в Delphi - подскажи, пожалуйста... Viajero Цитата:
|
#10
|
|||
|
|||
Остались нерешёнными вопросы 2,3,4... профи, есть соображения?
|