D3 and mvBase

 View Only



    Posted 06-02-2020 16:11

    This is a guest blog post from Ross Reichardt and was previously shared on the Rocket Blog.

    Well, the wait is over. Not Games of Thrones, as that has come and gone, but I haven't seen the final season yet, so no spoilers please! No, the wait I'm talking about is the wait for the next release of D3 – release 10.3.1.

    At the recent Business Forum events held in Australia in May, I had the opportunity to present the new release of D3 and show some of the new features. There is quite a lot to talk about too. Here is a broad brush look at what is coming:

    • Better performance
    • mvBase upgrade
    • mvWorkstation
    • Python (yeah!!)

    In this post, I just want to cover these areas briefly but if you'd like to know more detail about any of these, please send me a message or leave a comment on this post and tell me what you'd like more details about. Now, let's talk about these areas one at a time.


    For those customers running mvBase, this release of D3 provides an upgrade path to the various features of D3 that are not offered by mvBase. More of the mvBase upgrade later.

    In doing the engineering work to provide an mvBase upgrade path to D3, the Rocket engineers found some areas where the performance of D3 was lacking. In some cases, D3 was slower than mvBase and with this release a lot of work has been done to improve D3 performance in four main areas:

    • FSI
    • Virtual
    • ODBC
    • Unix platforms

    As you can see from the list above, the performance improvements have been made across a number of areas of D3 and platforms. I won't detail all the performance improvements but they cover a variety of areas such as FSI preselection, multithreading in the FSI, build optimisation, ODBC index utilization, non-raw devices on the UNIX platform and more.

    The result is that D3 performance across all platforms has improved significantly in D3 10.3.1 and to gain the benefit of the improvements, all that needs to be done is to upgrade to the 10.3.1 release.


    As I mentioned earlier, release 10.3.1 offers an upgrade path for mvBase users onto the D3 platform with the greater number of features. Some of the features that are thus available to mvBase customers are:

    • Access to relational databases
    • HA/DR (hot backup replication)
    • Interoperability
    • Python support
    • Multiple platforms
    • Connection pooling
    • Security
    • Open systems interface
    • And more…

    Upgrading to this release is a way of bringing a lot more features to mvBase customers but it isn't a one way deal. In offering an upgrade path to mvBase customers, Rocket needed to ensure that existing mvBase features were still available. That means that there has been a lot of work done to bring mvBase features into D3 and that has relevance for existing D3 customers.


    Some of the mvBase features brought into D3 are additional Basic and TCL commands to ensure compatibility for existing mvBase applications being migrated to D3. That is of interest to mvBase people but what do existing D3 users get from the mvBase features?

    The major feature to be brought across to D3 is the mvWorkstation – previously known as the mvBase Workstation – which is a very interesting feature bringing a lot of extra capability to D3. Things such as a local telnet server, local file interaction and the ability to print to local printers are now possible on D3 10.3.1 thanks to the mvWorkstation. It's really quite cool (am I allowed to say that?)!

    The mvWorkstation is a client piece to the D3 server and must run on Windows, however it can communicate to a D3 server running on any of the supported platforms.

    So, why would you use it?

    The first use case is printers. mvWorkstation allows you to add printers that are local to the machine where mvWorkstation is running to be attached to D3. This is different from the traditional printer setup where printers (either local or network) need to be setup on the D3 server.

    The second reason you might like this is because of local file access. Using the mvWorkstation, you can get access to the file system of the Windows machine that mvWorkstation is running on. Used in conjunction with the WINCOPY TCL command and the various Basic 'U' commands, the mvWorkstation allows you to create, read and write files on the local Windows machine and copy D3 data into those local files.

    The third reason (how's the excitement level?) is that using the Basic UEXECUTE statement, applications local to the mvWorkstation machine can be started. That means after creating your .CSV file full of data extracted from D3 and saving it to the local workstation, you can then open it in Excel via the UEXECUTE statement. Nice!


    Finally but certainly not last, is Python. Adding to the excitement and interest created by the addition of Python to the U2 products a year or so ago, Rocket are now set to add Python to D3. This fantastic development offers some real benefits for D3 developers and customers.

    One benefit is an opportunity to attract younger developers. As one of the most popular languages in use today, Python is taught in Universities and there are many young developers who are comfortable with the language.

    Another benefit is the extensibility of the language. Central to Python is the Python Package Index, or PyPI, which is a repository of packages to help extend the features of Python. There are over 180,000 such packages and counting!

    Some of these packages are related to data science, so if you need to add data science features to your D3-based application, Python is now a great choice! The same applies for artificial intelligence, natural language processing, XML and/or JSON processing and many more! Python offers a way of extending your D3 based application in so many different ways.

    The release of D3 10.3.1 will be a great step forward for D3, not just in the added performance but with the extra functionality of mvWorkstation and Python. Please let me know in the comments section what you think of these new features of D3. I'd love to hear your thoughts.

    Yes, it's an exciting time for D3 and the wait is over.

    Tim Rude
    Rocket Software