让DB2数据库对所有内存进行使用的方案

此文主要向大家讲述的是让DB2数据库对所有内存进行使用的实际操作方法,如果你对DB2数据库对所有内存进行使用的实际操作方法相关的实际操作有兴趣的话,你就可以对以下的文章点击观看了。

简介

 

曾听说过创造性压力吗?它属于那些伪精神哲学之一,它宣称互相作用的力会创造出作为斗争副产品的事物。这有点象小人书里面善与恶之间的斗争。现在,我不想说所有软件工程师都是好人,或者所有硬件工程师都是坏人,但是在他们之间存在着创造性压力。

正如 Joseph Campbell 所说的,“不要让您对科学不切实际的憎恶迷惑了您的双眼,以至看不到计算机芯片中的光辉境界。”如果整个表象浪潮一样涌出磁盘并冲入内存,那还能有什么比这更浪漫呢?

有时侯,软件工程师会哀叹硬件发展的步伐太缓慢了:机器磁盘速度太慢、内存组太小并且时钟速度象蜗牛爬行。(当硬件发展赶上的时候,可能我们会忘记 Java™ 应用程序曾经是那么慢。)当新一代硬件出现时,操作系统首先适应,但留给用户的却是,它们只能用 32 位体系架构运行 16 位或(气喘吁吁的)8 位 DOS 应用程序的痛苦。

现在压力转到了软件工程师头上:他们什么时候才会重新编译应用程序并利用新硬件所提供的新数据类型和内存可寻址能力呢?在最终的分析中,您将在 8086 上运行的 BASIC 与在 24 路 SMP 上运行的 C++ 进行比较时,运行“Hello World”程序所花费的时间大约与编写该程序所花费的时间一样长。

但是,DB2数据库所要做的远不止是要向显示器输出“Hello World”。与 Web服务器软件期望更高速线路一样,数据库软件期望从磁盘速度、容量、可寻址内存的每次升级中尽可能获得好处。

尽管应用程序程序员可能会抱怨必须为 32 位机器重新编译 16 位程序(它已经运行良好了),但是数据库工程师喜欢这样的想法:在将数据排序、聚集或发送给用户之前把它保存在内存中而不是磁盘上。I/O 是如此众多要求过高工作负载的杀手 — 这正是您将 1 TB 的数据分散到 5 TB 的磁盘上的原因(更多的磁盘 = 更多的轴,这意味着更多并行的 I/O,至少在基准测试世界中是这样)。

现在,在 RISC 和 Sparc 世界中,64 位体系架构正逐步成为标准,它允许商业性 UNIX®(如 AIX®、HP-UX 和 Solaris 等)为您喜爱的关系数据库提供大量内存。32 位内存的可寻址能力大约等于 4 GB,而许多 UNIX 机器装有 20 到 100 GB 内存,您肯定希望使用这样大的内存。Intel 世界也不落后多少:现在,操作系统、编译器和数据库软件实验室里,正在 64 位 Intel 芯片上运行的 Linux 和 Windows 2000 是一个现实,而且不久会在您周围的网站上销售。

那么,如果硬件和操作系统都已经为使用巨大的内存做好了准备,并且DB2数据库也能够利用大内存,那么您如何将它们结合起来并使之工作呢?使用 DB2® 版本 7,首先要弄清楚的是,在内部,DB2 假设使用 32 位内存和硬件。要利用更大的内存,必须告诉 DB2 可以使用它以及如何使用它。

请勿责备 DB2 — 大多数 DB2 客户机和许多 DB2服务器在未来数年中将运行在 32 位 Intel 机器上。并且即使 DB2 在您机器上检测到有 96 GB 内存,谁又能肯定您希望 DB2 使用所有内存,而不是与其它应用程序共享这个内存呢?

当使用这种大内存时,您有几种选择。最显而易见的选择是创建 64 位 DB2 实例。现在,AIX、Solaris 和 HP-UX 上的 DB2 版本 7 都支持这种操作。如果您拥有版本 7.1,则必须下载修订包 1 以安装 64 位 DB2 库。如果您拥有版本 7.2 或更新版本,则不必为了创建 64 位 DB2 实例而安装修订包。要创建 64 位 DB2 实例,可以使用 db2icrt 命令,并指定参数 -w 的值为 64。例如:

db2icrt -w 64 -u db2fenc1 db2inst1

 

描述 64 位环境中 DB2 使用的手册位于:

 

http://www-4.ibm.com/cgi-bin/db2www/database/db2/udb/winos2unix/support/document.d2w/report?fn=db2q9e71frm3toc.htm

1 + 1 = 2。2 的 32 次方 = 极大的数。

每个 32 位 DB2 实例能够对 4 GB 内存寻址。通常,您希望将大部分内存给缓冲池专用。但是,AIX、HP-UX 和 Windows 上的内存分段会将***缓冲池的大小限制在 4 GB 以内。即使是在 32 位世界中拥有十分干净的内存模型的 Solaris 上,用于 DB2 缓冲池的内存也不能超过 3.35 GB;4 GB 内存空间的其余内存必须专用于 DB2 的其它共享内存用途。

(幸运的是,对于 64 位世界中的所有操作系统,内存模型都更干净。)在 HP-UX 上,32 位 DB2 实例所能够创建的***缓冲池大约是 800 MB。在 HP-UX 上,只有通过使用 32 位 HP-UX 上的 Memory Windows 来运行多个实例,才能使用 1 GB 以上的缓冲池。(DB2 发行说明(Release Notes)中描述了 HP Memory Windows。)在 Windows 上,缓冲池被限制为 3 GB,AIX 上是 1.75 GB,而 Linux 上大约是 1 GB。

让DB2数据库使用所有内存的方法

作者: bianceng,  出处:IT专家网论坛, 责任编辑: 陈子琪, 2009-12-14 07:00

 

曾听说过创造性压力吗?它属于那些伪精神哲学之一,它宣称互相作用的力会创造出作为斗争副产品的事物。这有点象小人书里面善与恶之间的斗争。

 

简介

 

曾听说过创造性压力吗?它属于那些伪精神哲学之一,它宣称互相作用的力会创造出作为斗争副产品的事物。这有点象小人书里面善与恶之间的斗争。现在,我不想说所有软件工程师都是好人,或者所有硬件工程师都是坏人,但是在他们之间存在着创造性压力。

正如 Joseph Campbell 所说的,“不要让您对科学不切实际的憎恶迷惑了您的双眼,以至看不到计算机芯片中的光辉境界。”如果整个表象浪潮一样涌出磁盘并冲入内存,那还能有什么比这更浪漫呢?

有时侯,软件工程师会哀叹硬件发展的步伐太缓慢了:机器磁盘速度太慢、内存组太小并且时钟速度象蜗牛爬行。(当硬件发展赶上的时候,可能我们会忘记 Java™ 应用程序曾经是那么慢。)当新一代硬件出现时,操作系统首先适应,但留给用户的却是,它们只能用 32 位体系架构运行 16 位或(气喘吁吁的)8 位 DOS 应用程序的痛苦。

现在压力转到了软件工程师头上:他们什么时候才会重新编译应用程序并利用新硬件所提供的新数据类型和内存可寻址能力呢?在最终的分析中,您将在 8086 上运行的 BASIC 与在 24 路 SMP 上运行的 C++ 进行比较时,运行“Hello World”程序所花费的时间大约与编写该程序所花费的时间一样长。

但是,数据库所要做的远不止是要向显示器输出“Hello World”。与 Web服务器软件期望更高速线路一样,数据库软件期望从磁盘速度、容量、可寻址内存的每次升级中尽可能获得好处。尽管应用程序程序员可能会抱怨必须为 32 位机器重新编译 16 位程序(它已经运行良好了),但是数据库工程师喜欢这样的想法:

在将数据排序、聚集或发送给用户之前把它保存在内存中而不是磁盘上。I/O 是如此众多要求过高工作负载的杀手 — 这正是您将 1 TB 的数据分散到 5 TB 的磁盘上的原因(更多的磁盘 = 更多的轴,这意味着更多并行的 I/O,至少在基准测试世界中是这样)。

现在,在 RISC 和 Sparc 世界中,64 位体系架构正逐步成为标准,它允许商业性 UNIX®(如 AIX®、HP-UX 和 Solaris 等)为您喜爱的关系数据库提供大量内存。32 位内存的可寻址能力大约等于 4 GB,而许多 UNIX 机器装有 20 到 100 GB 内存,您肯定希望使用这样大的内存。Intel 世界也不落后多少:现在,操作系统、编译器和数据库软件实验室里,正在 64 位 Intel 芯片上运行的 Linux 和 Windows 2000 是一个现实,而且不久会在您周围的网站上销售。

那么,如果硬件和操作系统都已经为使用巨大的内存做好了准备,并且DB2数据库也能够利用大内存,那么您如何将它们结合起来并使之工作呢?使用 DB2® 版本 7,首先要弄清楚的是,在内部,DB2 假设使用 32 位内存和硬件。要利用更大的内存,必须告诉 DB2 可以使用它以及如何使用它。

请勿责备 DB2 — 大多数 DB2 客户机和许多 DB2服务器在未来数年中将运行在 32 位 Intel 机器上。并且即使 DB2 在您机器上检测到有 96 GB 内存,谁又能肯定您希望 DB2 使用所有内存,而不是与其它应用程序共享这个内存呢?

当使用这种大内存时,您有几种选择。最显而易见的选择是创建 64 位 DB2 实例。现在,AIX、Solaris 和 HP-UX 上的 DB2 版本 7 都支持这种操作。如果您拥有版本 7.1,则必须下载修订包 1 以安装 64 位 DB2 库。如果您拥有版本 7.2 或更新版本,则不必为了创建 64 位 DB2 实例而安装修订包。要创建 64 位 DB2 实例,可以使用 db2icrt 命令,并指定参数 -w 的值为 64。例如:

db2icrt -w 64 -u db2fenc1 db2inst1

 

描述 64 位环境中 DB2 使用的手册位于:

 

http://www-4.ibm.com/cgi-bin/db2www/database/db2/udb/winos2unix/support/document.d2w/report?fn=db2q9e71frm3toc.htm

1 + 1 = 2。2 的 32 次方 = 极大的数。

每个 32 位 DB2 实例能够对 4 GB 内存寻址。通常,您希望将大部分内存给缓冲池专用。但是,AIX、HP-UX 和 Windows 上的内存分段会将***缓冲池的大小限制在 4 GB 以内。即使是在 32 位世界中拥有十分干净的内存模型的 Solaris 上,用于 DB2 缓冲池的内存也不能超过 3.35 GB;4 GB 内存空间的其余内存必须专用于 DB2 的其它共享内存用途。

(幸运的是,对于 64 位世界中的所有操作系统,内存模型都更干净。)在 HP-UX 上,32 位 DB2 实例所能够创建的***缓冲池大约是 800 MB。在 HP-UX 上,只有通过使用 32 位 HP-UX 上的 Memory Windows 来运行多个实例,才能使用 1 GB 以上的缓冲池。(DB2 发行说明(Release Notes)中描述了 HP Memory Windows。)在 Windows 上,缓冲池被限制为 3 GB,AIX 上是 1.75 GB,而 Linux 上大约是 1 GB。以上的相关内容就是对让DB2数据库使用所有内存的方法的介绍,望你能有所收获。

【编辑推荐】

  1. 对DB2数据库编目概念的深刻理解
  2. DB2数据移动的轻松掌握技巧描述
  3. SQL Server到DB2连接服务器如何实现?
  4. JDBC连接DB2数据库的实际操作技巧有哪些?
  5. 对DB2数据库性能的理解误区描述

 

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/229254.html<

(0)
管理的头像管理
上一篇2025-04-18 16:39
下一篇 2025-04-18 16:40

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注