数据库创建
内存数据库通过 Python 中的 SmartEDB 封装(exdb)方法 open_database() 创建。例如:
db = exdb.open_database("myopendb", dict)
这使用默认参数值创建了一个名为“myopendb”的内存数据库,使用 128MB 内存。变量 db 是打开数据库的句柄。还可以指定其他参数,例如 mem_page_size 和 db_max_connections。 open_database() 函数的完整参数集如下:
def open_database(
dbname,
dictionary,
is_disk = False,
db_segment_size = 128*1024*1024,
cache_segment_size = 16*1024*1024,
mem_page_size=256,
disk_page_size=4096,
db_log_type="REDO_LOG",
disk_max_database_size = 0,
file_extension_quantum = 4096*1024,
db_max_connections = 10,
iot_agent_id = 0
):
请注意,默认值 is_disk = False 适用于内存数据库。对于内存数据库,相关参数如下所述。对于持久数据库,还有其他需要考虑的因素。请使用以下链接查看创建或打开持久数据库的详细说明。
内存页大小
mem_page_size 参数定义了常规内存中内存页的大小。mem_page_size 可以通过计算来优化性能,并且会根据应用程序的动态情况而有所不同,但通常来说,页大小应在 80 到 512 字节之间;在大多数情况下,128 字节的页大小是不错的。
(请注意,对于全内存数据库,当 is_disk = False 时,将忽略 disk_page_size。)
(另外请注意,rtree 索引需要更大的页大小。如果在数据库事务期间遇到错误代码 MCO_ERR_RTREE 或 MCO_E_DISK_PAGE_POOL_EXHAUSTED,请逐步增加页大小,直到这些错误代码得到解决。)
最大数据库连接数
“db_max_connection” 参数指定了将为此数据库管理的最大连接数。
持久数据库
请使用以下链接查看有关创建或打开持久数据库的详细说明。