A. VDBMS基本模块
VDBMS基本模块是构建虚拟数据库管理系统(VDBMS)的核心组件,它们协同工作以实现高效的数据管理和操作。以下是对VDBMS基本模块的详细阐述。
包装器(Wrapper)是VDBMS的中心,通过源描述语言SDL表示原始数据,并能从数据源检索数据。它能够将分散数据整合成类似于关系数据库的集合,支持对Web上的HTML、XML等语言进行解析,并将这些数据转换成关系数据源。包装器还能捕捉超链接页面之间的关系,将这些关系映射到虚拟数据库的表中。借助包装器,任何数据源都可以通过SQL语句进行查询。VDBMS系统提供了包装器开发工具包WDK,为网络访问、HTML语法分析、模式匹配和关系数据输出提供高级抽象,帮助编程人员专注于数据操作。
提取器(Extractor)作为异构数据整合的关键,使用Junglee提取语言JEL描述复杂的文本模式和语言结构,以识别特定名词的上下文。编程人员可以定义单个名词,EDK编译器为每个名词添加标记和值,形成标签。提取规则和程序库由EDK提取引擎解释,实现数据的有效提取。
VDB服务器整合了一组包装器和必要的提取器,形成一个统一的关系数据库,支持JDBC或ODBC通过SQL访问。VDB能够根据应用系统的需求,将查询结果表示为表或XML文档,提供灵活的数据访问方式。为了优化查询性能,VDB可能包含关系缓存区,预装入并根据需要刷新,以存储查询结果。此外,VDBMS还包含数据转换器和数据合法性检验器,以应对不规则数据源,确保数据质量和一致性。数据质量工具包提供构建数据转换器和数据合法性检验器的能力,而管理工具则用于在VDB服务器上注册和注销数据源及其相关的包装器,确保数据源在VDB中的有效访问。
综上所述,VDBMS基本模块通过包装器、提取器、VDB服务器以及其他功能组件,共同构建了一个高效、灵活且强大的虚拟数据库管理系统,能够处理各种类型的数据源,提供高效的数据管理和操作能力。
虚拟数据库系统(Virtual Data Base Management System, VDBMS)
B. SDL开发笔记(一):SDL介绍、编译使用以及工程模板
若该文为原创文章,未经允许不得转载 原博主博客地址: blog.csdn.net/qq2149793...
Qt开发专栏:三方库开发技术(点击传送门)
无 下一篇:持续补充中…
前言
开发过程中,需要操作一些硬件,如播放音频、播放视频,SDL作为通用的C库,可以实现同一套代码操作设备。
SDL简介
Simple DirectMedia Layer是一个跨平台的开发库,旨在通过OpenGL和Direct3D提供对音频、键盘、鼠标、操纵杆和图形硬件的低级访问。它用于视频播放软件、模拟器和流行游戏,包括Valve获奖目录和许多不起眼的捆绑游戏。 SDL正式支持Windows、macosx、linux、iOS和Android。源代码中可以找到对其他平台的支持。 SDL是用C++编写的,用C++来工作,并且还有其他几种语言的绑定,包括C语言和Python。 sdl2.0是在zlib许可下发布的。此许可证允许您在任何软件中自由使用SDL。
SDL下载
当前最新的版本2.0.12,官方地址: http://www.libsdl.org 下载版本包含了2.0.12版本的windows(zip)和linux(tar.gz)源文件 CSDN下载地址: download.csdn.net/downl... QQ群:1047134658(点击“文件”搜索“SDL”,群内与博文同步更新)。
SDL编译
步骤一:解压文件夹
步骤二:使用CMake配置项目
配置路径,勾选配置相关的选项,然后点击配置:
配置生成工程的编译器类型和具体的编译器,如下图:
选择Qt5.9.3,mingw32的c和c++编译器,如下图:
生成工程,如下图:
配置成功,然后“Generate”生成工程,如下图:
修改一下安装路径,方便提取模块化,再配置然后生成工程。
步骤三:使用mingw32编译
打开Q5的mingw32编译命令行:
切换到生成工程的路径:
开启四线程编译:
步骤四:编译成功
步骤五:安装install
模块化
Demo
该Demo为SDL模块化的测试环境,仅用于测试添加模块后,SDL环境配置是否成功。
测试代码
bool SDLManager::testEnv() {// 初始化SDL if((SDL_Init(SDL_INIT_VIDEO|SDL_INIT_AUDIO)== -1)) { // 初始化失败,打出错误 qDebug() << __FILE__ << __LINE__ << "Failed to SDL_INIT_VIDEO|SDL_INIT_AUDIO" << SDL_GetError(); return false; }else { qDebug() << __FILE__ << __LINE__ << "succeed to SDL_INIT_VIDEO|SDL_INIT_AUDIO"; } SDL_Quit(); return true; }
测试结果
工程模板:对应版本号v1.0.0
对应版本号v1.0.0:开发环境模板
无 下一篇:持续补充中…
原博主博客地址: blog.csdn.net/qq2149793... 原博主博客导航: blog.csdn.net/qq2149793... 本文章博客地址: blog.csdn.net/qq2149793...