readme
Open source implementation of TJ7 encrypted compressed database format.
Homepage : http://ykolchurin.narod.ru/FVMas.html
С точки зрения функционирования драйвер TJ7 – это файл-серверная база данных с большим количеством улучшений по сравнению с существующими аналогами:
- - встроенное шифрование, позволяет используя только драйвер разрабатывать безопасные программы для хранения конфиденциальных данных, при этом нет необходимости в применении дополнительных протоколов защиты. Это удобно особенно в больших сетях, так как именно в них администраторы часто пренебрегают настройкой безопасных проколов из-за большой трудоёмкости.
- - встроенный функционал аутентификации, позволяет средствами драйвера организовать аутентификацию клиентов для доступа к базам данных, при этом имя и пароль клиента не просто ограничивают доступ, а являются тем связующим звеном позволяющим вообще декодировать зашифрованные данные. Такой подход позволяет обеспечить безопасность баз данных даже в случае полного перехвата трафика между клиентом и сервером.
- - встроенные алгоритмы сжатия, позволяют минимизировать размер базы данных. В среднем база данных в TJ7 занимает в 10-ть раз меньше чем обычные (распространённые) форматы баз данных, при этом устраняется не только проблема файл-серверных баз данных – большой сетевой нагрузки, но и как минимум вдвое уменьшается трафик по сравнению с современными клиент-серверными системами при полном отображении данных.
- - низкая нагрузка на сервер, позволяет экономить на серверном железе, теперь не надо покупать дорогостоящие сервера с задачей справится обычный домашний ПК. Каждый новый клиент добавляет вычислительную мощность в общую сеть.
- - быстрое редактирование, позволяет изменять и добавлять новые записи в базу данных практически мгновенно с минимальным трафиком. По производительности и объёму трафика данной архитектуре уступают все распространённые существующие БД – различных архитектур. Данный драйвер изменяет только те записи которые действительно были изменены – более того при изменении и добавлении данных на сервер передаются шифрованные блоки только изменённых ячеек – а 50-70% исправлений в базе данных это не более 3-4 элементов, значит передаваемый объём трафика не превысит даже 1Кбайт…
- - низкая нагрузка на клиентские ПК, в отличие от стандартных файл-серверных баз данных – где клиентские ПК используют полный цикл обработки баз данных, в данном драйвере часть, отвечающая за сжатие данных ложится на специальное серверное ПО. Специальная архитектура снимает с клиентов нагрузку на постоянное кодирование/сжатие баз данных – теперь этим может заниматься сервер, драйвер сам определяет когда размер базы данных перестал быть оптимальным и выполняет его оптимизацию – для поддержки максимальной производительности.
- - многопоточная организация, позволяет использовать по максимуму возможности современных 4-х ядерных процессоров. А также драйвер содержит функционал, позволяющий программисту легко разрабатывать многопоточные приложения используя данный функционал драйвера.
- - встроенный функционал обработки данных, позволяет программисту писать программы и обрабатывать таблицы исключительно уже готовым функционалом драйвера, который содержит всевозможные фильтры, процедуры сортировки таблиц, поиска, анализа, группировки, копирования, слияния, сопоставления массивов и т.д. (практически полный набор реляционной алгебры)… это позволяет минимизировать время разработки приложений под данный драйвер.
- - универсальная архитектура доступа к данным, позволяет программисту заполнять данные из любых источников и легко разрабатывать новые функции которых не было предусмотрено ранее в библиотеке и кроме того что такие функции по функциональности будут как внутренние функции библиотеки, так они также будут защищены от ошибок программиста типа переполнения буфера. А также база данных может работать не только как файл-серверная, но и как локальная БД – это значительно расширяет область применения – так как теперь один и тот же формат можно использовать как для сетевых платформ, так и для автономных распространяемых справочников.
- - встроенный язык программирования, позволяет писать гибкие, программируемые программы, создавать сценарии и обрабатывать данные не вызовом процедур и функций, а выполнением запросов на подобие SQL.