Product

Take Control of the Cache Manager

4D v16 introduced a new fully optimized cache manager for the 64-bit product line. 4D v16 R2 is giving power to our advanced 4D developers to take control by themselves!

The cache manager internal algorithm is based on a priority concept associated to each object type to store in the cache memory. By default, the cache manager algorithm assigns a higher priority value for an index than for records. And recently used objects (records or indexes) have a higher priority to remain in the cache than objects that have not been used in the last two days, etc…

Product

Boost your performance with the new cache manager

The 4D v16 version has definitely been designed for better performance and scalability. In addition to major features like preemptive multi-threading, 4D v16 64-bit is embedding a brand new cache manager for a optimized handling of objects in cache memory avoiding any fragmentation issues.

The new cache manager improves the usage of very large cache for modern computers (with 64 or even 128 GB of Cache) allowing to take advantage of low RAM prices to have even large databases fully in memory. It also improves the situation of small cache size with very large data files, by decreasing the amount of unloading memory with increased support of priorities for data objects to be hold or released from cache.

Product

4D Write Pro commands in preemptive processes

With 4D v16, you can improve your database scalability using the new 4D Write Pro commands in preemptive processes.

If you are doing routines for creating or converting documents programmatically – e.g. invoices … you can now do it with preemptive workers as most 4D Write Pro commands are now thread safe!

Product

Go further with Object fields

Object fields introduced with v15 allows unstructured data bases, similar to schemaless database (NoSQL). 4D v16 goes a big step further. Get a dynamic structure for unstructured data… Confused?

Imagine you use an object field to allow your customers to store custom data, where they can create their own fields. This works well and is one of the most interesting reasons for using an object field. The problem is, how to allow your customer to query this unstructured data? You don’t know which ‘fields’ they used, you cannot build a query editor on top or offer a drop down with used values.

Product

XML commands are now thread safe

Want to enhance your database scalability and use all the performance available with your multi-core machines?

With 4D v16, we have extended the list of thread-safe commands in order to use preemptive processes with your code handling XML.

Product

New parameter for DISTINCT VALUE

With 4D v15 R4, a new parameter is introduced for the DISTINCT VALUE command. This parameter must be an array, and it receives the count of each distinct value in a selection of records.

This feature is particularly useful for obtaining statistics on records, or to order records by their most common type.

Product

REPLACE STRING is faster

In 4D v15 R3, the algorithm of the REPLACE STRING command has been enhanced to make replacements on large amounts of data faster. In our tests replacing 32,000 occurrences, the new algorithm makes the command an average of 4000 times faster than the old one.