Frequently Asked Questions

  • 1
    Answered

    What happens when my license expires?

    Leon Mergen · 0 · Posted

    Your QuasarDB license expires soon and you want to know how this affects operations.

    When your quasardb license expires:

    1. You may continue to use quasardb.
    2. Any running qdbd daemons will function normally.
    3. Any new qdbd daemons you start will fail to boot.
    4. You are not eligible for upgrades or dedicated assistance.
    5. You may report bugs at support@quasardb.net

    Please contact your Quasardb representative to renew your license.

  • 1
    Answered

    Do I need a license to write a client?

    Leon Mergen · 0 · Posted

    No license is required to write a quasardb client, but the software’s documentation and credits must state the following “This software features quasardb, a Quasardb SAS technology. All rights reserved.”. A client is software that connects to a remote or local quasardb server running as a separate instance. If your product needs to include the server as well, a license is required. Contact us for more information.

  • 1
    Answered

    How can I evaluate QuasarDB ?

    Leon Mergen · 0 · Posted

    You can evaluate or purchase QuasarDB by completing the form at https://www.quasardb.net/download.html . A QuasarDB representative will contact you shortly after.

  • 1
    Answered

    Does QuasarDB use open-source libraries ?

    Leon Mergen · 0 · Posted

    Yes it does! Here is the list: Boost Datejs hiredis LevelDB javabi-sizeof JQuery Kryo Intel Threading Building Blocks (commercial license) memcachepp Snappy If you find the list to be inaccurate or suspect a license violation, mail us at support@quasardb.net.

  • 1
    Answered

    How do I add data to my cluster ?

    Leon Mergen · 0 · Posted

    Data in the cluster is set, stored, and retrieved using key-value pairs.

    To add an entry to your cluster:

    • Using qdb_shell
      • put command
    • Write a client using the Quasardb API and one of the following functions:
      • C: qdb_put()
      • C++: handle::put()
      • Python: RawClient.put()
      • C#: Handle::put()
      • Java: Quasardb::put()
      • PHP: QdbCluster::put()

    To overwrite an existing entry in your cluster:

    • Using qdb_shell
      • update command
    • Write a client using the Quasardb API and one of the following functions:
      • C: qdb_update()
      • C++: handle::update()
      • Python: RawClient.update()
      • C#: Handle::update()
      • Java: Quasardb::update()
      • PHP: QdbCluster::update()
  • 1
    Answered

    How do I remove data from my cluster ?

    Leon Mergen · 0 · Posted

    Data in the cluster is set, stored, and retrieved using key-value pairs. To add an entry to your cluster: Using qdb_shell remove command Write a client using the Quasardb API and one of the following functions: C: qdb_remove() C++: handle::remove() Python: RawClient.remove() C#: Handle::remove() Java: Quasardb::remove() PHP: QdbCluster::remove()

  • 1
    Answered

    How do I quickly run large sets of operations ?

    Leon Mergen · 0 · Posted

    While entries can be created, read, updated, and deleted separately, it may be useful to do perform a series of operations on a large collection of entries at once. Batch operations are not necessarily performed in order. A failure of one operation in the batch will not roll back the other operations, which depending on the client and set of operations, may cause unexpected side effects. To quickly run large sets of commands on your cluster: Write a client using the Quasardb API and the following functions: C: Create an array of qdb_init_operations, assign cluster operations, then call qdb_run_batch. C++:

  • 1
    Answered

    How do I search for data in my cluster ?

    Leon Mergen · 0 · Posted

    Quasardb 1.x supports a prefix-based search for looking up entries by their aliases.

    To search for entries in your cluster:

    • Using qdb_shell
      • prefix_get command
    • Write a client using the Quasardb API and one of the following functions:
      • C: qdb_prefix_get()
      • C++: handle::prefix_get()
      • Python: Client.prefix_get()
      • C#: Handle.prefix_get()
      • Java: Quasardb.startsWith()
  • 1
    Answered

    What is the largest size for a single entity?

    Leon Mergen · 0 · Posted

    Unless otherwise configured, an entry cannot be larger than the largest contiguous amount of memory the operating system may allocate. On most operating systems, this is close to the amount of physical memory (RAM) available on the server.

  • 1
    Answered

    Can I use multiple operating systems in a cluster ?

    Leon Mergen · 0 · Posted

    QuasarDB supports multiple operating systems in a single cluster, as long as they all use the same bit (i.e. 32bit, 64bit). Keep in mind that while this is technically possible, for troubleshooting reasons we encourage homogeneity in a cluster.

  • 1
    Answered

    Where can I download QuasarDB ?

    Leon Mergen · 0 · Posted

    You can download QuasarDB at http://download.quasardb.net Please note that running QuasarDB without using a license enables the community edition, which is constrained to a single node and 4GB of RAM. For more information on how to license QuasarDB, please see How can I evaluate QuasarDB ?

  • 1
    Answered

    How do I set up a cluster ?

    Leon Mergen · 0 · Posted

    Building a cluster for the first time is easy using the QuasarDB configuration generator. Download the latest version of the QuasarDB server To generate a config file, you can run the command: * --address is the address and port that node will listen on (default: 127.0.0.1:2836) * --advertised-address is the address and port that node will advertise to other cluster nodes (default: 127.0.0.1:2836) * --peer is the address and port of any other node in the cluster, used for bootstraping the cluster * --id is the id of that node in the cluster, read more about node id schema or just use i/n where i

  • 1
    Answered

    How do I add a node to a cluster ?

    Leon Mergen · 0 · Posted

    Nodes can be added to the cluster at any time, but it is best done when cluster traffic is low. Copy a config file from an existing node or create a new one as described in our quasardb cluster set-up guide. Ensure the config file's local.chord.boostraping_peers option is set to the address of another node in the cluster and that the format for local.chord.node_id is correct (--peer and --id options in qdbd --gen-config) Copy the config file to the qdbd folder on the new node. Start the quasardb daemon on the new node Your node should now join the cluster,

  • 1
    Answered

    How do I monitor a cluster ?

    Leon Mergen · 0 · Posted

    The easiest way to monitor a cluster is using the quasardb web server, qdb_httpd, which provides two services:

    • An HTML5 GUI that shows an overview of cluster and node activity
    • A RESTful API that can translate entries from the cluster into JSON or JSONP.

    To set up the web bridge:

    1. Create a new default web bridge configuration file using "qdb_httpd --gen-config > httpd_config.conf"
    2. Edit the configuration file.
    3. Set the "listen_on" value to a valid, string-quoted, IP address and port pair. Example: "192.168.1.100:8080".
    4. Set the "remote_node" value to a the IP address and port pair of a node in the cluster.
  • 1
    Answered

    How do I upgrade to the latest version of QuasarDB ?

    Leon Mergen · 0 · Posted

    If upgrading to a new patch version (e.g. 1.1.0 to 1.1.1): For each node in the cluster: Shut down the qdb_httpd web server on the node, if applicable. Shut down the qdbd daemon on the node. Read the qdbd daemon log file to verify the daemon closed properly and no error occurred. Verify the operating system shows the qdbd daemon is no longer running. Uninstall the old version of quasardb. Install the new version of quasardb. Copy the new license file and configuration file to the new installation location, if applicable. Start the qdbd daemon on the node. Start the

  • 1
    Answered

    How long are QuasarDB versions compatible ?

    Leon Mergen · 0 · Posted

    Quasardb is versioned using a MAJOR.MINOR.PATCH system. All patch notes can be found at the Change Log. Changes in patch level, such as 1.1.0 to 1.1.1, are maintenance releases. The database and client API are 100% backwards compatible with previous versions. Changes in minor level, such as 1.0.0 to 1.1.0, add features to quasardb. The database and client API are 100% backwards compatible with previous versions. Changes in major level, such as 1.0.0 to 2.0.0, add significant features to quasardb. The database and client API may not be backwards compatible. Upgrades may require manual intervention.