当前位置: 首页 > 云计算, 数据库 > 正文

InfiniDB 安装、配置与体验

InfiniDB 是列式存储引擎,适合大规模扩展,用于数据仓库,数据分析等BI系统,性能和可扩展性比 Infobright 更胜一筹,而且支持AWS,HDFS,GlusgerFS,下面是简单的安装配置与体验。

下载,当前的最新版本是infinidb-4.6.0-1
wget http://infinidb.co/system/files/infinidb_software/infinidb-4.6.0-1.x86_64.rpm.tar.gz

tar zxvf infinidb-4.6.0-1.x86_64.rpm.tar.gz
infinidb-mysql-4.6.0-1.x86_64.rpm
infinidb-storage-engine-4.6.0-1.x86_64.rpm
infinidb-libs-4.6.0-1.x86_64.rpm
infinidb-platform-4.6.0-1.x86_64.rpm

rpm -ivh infinidb*.rpm
有如下报错:

warning: package infinidb-platform = 4.6.0-1 was already added, skipping infinidb-platform = 4.6.0-1
error: Failed dependencies:
     expect is needed by infinidb-platform-4.6.0-1.x86_64

看文档说: An RPM install would be done on a system that supports RPMs like RHEL5 or CentOS systems.
我的系统是CentOS6.5,于是下载二进制版本:

wget http://infinidb.co/system/files/infinidb_software/infinidb-4.6.0-1.x86_64.bin.tar.gz

安装过程比较简单:

 ruRun the post install scripts.  The InfiniDB software will be installed in /usr/local/Calpont.
# /usr/local/Calpont/bin/post-install

按照提示就可以安装了,非常简单,需要注意的一点是区分单节点和多节点的选择。

infinidb-page

运行及体验:

Enter the following command to define InfiniDB Alias Commands

. /usr/local/Calpont/bin/calpontAlias

Enter 'idbmysql' to access the InfiniDB MySQL console
Enter 'cc' to access the InfiniDB OAM console

基本命令:

InfiniDB> help
help   Tue Jul 15 10:19:41 2014

List of commands:
Note: the command must be the first entry entered on the command line

Command                           Description
------------------------------    --------------------------------------------------------
?                                 Get help on the Console Commands
addDbroot                         Add DBRoot Disk storage to the InfiniDB System
addExternalDevice                 Add External Device to Configuration file
addModule                         Add a Module within the InfiniDB System
alterSystem-disableModule         Disable a Module and Alter the InfiniDB System
alterSystem-enableModule          Enable a Module and Alter the InfiniDB System
assignDbrootPmConfig              Assign unassigned DBroots to Performance Module
assignElasticIPAddress            Assign Amazon Elastic IP Address to a module
disableLog                        Disable the levels of process and debug logging
enableLog                         Enable the levels of process and debug logging
exit                              Exit from the Console tool
getActiveAlarms                   Get Active Alarm list
getActiveSQLStatements            Get List Active SQL Statements within the System
getAlarmConfig                    Get Alarm Configuration Information
getAlarmHistory                   Get system alarms
getAlarmSummary                   Get Summary counts of Active Alarm
getCalpontSoftwareInfo            Get the InfiniDB RPM detailed information
getExternalDeviceConfig           Get External Device Configuration Information
getLogConfig                      Get the System log file configuration
getModuleConfig                   Get Module Name Configuration Information
getModuleCpu                      Get a Module CPU usage
getModuleCpuUsers                 Get a Module Top Processes utilizing CPU
getModuleDisk                     Get a Module Disk usage
getModuleHostNames                Get a list of Module host names (NIC 1 only)
getModuleMemory                   Get a Module Memory usage
getModuleMemoryUsers              Get a Module Top Processes utilizing Memory
getModuleResourceUsage            Get a Module Resource usage
getModuleTypeConfig               Get Module Type Configuration Information
getProcessConfig                  Get Process Configuration Information
getProcessStatus                  Get InfiniDB Process Statuses
getStorageConfig                  Get System Storage Configuration Information
getStorageStatus                  Get System Storage Status
getSystemConfig                   Get System Configuration Information
getSystemCpu                      Get System CPU usage on all modules
getSystemCpuUsers                 Get System Top Processes utilizing CPU
getSystemDisk                     Get System Disk usage on all modules
getSystemInfo                     Get the Over-all System Statuses
getSystemMemory                   Get System Memory usage on all modules
getSystemMemoryUsers              Get System Top Processes utilizing Memory
getSystemNetworkConfig            Get System Network Configuration Information
getSystemResourceUsage            Get System Resource usage on all modules
getSystemStatus                   Get System and Modules Status
help                              Get help on the Console Commands
monitorAlarms                     Monitor alarms in realtime mode
movePmDbrootConfig                Move DBroots from one Performance Module to another
quit                              Exit from the Console tool
removeDbroot                      Remove DBRoot Disk storage from the InfiniDB System
removeExternalDevice              Remove External Device to Configuration file
removeModule                      Remove a Module within the InfiniDB System
resetAlarm                        Resets an Active Alarm
restartSystem                     Restarts a stopped or shutdown InfiniDB System
resumeDatabaseWrites              Resume performing writes to the InfiniDB Database
setAlarmConfig                    Set a Alarm Configuration parameter
setExternalDeviceConfig           Set a External Device Configuration parameter
setModuleTypeConfig               Set a Module Type Configuration parameter
setProcessConfig                  Set a Process Configuration parameter
setSystemConfig                   Set a System Configuration parameter
shutdownSystem                    Shuts down the InfiniDB System
startSystem                       Starts a stopped or shutdown InfiniDB System
stopSystem                        Stops the processing of the InfiniDB System
suspendDatabaseWrites             Suspend performing writes to the InfiniDB Database
switchParentOAMModule             Switches the Active Parent OAM Module to another Performance Module
system                            Execute a system shell command
unassignDbrootPmConfig            Unassign DBroots from a Performance Module
unassignElasticIPAddress          Unassign Amazon Elastic IP Address

For help on a command, enter 'help' followed by command name
InfiniDB>

类似mysql一样连接infinidb

# idbmysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.1.73 InfiniDB 4.6.0-1

Copyright (c) 2014, InfiniDB, Inc. and/or its affiliates. All rights reserved.
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

InfiniDB is a registered trademark of InfiniDB, Inc. and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+---------------------+
| Database            |
+---------------------+
| information_schema  |
| calpontsys          |
| infinidb_querystats |
| infinidb_vtable     |
| mysql               |
| test                |
+---------------------+
6 rows in set (0.00 sec)

mysql> quit
Bye

基本命令操作:

InfiniDB> startSystem
startsystem   Tue Jul 15 10:27:14 2014
   System being started, please wait...
   Successful start of System

InfiniDB> getSystemStatus
getsystemstatus   Tue Jul 15 10:29:57 2014

System calpont-1

System and Module statuses

Component     Status                       Last Status Change
------------  --------------------------   ------------------------
System        ACTIVE                       Tue Jul 15 10:28:15 2014

Module pm1    ACTIVE                       Tue Jul 15 10:28:10 2014

getProcessStatus
InfiniDB> getProcessStatus
getprocessstatus   Tue Jul 15 10:30:16 2014

Calpont Process statuses

Process             Module    Status            Last Status Change        Process ID
------------------  ------    ---------------   ------------------------  ----------
ProcessMonitor      pm1       ACTIVE            Tue Jul 15 10:09:40 2014       27747
ProcessManager      pm1       ACTIVE            Tue Jul 15 10:09:46 2014       27809
SNMPTrapDaemon      pm1       ACTIVE            Tue Jul 15 10:09:56 2014       28057
DBRMControllerNode  pm1       ACTIVE            Tue Jul 15 10:27:26 2014       30293
ServerMonitor       pm1       ACTIVE            Tue Jul 15 10:27:29 2014       30311
DBRMWorkerNode      pm1       ACTIVE            Tue Jul 15 10:27:33 2014       30325
DecomSvr            pm1       ACTIVE            Tue Jul 15 10:27:40 2014       30405
PrimProc            pm1       ACTIVE            Tue Jul 15 10:27:45 2014       30417
ExeMgr              pm1       ACTIVE            Tue Jul 15 10:27:52 2014       30469
WriteEngineServer   pm1       ACTIVE            Tue Jul 15 10:27:59 2014       30522
DDLProc             pm1       ACTIVE            Tue Jul 15 10:28:06 2014       30544
DMLProc             pm1       ACTIVE            Tue Jul 15 10:28:14 2014       30584
mysqld              pm1       ACTIVE            Tue Jul 15 10:27:20 2014       30249
InfiniDB> 


getModuleConfig

InfiniDB> getModuleConfig
getmoduleconfig   Tue Jul 15 10:30:32 2014

Module Name Configuration

Module 'pm1' Configuration information

ModuleType = pm
ModuleDesc = Performance Module #1
ModuleIPAdd NIC ID 1 = 127.0.0.1
ModuleHostName NIC ID 1 = localhost
DBRootIDs assigned  = 1

getmoduletype

getmoduletypeconfig   Tue Jul 15 10:30:44 2014

Module Type Configuration

ModuleType 'pm' Configuration information

ModuleDesc = Performance Module
RunType = SIMPLEX
ModuleCount = 1
ModuleHostName and ModuleIPAddr for NIC ID 1 on  module 'pm1' = localhost , 127.0.0.1
DBRootIDs assigned to module 'pm1' = 1
ModuleCPUCriticalThreshold % = 0
ModuleCPUMajorThreshold % = 0
ModuleCPUMinorThreshold % = 0
ModuleCPUMinorClearThreshold % = 0
ModuleDiskCriticalThreshold % = 90
ModuleDiskMajorThreshold % = 80
ModuleDiskMinorThreshold % = 70
ModuleMemCriticalThreshold % = 90
ModuleMemMajorThreshold % = 0
ModuleMemMinorThreshold % = 0
ModuleSwapCriticalThreshold % = 90
ModuleSwapMajorThreshold % = 80
ModuleSwapMinorThreshold % = 70
ModuleDiskMonitorFileSystem#1 = /

InfiniDB>
 
getActiveAlarms

InfiniDB> getActiveAlarms
getactivealarms   Tue Jul 15 10:31:12 2014

Active Alarm List:

getAlarmHistory today
getAlarmHistory 20070923


 getmodulecpuusers module_ID

getmodulecpuusers pm1

InfiniDB> getmodulecpuusers pm1
getmodulecpuusers   Tue Jul 15 10:31:43 2014

Module 'pm1' Top CPU Users

Process             CPU Usage %
-----------------   -----------
init                     0 
 
getsystemcpuusers

InfiniDB> getsystemcpuusers
getsystemcpuusers   Tue Jul 15 10:32:05 2014

System Process Top CPU Users per Module

Module 'pm1' Top CPU Users

Process             CPU Usage %
-----------------   -----------
ProcMon                  1  
 
getSystemConfig

InfiniDB> getSystemConfig
getsystemconfig   Tue Jul 15 10:32:21 2014

System Configuration

SystemName = calpont-1
SoftwareVersion = 4.6.0
SoftwareRelease = 1
ParentOAMModuleName = pm1
StandbyOAMModuleName = unassigned
NMSIPAddr = 0.0.0.0
ModuleHeartbeatPeriod = 10
ModuleHeartbeatCount = 3
DBRootCount = 1
DBRoot1 = /usr/local/Calpont/data1
DBRMRoot = /usr/local/Calpont/data1/systemFiles/dbrm/BRM_saves
ExternalCriticalThreshold = 90
ExternalMajorThreshold = 80
ExternalMinorThreshold = 70
MaxConcurrentTransactions = 1000
SharedMemoryTmpFile = /usr/local/Calpont/data1/systemFiles/dbrm/CalpontShm
NumVersionBufferFiles = 0
VersionBufferFileSize = 1
OIDBitmapFile = /usr/local/Calpont/data1/systemFiles/dbrm/oidbitmap
FirstOID = 3000
TransactionArchivePeriod = 10

InfiniDB 系统优化建议:

Performance Optimization Considerations
There are optimizations that should be made when using InfiniDB listed below.  As always, please consult with your network administrator for additional optimization con­siderations for your specific installation needs.
 
·      Disk I/O Scheduler - should be changed from ‘cfq’ to ‘deadline’ for each Data­base Partition LUN on the Performance Module.  Modify /etc/rc.d/rc.local to include the following:
 
for scsi_dev in <each mapped drive letter>: do
   echo deadline > /sys/block/$scsi_dev/queue/scheduler
done
 
·         GbE NIC settings:
o   Modify /etc/rc.d/rc.local to include the following:
/sbin/ifconfig eth0 txqueuelen 10000
 
o   Modify /etc/sysctl.conf for the following:
# increase TCP max buffer size
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
# increase Linux autotuning TCP buffer limits
# min, default, and max number of bytes to use
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
# don't cache ssthresh from previous connection
net.ipv4.tcp_no_metrics_save = 1
# recommended to increase this for 1000 BT or higher
net.core.netdev_max_backlog = 2500
# for 10 GigE, use this
# net.core.netdev_max_backlog = 30000

本文固定链接: https://sudops.com/infinidb-install-config-and-experience.html | 运维速度

该日志由 u2 于2014年07月15日发表在 云计算, 数据库 分类下,
原创文章转载请注明: InfiniDB 安装、配置与体验 | 运维速度
关键字:

InfiniDB 安装、配置与体验:目前有1 条留言