Skip to content
Database Blocks Explorer for InterSystems Caché
JavaScript ObjectScript CSS Dockerfile Shell HTML Makefile
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.


Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/workflows ci Mar 21, 2020
server some fixes Mar 24, 2020
.dockerignore Solid Docker image for the whole application Sep 8, 2018
.gitignore generate blocks map as a picture Mar 22, 2020
docker-compose.yml some fixed in docker-compose Mar 26, 2020
makefile some fixes Mar 24, 2020
module.xml updated zpm package Mar 26, 2020

Blocks Explorer

Database Blocks Explorer for InterSystems IRIS/Caché

Key features

Tree explorer
  • Shows tree of database blocks;
  • Export tree as SVG or PNG image;
  • Shows every node in the block;
  • Open any block just by clicking on node in parent block;
  • Reload block info by clicking at the same node second time;
  • Zoom in and out, fit and navigator;
  • Easy way to switch between view modes (tree/map);
Fragmentation map
  • Shows every block with the same colour for every globals;
  • Legend for globals;

Run with Docker

You need license key for Caché or IRIS on RedHat systems.

docker run -d --name blocksexplorer --rm \
       -p 57772:57772 \
       -v /opt/some/database/for/test:/opt/blocks/db/test \
       -v ~/cache.key:/usr/cachesys/mgr/cache.key \

Generate blocks map as image file in out directory

docker run -it --rm \
       -v /opt/some/database/for/test:/opt/blocks/db/test \
       -v `pwd`out:/opt/blocks/out \
       daimor/blocksexplorer:cache generate
docker run -d --name blocksexplorer --rm \
       -p 52773:52773 \
       -v /opt/some/database/for/test:/opt/blocks/db/test \

Generate blocks map as image file in out directory

docker run -it --rm \
       -v /opt/some/database/for/test:/opt/blocks/db/test \
       -v `pwd`out:/opt/blocks/out \
       daimor/blocksexplorer:iris generate

Development mode

Run with docker-compose, will start web part with hot reloading.

docker-compose up -d --build

It will start server base on IRIS To start on Caché use this command

MODE=cache docker-compose up -d --build

By default running on 80 port. To start using it, just open http://localhost/


Tree Map

CLI mode

Using prebuild docker image gives a way to generate a picture for any IRIS or Caché database. Use docker image daimor/blocksexplorer:iris for IRIS or daimor/blocksexplorer:cache for Caché Databases. Those images accepts command generate with arguments

  • path to the tested databases inside a container, by default /db, can be omited
  • cellSize - size of the cell in pixels, where each cell represents particular database's block, by default 1
  • cellSpace - sorrounding space between cell, by default 0
  • showFill - sign to show how much block fill by data, by default 0

This tool generates a square picture in folder /out inside a container in formats BMP and PNG.

So, with command like this

docker run -v `pwd`/out:/out daimor/blocksexplorer:iris generate 20 1 1

It will generate this picture for an empty database.

TESTDB With a lighter color visible that most of the blocks just empty.

The same test empty database, but with showFill=0

docker run -v `pwd`/out:/out daimor/blocksexplorer:iris generate 20 1 0

Blocks have different colors but just for globals, and does not show how much it fill.


More examples

docker run -v `pwd`/out:/out daimor/blocksexplorer:iris generate /usr/irissys/mgr/enslib 5 1



docker run -v `pwd`/out:/out daimor/blocksexplorer:iris generate /usr/irissys/mgr/ 5 1 1


For large databases, would not recommend to use have too big cellSize.

Useful Links

There you can find more about database internals, and how to use this tool.

You can’t perform that action at this time.