微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c – 编写DBMS的提示

我已经采取了一个只有一个大项目的研究生课程 – 写一个DBMS.

目标不是重塑轮胎,使企业DBMS与Oracle竞争.只需要支持一小部分sql命令.也不是为了存储多媒体或某些东西而创建一些奇特的混合模型DBMS.它必须是传统的RDBMS.

该项目的主要目标是使用编程技术来利用现代架构(多核处理器)构建高性能数据库(速度,加载).

我只是想知道是否有任何资源查询评估,优化器,数据结构理想的DBMS或基本上任何可以帮助我创建一个突出的项目.这位教授正在围绕诸如元编程的术语.

该项目必须完全在C中完成.

感谢至今的回复!我无法优化现有的数据库管理系统(如MySQL),因为该项目需要您从头开始构建自己的DBMS.是的,我知道这大部分都是重新发明,但有一些新颖的查询评估和优化算法.如果你知道任何与这个特定领域有关的资源或书籍,那么请告诉我!

解决方法

由于您的教授提到元编程,您可能需要查看以下内容

> WAM – 沃伦抽象机.将编程代码编译成可以在抽象机器上执行的一组指令.这个想法与jvm和cli相似.您不需要详细介绍,只需了解抽象机的想法.
> JVM,CLI – 与上述相同.
>工具,如lex,yacc,flex,bison.由于您将基本上为sql命令编写一个解释器/编译器,您可能需要使用一些工具.这可以被视为元编程的一种形式,因为你正在使用一种语言来编写一个工具 – 所以你是在元级编程.
>再次,元编程的想法 – 也许您可以使用将允许您的sql编译器/解释器自动优化并行查询的构造来增强语言.这些可以作为编译器的提示等来实现.
>重新编译器 – 您可能需要编写一个解释器/编译器,将初始查询重新编译为可以针对目标架构并行运行的查询.例如,对于N核架构,它可能会将查询重新编译为并行执行的N子查询,然后组合结果.

我不知道你应该对标准优化实践进行大量的研究.这些可以是复杂的,而且是一生中自己研究的课题.由于练习的目的是利用并行处理和元编程,那应该是您研究的重点.

原文地址:https://www.jb51.cc/c/114273.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐