DBMS Caché 2013.1 Release

    A new version of Caché 2013.1 has been released. What's new?

    Functional Development
    • further development of EXtreme Event Persistence;
    • WebSocket support;
    • extended JSON support;
    • New panel editor in BI DeepSee.

    Improving development speed
    • multiсompile classes;
    • new COS return command;
    • args by reference;
    • % Find for Caché SQL.

    Performance improvement
    • XML processing performance + 50%;
    • improved de-journaling performance;
    • ROLLBACK productivity increase up to 20%;
    • increase the global buffer limit to 16 TB;
    • increase the limit of shared memory up to 1 TB;
    • building class indexes with minimal downtime -% Library.IndexBuilder;
    • escalation of locks;
    • Increased competitive update performance by up to 30%.

    The full version of the document in English .
    About everything one after another and about other changes of the version under a cat.


    EXtreme Event Persistence (XEP) Enhancements
    • Expanded support for inheritance, references, interfaces, and synchronous indexing.
    • Support for simpler storage mode options.
    • XEP now has two types: TCP / IP and JNI.
    • @ Id notation for Java and .NET allows the field to become the database ID.
    • New mechanisms for calling Caché Object Script (COS) class methods from Java / .NET.
    • Support for calling COS functions, procedures with several parameters and return types.
    • Improved performance of array insert operations.
    • A new API (parallel storage API) has been added to maximize the capabilities of multi-core servers and increase write performance in the database.
    • Improved InterSystems JDBC query engine.
    • Reducing the use of JNI.

    More details here .

    Improvements to the Globals API
    This version introduced support for $ query in the Java and .NET APIs. ValueList globals now support decimal values. Methods in the Globals API can call Caché Object Script functions, procedures with several parameters and return types, as well as class methods. Visual Basic support now comes with an example usage. More details here .

    New language element RETURN
    A new RETURN team has appeared in Caché Object Script to optimize code and improve readability. Its definition is similar to the QUIT expression, but leads to the exit from the subprogram, method or class of the method in the code that called them.

    Support for parameters by reference with Args ...
    The design of the args .. . to pass an indefinite number of variables for a method or procedure can now be used to pass parameters by reference.

    WebSocket Support
    The CSP gateway now includes support for the HTML 5 specification for WebSocket communication between the server and a browser compatible with HTML 5. This feature is available in Apache version 2.2 and later and will be available for IIS 8.0, which is part of Windows Server 2012.
    The% class class has been added to the class library. CSP.WebSocket - to create / manage WebSocket functionality you need to inherit from it.

    Caché SQL Development:% FIND Support for WHERE
    In this version, a new Caché SQL element is implemented with the following construction:
    % FIND [SIZE]
    denotes a set of values ​​that are a filter for. The condition is satisfied if it consists in.

    Enhanced FrameStack Processing
    Mistakes can now be worked out in error handlers. Caché will no longer remove these elements from the execution stack before invoking the error handler.

    Third Party Library Updates
    This release now includes the Java 7 and Java 6 libraries. Additionally, Caché now supports JDBC 4.1.
    ANTLR has also been upgraded to version 3.4, Xerces has been upgraded to version 3.1.1 on UNIX®.

    Studio Assistant for MVB
    Studio Assistant now recognizes the following constructs:
    • Caché Basic: "ClassName" .ME.
    • MVBasic: "ClassName" -> @ ME->
    • Caché Basic: "ClassName" .ME. MV BASIC: "ClassName" -> @ ME->

    XML support for List of Streams
    List of Streams will correctly migrate to XML. A list of streams can be specified using the 'list Of' construct, or by creating a class that is a subclass of% ListOfObjects with ELEMENTTYPE pointing to streamclass.

    JSON Processing Enhancements
    Major changes have been made to the JSON API. Now the Caché API can generate JSON strings from objects, globals, or SQL query results. This increases the efficiency of use when working with third-party client interfaces (jQuery, angular.js, etc.) that support JSON as a data transfer mechanism. In addition to converting external structures into JSON, the system supports receiving JSON sent by the client and converting them into multidimensional COS arrays inside the Caché application.

    DeepSee improvements
    DeepSee has a new editor for creating and editing panels. The new panel editor uses advanced schemas and new ZEN components. The editor is called up by clicking on the strip on the left side of the panel. The new panel editor provides significantly more options for managing the appearance of diagrams and tables.
    In addition, covers appeared on the DeepSee portal - as a result, BI elements on the home page (panels, pivot tables, reports, links) are displayed as icons. The new cover editor allows you to customize covers (images, text, colors, etc.) for DeepSee elements.

    Performance and scalability


    XML performance
    XML performance has been enhanced by improving XML processing between Caché and Xerces. You can expect an improvement in import performance in% XML.Reader of up to 50% and up to 25% for SOAP messages.

    HTTP 1.1 Keep-Alive
    Keep-Alive support with HTTP 1.1 has been added to this release. This allows clients to keep the TCP / IP socket to the web server active so that they can make multiple requests over the same socket, instead of closing and opening a new socket for each request.

    Enhanced Logging Performance
    InterSystems in this version has improved De-Journaling performance, further optimizing proactive sampling algorithms. De-journaling (for shadow copying, mirroring, and docking from the log during recovery) uses the forward-looking mechanism to speed up the recording and deleting of values ​​in the database. These samples are responsible for the “preliminary reading” of the blocks in the buffer pool. Moreover, the actual update process can occur very quickly and produce updates without slowing down due to the process of reading from disk. This version includes an auxiliary algorithm that allows forward-reading to read in additional (reference) blocks, further accelerating the overall performance of de-logging.

    Improved ROLLBACK Performance
    In this release, ROLLBACK's performance is improved by 10% -30% compared to previous versions. The improvement refers to the rollback of both individual (large) transactions and the block rollback (such as occurs during recovery at startup).

    AES encryption on Intel hardware
    Intel supports the latest AES-NI processors, which greatly speeds up AES encryption and decryption. The first tests show significant performance improvements when running AES software. This minimizes performance overhead for encrypted databases with high physical I / O rates.

    Enhanced Encryption Performance
    Previously, a performance feature called WIJ Parallel Encryption was available on the AIX platform. This feature now works on HP-UX, Linux, and Solaris, and can speed up database encryption during write cycles up to 4 times.

    Improved asynchronous I / O performance
    This version includes improvements to asynchronous I / O. The new algorithm detects multiple sequential updates and writes data in larger blocks, which, according to measurements, speeds up recordings at sequential load by 1.6 - 1.8 times.

    MultiCompile is enabled by default
    Caché now uses MultiCompile to compile classes by default, which will reduce compilation time on multi-core processors.

    Multi-column join optimization
    This release has removed some of the old features used to optimize multi-column joins. Now a more general approach provides better performance for all types of multi-column join expressions.

    Improved competitive insert performance
    In this version, the competitive insertion functionality has been optimized on very large systems. With this optimization, tests showed an improvement in overall database scalability from 20% to 30%.

    Adding class indexes with minimal downtime
    The current version introduces the new% Library.IndexBuilder function. This class and its methods allow you to add one or more indexes to an existing class. The function is implemented specifically for cases when:
    • the usual% BuildIndices method will take a long time to execute because a lot of data is involved and
    • The application runs on a system where downtime should be minimized.

    This new feature is already considered to Habré .

    Improving lock escalation
    This release introduces a new lock mode, “E,” designed to automate lock management and improve lock table management. In this mode, if a transaction exceeds a certain number of locks, they are "combined" into one lock of a higher level (if Caché considers such an action to be safe). This frees up space in the lock table.

    TuneTable Export-Import Statistics
    In this release, support for exporting / importing TuneTable statistics for an area has been added to Caché SQL. This allows you to export TuneTable, Selectivity, and ExtentSize data from the system and reload it without sending or compiling class metadata.

    Reliability, availability, serviceability, monitoring


    Support for discs with 4K sectors
    This version includes support for discs with 4K native sectors, which are implemented in Advanced Format (AF) discs.

    TIFF output in Zen reports
    Zen reports can now create content in TIFF format, in addition to the formats that were previously supported - HTML, XML, PDF, Excel, etc.

    Single Application Licensing
    Some Caché customers license their applications in full or in functional modules. Among the complex tasks that they face, one can name the correct accounting of licensed units in different application processes and emergency situations. Some customers additionally request the ability to associate their licenses with the primary system license provided by InterSystems.
    By licensing individual applications, InterSystems provides the customer with the ability to create, deploy, and use application licenses. InterSystems uses this licensing form for its HealthShare and TrakCare application products.

    Global buffer limit increase
    This version includes support for very large global buffer. Previously, the limit was approximately 107 GB. Global buffers can now be configured up to 16 TB in size.

    Shared Memory Heap limit increase
    This version includes support for very large shared dynamically allocated memory. Previously, the limit was approximately 4GB. Now shared dynamically allocated memory can be configured up to 1 TB.

    Resolving reboots associated with changing configuration settings
    The following Caché configuration options can now be updated dynamically, without rebooting the system so that the new settings take effect.
    Parameter List:
    • MaxServers: The maximum number of client machine connections to ECP servers.
    • VMSConsoleTerminal: имя устройства консольного терминала для логирования сообщений в систему OpenVMS.
    • netjob: разрешить/запретить удаленные запросы процессов.
    • wijdir: файловая директория Write Image Journal.
    • console: имя файла консольного журнала.
    • LineRecallBuffer: общий размер (в байтах) всех строк ввода, которые должны храниться в буфере командной строки/строки чтения.
    • LineRecallEntries: максимальное число записей, хранимых в буфере командной строки/строки чтения, подлежащих ограничению размера в настройке LineRecallBuffer.
    • bbsiz: максимальное распределение памяти, разрешенное для обработки (в килобайтах).


    Автоматический запуск демонов упреждающей выборки
    The automatic prefetch mechanism ($ PREFETCHON / $ PREFETCHOFF) requires initialization of system-wide daemons. This version of Caché automatically checks that proactive daemons are started when they are needed, and stopped when they are no longer needed. Thus, now you do not need to manually start and stop them.

    Improved SQL Performance Analysis Tools
    This release of Caché provides additional utilities that expand the capabilities of SQL performance analysis. Utilities allow you to: calculate how many times the index is used; Define queries that cause table scans, or depend on the creation of temporary structures; Find queries that use Join, and calculate how well they are supported by existing indexes.

    Failover and Disaster Recovery
    In previous releases of the Caché database, Disaster Recovery proposed an asynchronous mirroring configuration. In this release, InterSystems provided an easier switch from an asynchronous mirroring node in the event of an accident (or for testing purposes). It’s also now easier to switch back to the main mirror to continue working.

    WS Reliable Messaging
    In this release, Web Services Reliable Messaging can be used to reliably deliver (identify, track, and manage) messages between points of origin and destination.

    Complete online documentation of Caché 2013.1 in English .

    Also popular now: