互联网大厂面试题总结:数据库对比

需积分: 1 4 下载量 48 浏览量 更新于2024-09-21 收藏 69KB DOC 举报
“腾讯,金山等公司面试题小结,涵盖了Oracle、Sqlserver、MySql、DB2数据库的对比,以及Oracle和SQL Server在会话管理、内存管理、数据库管理和存储结构上的差异。” 在IT行业的面试中,数据库知识是常见的考察点,尤其是对于大型科技公司如腾讯和金山来说。以下是对上述内容的详细解读: 1. 数据库比较: - Oracle:Oracle是一款大型、成熟的数据库系统,以其强大的功能和安全性著称,适用于数据完整性与安全性要求高的企业环境。 - SQL Server:作为Sybase和Microsoft的产品,它在Windows平台上表现出色,适合中型规模的系统,操作界面友好。 - MySQL:免费且功能丰富,以快速和简洁的设计著称,常用于配合PHP、Perl等开发网站数据库。 - DB2:是超大型数据库,与Oracle类似,尤其擅长大量信息的存取。 2. Oracle与SQL Server的会话管理: - Oracle提供共享服务和专用服务两种方式。在专用服务中,监听器创建新进程来处理请求;共享服务下,请求由Dispatcher分发,减少对系统资源的需求。 - SQL Server默认采用线程处理连接请求,且支持线程池技术,以优化大量并发连接的管理。 3. 内存管理: - Oracle的内存分为SGA(System Global Area)、PGA(Program Global Area)和UGA(User Global Area),各部分有特定作用。 - SQL Server的内存管理机制相对不透明,但有动态内存管理,并将内存分为缓冲池和其他空间。 4. 数据库管理和存储: - Oracle的实例只能管理一个数据库,但在集群环境中可由多个实例共同管理。它支持OS文件、裸分区和ASM(Automatic Storage Management)存储方式。 - SQL Server单个实例可以管理多个数据库,数据库存储以系统文件形式存在。表空间类似Oracle的文件组,而区和页是物理存储的基本单元。 5. 存储结构差异: - Oracle的页大小和区的大小可根据不同表空间进行调整,而SQL Server的页大小固定为8KB,每个页由单一对象独占。 - Oracle的段更灵活,包含多种类型的数据库对象,如表段、索引段等,而SQL Server主要区分索引和表。 这些知识点是面试中常考的,理解并掌握它们对于在数据库相关的面试中脱颖而出至关重要。了解这些区别可以帮助你更好地评估不同数据库系统在特定应用场景下的优劣,从而做出更合适的技术选型。