引擎特点
- DBISAM不预先分配大的内存块,缺省情况下,在每个会话中它为每个物理表分配很小的128K的内存,包括BLOB域;如果不包括BLOB域,每个物理表是96K - (32k记录,64K索引和32KBLOBs)。它使用LRU cache management算法,包括智能read-ahead缓存、优化、序列写和支持带有优化缓冲的只读设备如CD-ROM。
- DBISAM提供自动的记录锁定和手动的表锁定,随同手动操作,提供应用程序定义的旗语锁。
- DBISAM以缓冲的形式提供事务处理支持,读提交的事务允许客户端意外的关机而表能够继续存在,在多数情况下,没有数据损坏。
- 对于多用户应用程序,DBISAM包括带有一个变化侦测策略的自动变化侦测,在每个会话中它能够被设置成"lazy"或"strict"。当它被应用程序访问时,这允许你指定多少当前数据应该被装入。
- DBISAM中的in-memory表是和基于磁盘的表是相同的,并且同一个应用程序中的多个线程可以共享。你能够在本地创建和使用in-memory表(它储存在客户端应用程序的内存中),或远程in-memory表(储存在数据库服务器的内存中)。In-memory表能够在SQL使用和基于磁盘的表中混合使用。
- DBISAM中的引擎,TDBISAMEngine组件提供,是高可自定义。触发、服务器端处理过程、预期事件、自定义SQL和过滤功能,并且能够增加自定义引擎标识。但是,服务器端处理过程和预期事件仅当作为数据库服务器时可以提供。触发允许你增加代码并且在任何insert、update或delete前后执行。用户SQL和过滤功能能够用于增加复杂函数到SQL和过滤语法中,因此使你能够缩减SQL和过滤表达式的复杂性。自定义引擎标识能够用于标识所有的表、流、备份和远程服务器请求并用一个唯一的邮戳回应,以至于只有你的应用程序能够访问这些资源。
表格式特点 DBISAM缺省最大文件大小是4G。你能够扩展支持文件到128G,但只有在Windows中可以提供。每个逻辑表DBISAM使用3个物理文件。所有DBISAM tables中空闲的空间被自动回收。另外,通过优化表,表中空闲的部分能够马上被删除。DBISAM使用固定长度的记录大小和可变的索引页及BLOB块大小。
SQL和过滤支持 DBISAM支持SQL-92标准,包括查询优化器query optimizer、查询计划query plans、参数优化查询parameterized queries、查询进度事件和扩展SQL语法extended SQL syntax,live和canned result sets。
另外,提供完全的表达式过滤器,包括过滤优化器,并且过滤器使用相同的SQL表达式语法,甚至扩展操作如LIKE和BETWEEN和函数。
远程访问 DBISAM包括远程客户-服务器访问DBISAM数据库服务器支持。连接超时能够调整,并且DBISAM将要断开远程远程静止的会话时触发一个事件。
当访问DBISAM数据库服务器,远程会话能够被配置成使用压缩和强加密方式。当会话激活时压缩能够即时的调整。
提供Activity tracing使你能够监视所有远程会话的请求和响应。这个在性能优化和稽查日志时很有用。
管理员 DBISAM提供完全的本地和远程管理功能。数据库能够手动或预定事件地备份和恢复,实际上,任何管理功能都可以用一个预定事件来运行。
DBISAM包括表创建和结构更改,表验证和修复,表优化和导入导出功能。所有这些功能包含进度、数据变化错误和日志事件,确保它们的执行能够被自定义和被报告的。
|