Преимущества Caché
Впечатляющая производительность
Благодаря тому, что в Caché вместо громоздкой головоломки двумерных таблиц используются многомерная модель данных и методы разреженного хранения данных, доступ и редактирование требуют гораздо меньше дисковых операций ввода/вывода (I/O). Сокращение же I/O означает, что приложение будет работать быстрее.
Высокая масштабируемость
Транзакционная многомерная модель данных в базирующихся на Caché приложениях позволяет легко наращивать число клиентов (до многих тысяч), сохраняя высокую производительность. Это объясняется тем, что доступ к данным в многомерной модели не зависит от объема или сложности базы данных в отличие от реляционных моделей. Транзакции получают необходимые им данные без выполнения сложных соединений таблиц или «скачков» из таблицы в таблицу.
eлогической блокировки при изменении данных вместо блокировки физических страниц – еще один важный фактор обеспечения высокого параллелизма наряду с эффективным управлением данными в сетях.
Быстрая разработка
Разработка в Caché происходит гораздо быстрее, чем в других технологиях, так как используемые структуры обеспечивают естественный и понятный формат хранения сложных данных, не требуя при этом развернутых или сложных описаний и определений. Прямой доступ к глобалам очень прост – он основан на том же синтаксисе, что и доступ к массивам-локальным переменным.
Сокращение расходов
По сравнению с реляционными приложениями схожего размера, приложения на базе Caché работают с использованием значительно менее мощного оборудования и без необходимости участия администраторов баз данных. Управление системой и ее сопровождение отличаются исключительной простотой.
http://intersystems.ru/cache/technology … de_02.html
код
команди скорочуються до однієї букви, тому спочатку "нічого не зрозуміло"
Setting up the %ZLANG* Routines
%ZLANGC008 ; MSM command routines
;
ZSS ; do a System Status
d ^%SS
q
%ZLANGF008 ; MSM function routines
;
ZRTN(x) ; find out what routine a process is curren
tly running
q $p($v(-1,x),"^",6)
%ZLANGV008 ; MSM special variable routines
;
ZTIME ; return the current time
d INT^%T
q %TIM
Example of Calling the Custom Code
myrtn ; Call the code added to the ^%msql* routines
;
n pid,rtn,x
s x=$ZU(55,8) ; Change to MSM mode
ZSS
r !,"Enter a process ID: ",pid
s rtn=$ZRTN(pid)
i rtn="" s rtn="no routine"
w !,"At "_$ZTIME_", process #"_pid_" was running "_
rtn_"."
s x=$ZU(55,0) ; Return to native mode
q
http://intersystems.ru/cache/education/ … 5cache.pdf
це старий MSM, після якого Caché v3.x
Зараз є Cache Object Script
http://www.k-press.ru/cs/2005/4/cache/cache.asp
Describes Caché language bindings (used to write Caché client applications in Java, C++, .NET, and other languages) and gateways (used to call client applications from a Caché server).
http://docs.intersystems.com/cache20121 … ETLangBind
головне в Cache - сама БД
At the heart of Caché lies the Caché Database Engine. The database engine is highly optimized for performance, concurrency, scalability, and reliability. There is a high degree of platform-specific optimization to attain maximum performance on each supported platform.
Caché is a full-featured database system; it includes all the features needed for running mission-critical applications (including journaling, backup and recovery, and system administration tools). To help reduce operating costs, Caché is designed to require significantly less database administration than other database products. The majority of deployed Caché systems have no database administrators.
The major features of the database engine are described in the following sections.
All data within Caché is stored within sparse, multidimensional arrays. Unlike the multidimensional arrays used by typical OLAP (online analytic processing) products, Caché supports transaction processing operations (inserts, updates, locking, transactions) within its multidimensional structures. Also, unlike most OLAP engines, these multidimensional structures are not limited in size to available memory. Instead, Caché includes a sophisticated, efficient data cache.
Because Caché data is of inherently variable length and is stored in sparse arrays, Caché often requires less than half of the space needed by a relational database. In addition to reducing disk requirements, compact data storage enhances performance because more data can be read or written with a single I/O operation, and data can be cached more efficiently.
http://docs.intersystems.com/cache20121 … IC_C112436
тобто дані зберігаються не в таблицях, а в узлах одного або кількох графів
What Is Caché?
Welcome to Caché, a high-performance object database.
This introduction provides an overview of the major components and technologies that make up Caché. These components include:
A powerful, multidimensional transaction engine that includes the ability to create distributed databases.
A unified data architecture uniting the power of objects with high performance SQL.
A suite of technologies and tools that provide rapid development for database and web applications.
Native, object-based XML and Web Services support.
Automatic interoperability via Java, JDBC, ActiveX, .NET, C++, ODBC, XML, SOAP, Perl, Python, and more.
http://docs.intersystems.com/cache20121 … =GIC_INTRO
Движку БД кілька десятків років, все "вилизано".
теми на habr
http://habrahabr.ru/company/intersystems/