v1.10

Document

How to Start SequoiaDB

Basic Operation

Data Model

Database Management

Aggregation

Index

Replication

Cluster

Connector

Reference

Development

Release Note

FAQ

  • Content
  • Comments
  • History

Deployment

Please go to official website to download the appropriate version of SequoiaDB.

Requirement Requirement Suggestion
CPU Support the following processor
  • x86(Intel Pentium、Intel Xeon and AMD) 32-bit Intel and AMD processor
  • X64(64-bit AMD64 and Intel EM64T processor)
  • PowerPC7 or PowerPC7+ processor
Suggest to use X64(64-bit AMD64 and Intel EM64T processor ) or PowerPC processor
Disk At least 10GB More than 100GB
Memory More than 1GB More than 2GB
Network card At least 1 network card At least 1GE network card


Type of system List of system
Linux
  • Red Hat Enterprise Linux (RHEL) 6
  • SUSE Linux Enterprise Server (SLES) 11 Service Pack 1
  • SUSE Linux Enterprise Server (SLES) 11 Service Pack 2
  • Ubuntu 12
  • CentOS 6
Power PC Linux
  • Red Hat Enterprise Linux (RHEL) 6
  • SUSE Linux Enterprise Server (SLES) 11 Service Pack 1
  • SUSE Linux Enterprise Server (SLES) 11 Service Pack 2

Linux System requirement

  • System configuration requirement
    Configuration Item Configuration method Verification method
    Set hostname 1. Log in with root privileges, perform hostname sdbserver1(sdbserver1 hostname can be modified as needed);
    • For SUSE:

      2. Open the /etc/HOSTNAME file;

      vi /etc/HOSTNAME

      3. Modify file contents, configured as a hostname;

      sdbserver1 (hostname)

      4. Press :wq to save and exit;

    • For RedHat:

      2. Open the /etc/sysconfig/network file;

      vi /etc/sysconfig/network

      3. HOSTNAME line will modify the HOSTNAME=sdbserver1, which sdbserver1 new hostname;

      4. Press :wq to save and exit;

    • For Ubuntu:

      2. Open the /etc/hostname file;

      vi /etc/hostname

      3. Modify file contents, configured as a hostname;

      sdbserver1

      4. Press :wq to save and exit;
    Execute hostname command to verify whether the information is printed "sdbserver1"
    Enable server nodes to visit each other through hostname
    • Log in the system in the role of root, open "/etc/hosts" with the command "vi /etc/hosts"
    • Alter "/etc/hosts", set the mapping between hostname of server node and IP in this file.

      192.168.20.200 sdbserver1

      192.168.20.201 sdbserver2

      192.168.20.202 sdbserver3

    • Save and exit
    Check with "ping sdbserver1" Check with "ping sdbserver2"
  • Close the firewall

    Configuration Item Configuration method Verification method
    Close the firewall Close the firewall operation, need administrator privileges.
    • For SUSE:

      1. SuSEfirewall2 stop;

      2. chkconfig SuSEfirewall2_setup;

    • For RedHat:

      1. service iptables stop;

      2. chkconfig iptables off;

    • For Ubuntu:

      1. ufw disable;

    • For SUSE:

      chkconfig -list | grep fire;

    • For RedHat:

      service iptables status;

    • For Ubuntu:

      ufw status;

Note: Each database server should be configured.

Recommended configuration in Linux

  • Adjusting ulimit

    modify the configuration file "/etc/security/limits.conf ":

    #* soft core 0 * soft data unlimited * soft fsize unlimited * soft rss unlimited * soft as unlimited

    Params Description:

    core: The "core" file is generated as the time of database failure to troubleshooting, you had better close the system for advice.

    data: The size of data memory that database processes allow to allocate.

    fsize: The size of file that database processes allow to address.

    rss: The max size of resident set that database processes allowed.

    as: The max amount of virtual memory addressing space that database processes allowed.

    Set in the configuration file in /etc/security/limits.d/90-nproc.conf:
    #* soft nproc unlimited

    Explanation of parameters:

    nproc: The database allows the maximum number of threads limits; Note:

    1. Each database server should be configured.

    2. It need to relogin after changing to be effective.

  • Adjusting kernel params

    1. Using the following command to output the current configuration of vm,and be placed on file.

    cat /proc/sys/vm/swappiness cat /proc/sys/vm/dirty_ratio cat /proc/sys/vm/dirty_background_ratio cat /proc/sys/vm/dirty_expire_centisecs cat /proc/sys/vm/vfs_cache_pressure cat /proc/sys/vm/min_free_kbytes
    2. Adding the following params to the file of "/etc/sysctl.conf" to adjust kernel params.
    vm.swappiness = 0 vm.dirty_ratio = 100 vm.dirty_background_ratio = 40 vm.dirty_expire_centisecs = 3000 vm.vfs_cache_pressure = 200 vm.min_free_kbytes = <8% of physical memory size, unit is KB> 
    Note: When the available physical memory size of database isn't enough 8GB, doesn't need to set "vm.swappiness = 0". The dirty parameter is only recommended values, the system settings press principle (the control system of flush process using only the dirty page timeout mechanism to refresh the new dirty page, instead of using a dirty page refresh ratio overruns dirty pages) set. 3. Executing the following command to be effective.
    /sbin/sysctl -p
    Note: Each database server should be configured.
  • Database directory structure

    The users had better put the directory of data, index, and log in different physical disks, to reduce the competition between sequential I/O and random I/O.

High-availability deployment fits applications that require high reliability, but low amount of data and low total throughput. In this mode, there are catalog nodes and data nodes in three physical machines.A replset is consisted of 3 data nodes. Every copy cluster is consisted of 3 catalog nodes. Coord nodes and applications should be deployed on different servers or the same database server. The advantage of this mode is high reliability. If any server breaks down, all data will be able to be read or written.But the capacity of data is the same with that of a server, and hardware cost is higher.

Easiest deploy is proper to undemanding appliccations that has low requirement to database, small amount of data and low throughput, requiring low reliability. In this mode, SequoiaDB just start one database server process. Application can be put on the same server as database, or deployed in another server.

High-performance deployment fits applications that require high total throughput and high performance, low hardware cost but low reliability. In this mode, there are coord nodes and data nodes in three physical machines.A replset is consisted of 3 coord nodes. Every data node makes up one replset (It contains just one copy). Catalog nodes and applications should be deployed on different servers or the same database server. This mode can make full use of all memory in servers. The total memory capacity is the sum of memeory capacities of 3 servers. But the reliability is low. If any server breaks down, some data will fail to be read or written.

please login to comment.
Latest Comment
  • 2015-02-14

About Us

SequoiaDB is a financial-level distributed database vendor and is the first Chinese database listed in Gartner’s Magic Quadrant OPDBMS report. SequoiaDB has recently released version 3.0.
SequoiaDB is now penetrating the vertical sector Financial Industry quickly and had more than 50 banking clients and hundreds of enterprise customers in industries including government, telecommunication, Internet and IoT.

Beijing:
Tower R, No.8 North Star East Road, Chaoyang District, Beijing,China
Guangzhou:
Tower A, No.22 Qinglan Street, Panyu District, Guangzhou,China
Shenzhen:
Tsing Hua Tech Park, Nanshan District, Shenzhen,China
Tel:400-8038-339
E-mail:contact@sequoiadb.com