Какую базу данных выбрать? - PullRequest
3 голосов
/ 05 апреля 2010

У меня есть следующие критерии

  • База данных должна быть защищена именем пользователя и паролем. Не должно быть возможности скопировать файл базы данных и использовать его иначе, чем MS Access.

  • Не будет центрального сервера баз данных. Каждая машина будет запускать свой собственный сервер базы данных локально, и пользователь начнет синхронизацию. Концепция вдохновлена ​​распределенной системой контроля версий, такой как Git. Так что он должен иметь хорошую поддержку репликации.

  • Сильная последовательность не требуется. Пользователи будут синхронизировать базы данных друг друга, когда им это нужно. В случае конфликтов должна быть возможность найти конфликт и представить его (из приложения) пользователю для его устранения.

  • Пересмотр данных, если он будет доступен, будет хорошим. например Вся история изменений в счете.

  • Я исследовал ориентированную на документы базу данных и склонялся к тому же. Но я не знаю, что выбрать.

  • База данных небольшая, в ближайшие несколько лет (скажем, 3 года) она не достигнет 1 ГБ.

Пожалуйста, не стесняйтесь предложить любую базу данных, которая, по вашему мнению, подойдет. Любые указатели высоко ценятся.

Заранее спасибо.

Ответы [ 3 ]

2 голосов
/ 05 апреля 2010

Я ищу точно такую ​​же вещь. Еще не нашли. Интересным проектом в этом пространстве является Prophet от Bestpractical (и SD трекера ошибок, который построен на этом). Однако я не знаю, насколько он активен, и я не думаю, что он использует зашифрованный формат файла (но в вашем случае шифрование всего диска было бы возможным решением).

Громкое слово Пророка звучит примерно так:

Заземленная, полу-реляционная, одноранговая, реплицированная, отключенная, версионная база данных свойств с самовосстанавливающимся разрешением конфликтов.

0 голосов
/ 05 апреля 2010

Вот то, что я ищу:

с официального сайта : CouchDB - это одноранговый распределенный система баз данных, она позволяет пользователям и серверы для доступа и обновления одни и те же общие данные при отключении а затем двунаправленный тиражировать эти изменения позже.

Хранение документов CouchDB, просмотр и модели безопасности предназначены для работы вместе, чтобы сделать истинное двунаправленное Репликация эффективна и надежна. Как документы, так и проекты могут копировать, позволяя полную базу данных приложения (включая приложения дизайн, логика и данные) быть реплицируется на ноутбуки для автономного использования, или реплицированы на серверы в удаленном офисы, где медленно или ненадежно соединения делятся данными трудно.

Есть идеи, как защитить данные couchDB с помощью учетных записей пользователей? например Mysql требует пользователя для входа в систему, чтобы использовать данные. Я ищу только для простой аутентификации, а не для чего-то дурацкого доказательства. Я просто не хочу, чтобы данные были открыты для редактирования. Шифрование файловой системы представляется излишним.

0 голосов
/ 05 апреля 2010

Я сделал это, когда клиент вертикального рынка хотел использовать мою программу ClipMate для хранения и распространения медицинских данных и не хотел, чтобы данные уходили «в дикую природу».
Я использовал возможности шифрования базы данных (DBISAM от Elevatesoft, у которой есть механизм, который компилируется непосредственно в программы Delphi) и возможность «аппаратной блокировки» моей оболочки защиты Armadillo.
Поэтому, когда кто-то покупает программу у клиента вертикального рынка, он получает приложение (скачать или компакт-диск) и устанавливает его. После установки им предоставляется диалоговое окно регистрации, которое показывает их «аппаратный отпечаток» (как сообщает Armadillo). Это происходит из их адреса Ethernet, последовательного процессора, жесткого диска и т. Д., И я могу ошибаться в любом из них, но это общая идея. Они вызывают его, и генерируется ключ, который уникален для этой комбинации конечного пользователя / компьютера. Регистрационный ключ «разблокирует» базу данных, которая зашифрована, и ключ шифрования является частью регистрационного кода. Конечный пользователь не может использовать данные без ключа, и они не могут отдавать или передавать данные без получения другого кода разблокировки. Это довольно плотно. Было бы слишком раздражающим для недорогого приложения, но они платят за это много, так что оно того стоит.

В любом случае, резюмируем: база данных зашифрована, и код шифрования доступен (программе, которая читает базу данных) только тогда, когда программа должным образом зарегистрирована для конкретного пользователя / компьютера.

Вы МОЖЕТЕ сделать это с помощью Access, MySQL и т. Д. Просто зашифруйте данные либо на уровне базы данных (я полагаю, они поддерживают это, нет?), Либо на уровне поля, если вы хотите получить полный контроль и согласны используя пользовательское интерфейсное приложение, чтобы прочитать вещь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...