关键字:
SQLite
内容摘要:本文阐述在一个基于 Linux 的 Media NAS 系统中,如何使用了 Sqlite 数据库作为 NAS 系统中 Media 数据的存储数据库,来完成 Media 文件的共享,从而能使 Digital Media Player 播放设备通过 UPnP AV Server 服务对NAS 上的 Media 文件进行播放。
开放源代码, 整个代码少于 3 万行,有良好的注释并且有着 90% 以上的测试覆盖率;
少于 250KB 的内存占用(gcc);
支持视图, 触发器, 事务, 支持嵌套 SQL 功能;
它提供了虚拟机用于处理 sql 语句,这是一个很有趣的东西;
不需要配置,不需要安装,也不需要管理员;
支持大部分 ANSI SQL92;
简单易用的 API;
一个完整的数据库就对应磁盘上面一个文件,它是一种具备了基本数据库特性的数据文件;
同一个数据库文件可以在不同机器上面使用, 可以在不同字节顺序的机器间自由的共享;
最大支持数据库到 2TB,而且性能仅会受限于系统可用的内存;
大部分应用比目前常见的客户端/服务端的数据库快,在一些简单语句的处理性能与 mysql 和 postgreSQL 的比较,除了一些不常用的语句外,比其它两个都快;
没有其它依赖,可以使用在多种操作系统平台上;
以下为 Sqlite 的代码架构图,它由核、后端、SQL 编译器、辅助工具组成。
你可以看出 Sqlite 非常简单,Sqlite 的设计思想就是简单:
1、简单的在程序中使用它
2、简单的管理
3、简单的操作
4、简单的维护和定制
Sqlite 的代码架构图

数据库结构的设计
在 Media NAS 系统中涉及的媒体文件类型有三类:Video,Audio,Image。基于这三类文件,我们对数据库做了结构设计。
VideoTable 的设计:
显示标题(100字节),Video 时长(整数型),Video 长、宽(整数型),文件全路径名(1024 字节),所在目录名(260 字节);
来源:ibm 作者:余涛 责编:豆豆技术应用
正在加载评论...