jBASE
True 64-bit database
jBASE 5 is a true 64-bit MultiValue database. Whereas other MultiValue databases might have added 64-bit addressing to overcome 2GB file sizing, jBASE 5 is a complete 64-bit implementation of the database. There are therefore no hidden 32-bit addressing limitations and complex and large applications can be handled with ease. The upgrade path for all jBASE 4 customers is very straightforward.
Native to the Operating System - No Virtual Machine
The fact that jBASE is tightly interwoven with the operating system is a huge plus from a reliability standpoint. Once an application has been moved to jBASE it then executes directly upon the base operating system. For example on Microsoft’s Windows operating systems, users log on as Windows users and devices are managed by Windows. Because jBASE operates at the operating system level, it is more resilient if an inexperienced user might take an inappropriate action. The fact that it is integrated with the host operating system ensures that new technologies are supported which allows many options relating to future direction.
Thread Safe
jBASE is the only thread safe MultiValue database. This functionality is ideal for the customer developing a jBC (BASIC) or Java application where the features of the language can exploit the multi-threaded structure of jBASE.
Compiled jQL
When compiled, a jBC (BASIC) routine is simply a piece of executable code that can be called form any other piece of executable code capable of calling external routines. If you have a jBC code that is responsible for the routing of your fleet of trucks or for determining the best way to place goods in a warehouse or for assessing risk on a stock portfolio, then you can now call it from any other environment – Java, VB.NET, C or C++ or even your favorite IDE.
Choice of Development Language
The language built in to jBASE, BASIC (jBC) is a dialect of BASIC and combines the power of stored procedure languages with a fully-fledged development language. A jBASE application can be developed in most of the modern programming languages. Our middleware comprises tools that make this easy from the most common development environments. For more esoteric toolsets, the various connectivity options mean that whatever tool you use, you can get at your data.
JAVA support
There is support for all levels of Java programming in jBASE 5. The well established jRCS Java product and the new jRemote Java product provide a choice of functionality depending on the requirement. At the enterprise level Java EE systems development can be satisfied by the new and exciting jRemote Inbound JCA which allows the calling of application server components from jBASE BASIC, jBC, while the jRemote Outbound Resource Adapter is a JCA compliant resource adapter that allows JEE applications to access a jBASE Enterprise Information System (EIS) within a transactional context. All of this is complemented by a new JDBC 2.0 driver.
Microsoft Support
At the first level continuity for existing and legacy ActiveX programs is provided in jBASE 5 by jRCS. The continued support for this code is well recognized in the latest release of the database. The well established jRCS .NET product and the new jRemote C# product provide a choice of functionality depending on the requirement for straightforward applications support. At the enterprise level, where the demands are much more demanding, the benefits of the mv.NET suite soon become apparent. Core Objects provides the base, but extensive Class Library, together with sophisticated Session Management while Solution Objects delivers the true Enterprise Class applications, WinForm and WebForm, development facility. Adapter Objects provides a full ADO.NET managed data provider interface for the SQL aware developer.
Resilient and Automatically Resizable File System
The jBASE file system supports large files (2GB file limitations exist on some 32-bit MultiValue databases) and in jBASE 5 a new resilient file type, jR, has been introduced to eliminate the possibility of file corruption where an unexpected event could cause a system stop or shutdown. In a resilient file, data is built up in an area of the file and flushed to disk and only once it is on disk is a pointer updated to the new data structure.
As well as being resilient, jR files are also resize automatically. This is achieved by separating the location of the data from the record key of the file. This means that the structure of the underlying data can expand without having to redistribute all the data as was the case with previous hash files.
Data at Rest Encryption
Users have access to the optional DREM (Data Encryption at Rest) module, a powerful cross-platform jEDI that supports 128-bit encryption and decryption of data at the file system level where full data security is required and all with no changes to application code.
SQL Support
One of the main benefits of providing a SQL engine for jBASE is that the database can be used with external tools and APIs. SQL has many benefits that can be applied to the jBASE MultiValue, hierarchical, database. In particular with jBASE, SQL allows users to query data where there might be tables within tables and no primary-key/foreign key relationship (these relationships are defined in the dictionary). This is an extreme advantage not available in most other RDBMS systems. As well as integration with external API’s the jBASE SQL engine also allows SQL to be used to interact directly with jBASE files. For example SQL can be used wherever jQL is used currently while the rich set of SQL functions allows the creation and manipulation of data tables e.g. inserting updating and deleting records.
JDBC and ODBC Connectors
A JDBC connector allows external applications written in Java to retrieve data from jBASE via this industry standard interface. An ODBC Connector implementing the OpenDatabase Connectivity (ODBC) 3.0 API has also been developed. It supports a driver manager based and Unicode compliant interface featuring support for transactions and the calling of stored procedures.
Database Independence
Although jBASE comes with a highly powerful built-in multi-dimensional database, sometimes users prefer to store data in their database of choice and so one of the fundamental design features of jBASE is database independence. Whichever database you wish to store your data in, jBASE can read and write to it through an open, published interface, jEDI. Off the shelf connectivity is available for Oracle, IBM’s DB2 and Microsoft’s SQL Server and an ODBC driver is available for other databases.
Platform Independence
Since inception, jBASE has been committed to providing platform independent software. Today, it will run on most commercially viable hardware and operating system platforms. This ability to run on different platforms has been designed into the product from a very early stage. This means that you are free to choose which hardware and operating system you want your applications to run on and, if required, jBASE can also support a mixture.
Full support for Windows, Linux and Unix
Not only was jBASE the industry’s first, database-independent solution, it was also the first to be available across all popular, commercially viable platforms. Today, jBASE runs on all of the most widely used hardware and operating systems, with the inherent ability to port to different platforms designed into the product in the very early stages.
Superior Transaction Journaling
Transaction Journaling on jBASE has been refined over many years to efficiently deliver the facility to log database updates to either files or disk partitions. This optional module enables a log of updates that can be used to greatly reduce the time for database recovery in the event a system or application failure.
The optional Dataguard module takes jBASE Transaction Journaling to another level with applications that have been developed using the jBC transaction based functionality. With the demand for high availability systems this new jBASE 5 functionality is going to be a key factor for all new applications development. The new Checkpointing feature enables jBASE 5 to record activity in the database is at a known point at that specific time. The recovery modules can refer to these checkpoints to keep the system in a robust state. Also Checkpointing enables jBASE 5 to automatically warmstart recover from such major events as power failures in a similar way to mainstream RDBMS products.
Checkpointing also brings benefits to high availability systems where minimum time is now available for off line system backup and restore operations. The new online backup negates the need for users to be taken offline for backing up the database content while system usage continues. Backup and restore can be performed without the need to shutdown activity on the database server. The backup will be a complete copy of the database at the point in time when the backup process finished. This backup is guaranteed to be in a consistent state because of the Checkpointing feature. The Restore command can also be used on a live system.
Connectivity
People expect to be able to get at their data from all kinds of environments and jBASE offers connectivity options that satisfy every mainstream requirement for getting to your data. Whether you just want to pull some data into your desktop applications using ODBC, pull data into a Java or .NET program, or use a Web Service to exchange data in XML format, jBASE makes it easy.
Internationalization
Deploy your application in different countries. Using the rules set down by the International Standards Organization and policed by the Unicode Organization (www.unicode.org), jBASE provides internationalization for your applications. The jBASE product knows what character denotes the decimal point wherever your application is deployed. It knows the proper character sort sequence in Japan and can work out how to write a date in Korea.
Future Proof
The combination of powerful tools and a powerful database, together with truly open middleware means that, should you decide on jBASE for your application, you can rest assured in the knowledge that your investment is protected. Your data can be stored in jBASE or any RDBMS of file system you wish. Whatever the skill set of the developers in your organization, whichever technology you need to use, you can develop using jBASE safe in the knowledge it will future proof your application.