文件系统性能改善主要有哪些方法?在Unix系统中,还采取了哪些提高磁盘...

发布网友 发布时间:2022-04-24 13:18

我来回答

2个回答

懂视网 时间:2022-04-14 06:52

创建数据库用户S_NQ_SCHED/S_NQ_SCHEDsqlplus连接到用户下,执行SQL语句,$ORACLEBI_HOME/server/Schema/SAJOBS.Oracle.sql和SAA

创建数据库用户S_NQ_SCHED/S_NQ_SCHED

sqlplus连接到用户下,执行SQL语句,$OracleBI_HOME/server/Schema/SAJOBS.Oracle.sql和SAACCT.Oracle.sql

提示DSN的错误,需要修改odbc.ini

增加一个DSN的设置

配置管理员名字和管理员密码,与rpd的一致

odbc.ini文件的内容

[ODBC Data Sources]

AnalyticsWeb=Oracle BI Server

Cluster=Oracle BI Server

SSL_Sample=Oracle BI Server

131.240=libnqsdbgatewayoci10g.so

[131.240]

Driver=/usr/local/OracleBI/server/Bin/libnqsdbgatewayoci10g.so

Description=test data source

ServerMachine=192.168.131.240

DBCName=192.168.131.240

Username=S_NQ_SCHED

Password=S_NQ_SCHED

Database=orcl

DefaultDatabase=orcl

$. sa-init.sh

$schconfig

在database中配置DNS为131.240

配置数据库

[nQSError:46029]libclntsh.so.10.1: wrong ELF class: ELFCLASS 错误

指定LD_LIBRARY_PATH=$ORACLE_HOME/lib32 bit的库,注意32bit和bit的oracle和oraclebi的区别

nQSError: 17014 ORA-12154

在本地配置一个tnsnames.ora数据源,,名字为131.240,该名字与schconfig中的DSN名字一致

nQSError: 17014 ORA-01017 用户名密码不对

在schconfig中配置好database的用户名密码

如何判断Scheduler正常启动

使用Windows下的Job Manager连接,用户名密码是在schconfig的General中配置的用户名和密码

[nQSError: 67004] Registry value for DSN not set,需要配置odbc.ini和schconfig下的DNS,参考上面的步骤,名字必须一致。

linux

热心网友 时间:2022-04-14 04:00

由于各种的I/O负载情形各异,Linux系统中文件系统的缺省配置一般来说都比较中庸,强调普遍适用性。然而在特定应用下,这种配置往往在I/O性能方面不能达到最优。因此,如果应用对I/O性能要求较高,除了采用性能更高的硬件(如磁盘、HBA卡、CPU、MEM等)外,我们还可以通过对文件系统进行性能调优,来获得更高的I/O性能提升。总的来说,主要可以从三个方面来做工作:
1、Disk相关参数调优
2、文件系统本身参数调优
3、文件系统挂载(mount)参数调优

当然,负载情况不同,需要结合理论分析与充分的测试和实验来得到合理的参数。下面以SAS(Serial attached SCSI)磁盘上的EXT3文件系统为例,给出Linux文件系统性能优化的一般方法。请根据自身情况作适合调整,不要生搬硬套。

1、Disk相关参数
1.1 Cache mode:启用WCE=1(Write Cache Enable), RCD=0(Read Cache Disable)模式
sdparm -s WCE=1, RCD=0 -S /dev/sdb

1.2 Linux I/O scheler算法
经过实验,在重负载情形下,deadline调度方式对squidI/O负载具有更好的性能表现。其他三种为noop(fifo), as, cfq,noop多用于SAN/RAID存储系统,as多用于大文件顺序读写,

cfq适于桌面应用。
echo deadline > /sys/block/sdb/queue/scheler

1.3 deadline调度参数
对于redhat linux建议 read_expire = 1/2 write_expire,对于大量频繁的小文件I/O负载,应当这两者取较小值。更合适的值,需要通过实验测试得到。
echo 500 > /sys/block/sdb/queue/iosched/read_expire
echo 1000 > /sys/block/sdb/queue/iosched/write_expire

1.4 readahead 预读扇区数
预读是提高磁盘性能的有效手段,目前对顺序读比较有效,主要利用数据的局部性特点。比如在我的系统上,通过实验设置通读256块扇区性能较优。
blockdev --setra 256 /dev/sdb

2、EXT3文件系统参数
2.1 block size = 4096 (4KB)
mkfs.ext3 -b指定,大的数据块会浪费一定空间,但会提升I/O性能。EXT3文件系统块大小可以为1KB、2KB、4KB。

2.2 inode size
这是一个逻辑概念,即一个inode所对应的文件相应占用多大物理空间。mkfs.ext3 -i指定,可用文件系统文件大小平均值来设定,可减少磁盘寻址和元数据操作时间。

2.3 reserved block
mkfs.ext3 -m指定,缺省为5%,可调小该值以增大部分可用存储空间。

2.4 disable journal
对数据安全要求不高的应用(如web cache),可以关闭日志功能,以提高I/O性能。
tune2fs -O^has_journal /dev/sdb

3、mount参数
3.1 noatime, nodirtime
访问文件目录,不修改访问文件元信息,对于频繁的小文件负载,可以有效提高性能。

3.2 async
异步I/O方式,提高写性能。

3.3 data=writeback (if journal)
日志模式下,启用写回机制,可提高写性能。数据写入顺序不再保护,可能会造成文件系统数据不一致性,重要数据应用慎用。

3.4 barrier=0 (if journal)
barrier=1,可以保证文件系统在日志数据写入磁盘之后才写commit记录,但影响性能。重要数据应用慎用,有可能造成数据损坏。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com