Changes between Version 3 and Version 4 of RasdamanStorageBackend


Ignore:
Timestamp:
Dec 30, 2015 5:48:38 AM (21 months ago)
Author:
pbaumann
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • RasdamanStorageBackend

    v3 v4  
    1 == Rasdaman storage backend ==
     1= Rasdaman storage backend =
    22
    33rasdaman community can store array data in two different ways:
     
    551. all in PostgreSQL: arrays in BLOBs, array metadata in tables
    66
    7 As of rasdaman v9.1, by default the first SQLite/Filestorage option is used for array data and metadata, i.e. the configure command by default has the following option:
     7Note: rasdaman enterprise additionally supports access to pre-existing archives of any structure.
     8
     9The array storage location can be chosen during the configuration step by setting `./configure` parameter `--with-default-basedb`  when [wiki:InstallFromSource installing from source]; it is fixed in the RPMs and VMs distributed.
     10
     11Starting with rasdaman v9.1, file system storage is the default to ease work with rasdaman.
     12
     13== Storing arrays in file system directory ==
     14
     15In this storage variant, a particular directory gets designated to hold rasdaman arrays (maintained by rasdaman) and their metadata (maintained by an SQLite instance embedded in rasdaman).
     16
     17The recommended directory location is `$RMANHOME/data/`.
     18Administrators may configure this to be a symbolic link to some other location, possibly another filesystem than where `$RMANHOME`resides (so as to keep programs and data separate).
     19Further (not recommended) ways of changing the default directory are:
     20* by `./configure` parameter `--with-filedatadir=PATH` where PATH is an absolute path
     21* by setting variable `$RASDATA` which must be set in the environment of the rasdaman executables
     22
     23The data directory will contain the named database, identified by a subdirectory of the same name. Currently only one database is supported, but this may change in future.
     24Default database name, assumed by all tools, is `RASBASE`. While it can be changed this is not recommended as all tools will need to receive an extra parameter indicating the changed name.
     25
     26The database name needs to be communicated to rasdaman in the `$RMANHOME/etc/rasmgr.conf` configuration file. Specifically, the connect string should be an absolute path to the RASBASE database (note that variables are not recognized in the script, therefore `$RMANHOME`has to be spelt out). Assuming the default values described above and a rasdaman installation directory of `$RMANHOME=/opt/rasdaman`, the corresponding configuration line might look like this:
    827{{{
    928#!sh
    10 ./configure ... --with-default-basedb=sqlite
     29define dbh rasdaman_host -connect /opt/rasdaman/data/RASBASE
    1130}}}
    12 In `rasmgr.conf` the connect string should be an absolute path to the RASBASE database, which should normally be `$RMANHOME/data/RASBASE (automatically used in the create_db.sh script), e.g.
    13 {{{
    14 #!sh
    15 define dbh rasdaman_host -connect /path/rasdaman_install/data/RASBASE
    16 }}}
    17 The directory where the BLOB/tile files are stored is normally `$RMANHOME/data`. This data directory (must be an absolute path) can be set
    18 * by a `./configure` parameter `--with-filedatadir=PATH`
    19 * by setting an environment variable `RASDATA`
     31Such an entry gets established automatically when running the `create_db.sh` script.
    2032
    21 To use PostgreSQL instead of SQLite/Filestorage use
     33Again, for a customized data directory location it is recommended to use a symbolic link, but not modify defaults.
     34
     35'''Note:''' Postgresql currently is still needed by petascope and (deprecated) rasgeo. This dependency is planned to be removed in future.
     36
     37== Storing arrays in PostgreSQL BLOBs ==
     38
     39In this storage variant, rasdaman arrays and their metadata are stored in a PostgreSQL database.
     40
     41To deploy rasdaman for using PostgreSQL use
    2242{{{
    2343#!sh
     
    2545}}}
    2646
    27 In `rasmgr.conf` the connect string should be the name of the RASBASE database; the `create_db.sh` script sets this automatically to `RASBASE`, it is recommended to keep this value because otherwise this name has to be changed in many places.
     47In `$RMANHOME/etc/rasmgr.conf` the connect string should be the name of the RASBASE database:
    2848{{{
    2949#!sh
     
    3151}}}
    3252
    33 '''Note:''' ''Postgresql is still currently needed however by petascope and rasimport.''
     53The `create_db.sh` script sets this automatically.
     54It is recommended to keep this value because otherwise this name has to be changed in many places.
     55