DLTHREADSPREPARE
DLTHREADSPREPARE 配置设置指定 Essbase 在块存储数据加载准备阶段可以使用多少线程,该线程将源数据组织到内存中,以便准备将数据存储到块中。并行处理的多个线程可能会提高数据加载性能。
为了使 Essbase 使用为此设置指定的值,必须将 DLSINGLETHREADPERSTAGE 设置设置为 FALSE。
语法
DLTHREADSPREPARE [appname [dbname]] n-
appname - 应用程序名称。用于在应用程序内的一个或所有数据库中使用指定数量的线程的可选参数。如果为 appname 指定了值,但没有为 dbname 指定值,则该设置将应用于指定应用程序中的所有数据库。如果未指定应用程序,则无法指定数据库,该设置将应用于 Essbase Server 上的所有应用程序和数据库。
-
dbname - 数据库名称。用于在指定应用程序中加载指定数据库时使用指定数量的线程的可选参数。如果不为 dbname 指定值,则该设置将应用于指定应用程序中的所有数据库。如果未指定 appname,则无法指定 dbname。
-
n - 数据加载进程可用于准备要加载的数据的线程数。指定 1 和 32 之间的整数。默认值为 1。
如果 n 大于最大值或负数,则该值假定为 32。
说明
DLTHREADSPREPARE 和相关设置 DLTHREADSWRITE 和 DLSINGLETHREADPERSTAGE 与并行数据加载处理相关。管道的概念与 Essbase 数据加载相关。管道是内存中可以串行或并行执行的一系列数据处理元素。Essbase 数据加载操作使用由 5 个阶段组成的管道。默认情况下,每个阶段都使用单个线程。因此,所有数据加载操作至少需要 5 个线程。
要通过最大限度地利用处理器资源来提高数据加载性能,可以使用这些设置在数据加载处理的准备和写入阶段中启用额外的多线程处理。有关块存储数据加载中的并行线程处理的更多信息,请参见 Optimizing Data Loads 。
说明
-
可以使用另一个配置设置 DLTHREADSWRITE 来指定数据加载处理的写入阶段的线程数。
-
许多因素会影响 DLTHREADSPREPARE 的可能最佳值,包括计算机上的处理器数以及在计算机上运行的其他进程数。如果要将此设置设置为高于默认值 (1) 的值,请与您的系统管理员联系,因为较高值会占用大量系统资源。作为经验法则,如果此设置的线程数大于服务器计算机上的处理器数,则不要期望性能优势。
-
如果将 DLTHREADSPREPARE 的值设置为大于 1(1),则在单处理器计算机上几乎不会产生任何好处。
范例
DLSINGLETHREADPERSTAGE Sample Basic FALSE
DLTHREADSPREPARE Sample Basic 3由于示例基本应用程序和数据库的 DLSINGLETHREADPERSTAGE 设置为 FALSE,因此 Essbase 在将数据加载到示例基本时在准备阶段使用 3 个并行线程。