580 likes | 756 Views
Mimer SQL on OpenVMS Stefan Eck Product Marketing Director Mimer Information Technology AB. Agenda. Background Mimer customers on OpenVMS Platforms Technical features Mimer SQL on OpenVMS Q&A. Mimer Information Technology AB. HQ in Uppsala, Sweden Mimer Taiwan (subsidiary)
E N D
Mimer SQL on OpenVMSStefan EckProduct Marketing DirectorMimer Information Technology AB
Agenda • Background • Mimer customers on OpenVMS • Platforms • Technical features • Mimer SQL on OpenVMS • Q&A
Mimer Information Technology AB HQ in Uppsala, Sweden Mimer Taiwan (subsidiary) Partners in China, Japan, Korea and USA World class experts in relational database technology Developer of the Mimer SQL product family Enterprise Solutions Industrial/Embedded Solutions Mobile Solutions Mimer SQL used in mission critical systems world wide since the 1970s
Mimer SQL highlights • Relational database management system • Full ISO SQL • ISO PSM stored procedures • Tight integration with OpenVMS
Mimer SQL background • Roots at the Uppsala University, Sweden • 30+ years on VMS! First port 1980 (VAX780) • OpenVMS main development platform since 1982(VAX Alpha Integrity) • Close co-operation with OpenVMS Engineering
Agenda • Background • Mimer customers on OpenVMS • Platforms • Technical features • Mimer SQL on OpenVMS • Q&A
Some Mimer SQL Customers NHS Blood & Transplant DJ Galvanizing Swedish Telecom Volt Delta A top-5 hand-set manufacturer Volvo Cars Chinese smart-phone manufacturer Alexander Forbes Blue colour = OpenVMS!
Stock Level on 08 Jul 2011 Mimer SQL in Life-Critical System • World’s largest centralized blood supply management system • NHS Blood and Transplant service, England & Wales • Responsible for all donated blood and tissues • System controls 2.5 million donations annually • 3,500+ active users • Database of 1 billion records +8 million / week • “Our experience is that Mimer SQL rarely gives us a problem and has a very low maintenance overhead, so there’s no need for any expensive database administrators to run the system.”Ian Henderson, MD at Savant Enterprises,the developer of PULSE
NHS Blood and Transplant An Integrated System DONOR SYSTEM LAB SYSTEM STOCK SYSTEM “NHS Blood & Transplant provides a life-saving service. It cannot fail, especially in the face of major incidents. NHSBT has achieved an extremely high level of disaster tolerance through the use of dual data centers and split-site OpenVMS clusters. … In summary, this system demonstrates considerable in-depth strength to deliver extremely high availability blood-product services to NHSBT by using the PULSE software, the Mimer SQL database, and the OpenVMS clusters running on Integrity Server systems and EVA storage subsystems.” Availability Digest, Oct 2008
Mimer SQL at NHS BTStructure • Database Server • HP Integrity servers at 2 locations • OpenVMS • Mimer SQL database • Serving data through ODBC • COM + Windows server • Providing “middleware” data services to clients • Clients • Windows PC (thin client through Citrix) • HTML web pages • Web services to third party clients Savant
Mimer SQL at NHS BT Vital Statistics (July 21 2011) • Live System • 1,251,033,111records in 715 tables • Largest table (donation audit) is 130+ million records • Archive System • For older, time expired records • 2,065,863,274records • More information • Availability Digesthttp://www.availabilitydigest.com/public_articles/0310/uknbs.pdf • HP customer case studyhttp://www.xdelta.co.uk/news#nhsbtcasestudy Savant
Maintained 99.9% uptime • Reduced data centre footprint • Maintained exceptional reliability • Built disaster-tolerant solution
Mimer SQL in Production • Controls flow of parts to the assembly lines at the Volvo car plant in Gothenburg • Mission critical (unplanned database downtime very expensive) • In production since 25+ years
Remote Comprehensive Surveillance monitor Access Point Demonstration area in a clean room 2.4GHzWirelessZigbee In-house LAN MIMER SQL MIMER SQL Environmental sensing by multiple sensors Mimer SQL in Omron sensor network OMRON Conclusion: • Predictable real-time guarantees needed • Standard SQL application programming lowers cost and time to market • High performance and scalability important • Wise data-management significantly reduced power consumption MIMER SQL provides this.
Agenda • Background • Mimer customers on OpenVMS • Platforms • Technical features • Mimer SQL on OpenVMS • Q&A
Mimer SQL Embedded Mimer SQL Real-Time Mimer SQL products Mimer SQL Enterprise Mimer SQL Mobile Mimer SQL Micro Mimer SQL Nano Resource constrained Systems Large Systems
Mimer SQL platforms OpenVMS Linux Solaris HP-UX Android AIX Windows BREW VxWorks Windows Mobile Windows CE Symbian OS Enea OSE Embedded Linux Resource constrained Systems Large Systems Blue colour = HP platform!
Mimer SQL platforms • Same database kernel on all platforms • Enterprise server on a mobile phone • Small footprint and zero maintenance enterprise server Resource constrained Systems Large Systems
Mimer SQL Mobile isincluded in millions of mobile phones Some recent devices with Mimer Inside
Original database architecture on Android Application 1 Application 2 Application 3 Content Provider Content Provider SQLite SQLite Private database 1 Private database 2
Mimer SQL Mobile on Android One single shared database server handles App 1 App 2 App 3 App 4 Content Provider Content Provider JDBC SQLiteDatabase API Mimer SQL Mobile Shared database
Customer benchmarking on Android: Multimedia Example Conclusion • Insert Interface test (16 fields). Results in ms. • Insert: SQLite is 2.69 times slower than Mimer SQL with Provider. • Insert: SQLite is 4.05 times slower than Mimer SQL without Provider. ms No of photos
Agenda • Background • Mimer customers on OpenVMS • Platforms • Technical features • Mimer SQL on OpenVMS • Q&A
SQL Standardized by international standard bodies such as ISO and ANSI Supported by Oracle, DB2, SQL Server, …… Use standard SQL to get application portability between different database systems Mimer SQL conforms to the SQL standard Mimer is an active member of the ISO standardization body for SQL: ISO/IEC JTC1/SC32, WorkGroup 3, Database Languages
Mimer SQL standard compliance • X/Open SQL • SQL99/Core 2003, including: • Persistent Stored Modules (PSM) • Triggers • Unicode • ODBC • JDBC, J2ME (CDC, CLDC)
Mimer SQL: Zero maintenance • Non-locking concurrency control • Deadlock free • No locking overhead • Add more workload or new applications without risk for performance deterioration due to database locks • Automatic database reorganziation • Database files always structured for optimal performance • No need for index rebuilds • Very few tuning parameters • Cache size • Number of database request threads
Database Client Database Client Database Server (and Client) Mimer SQL: Heterogeneous Client/Server • No additional processes on OpenVMS server • Multiple server connections (local and/or remote) possible • Generic communication protocol for all platforms • ODBC, Java JDBC/J2ME, .NET, Embedded SQL • Common data format No conversion needed • You can use your mobile phone as a client to your OpenVMS server (or vice versa!)
.NETADO.NET, Mono,ADO.NET CF Perl, PHP, Ruby,Ruby on Rails C/C++ODBC, Micro API, Embedded SQL JavaJDBC, J2ME Mimer SQLDatabaseServer Database Mimer SQL Standard APIs • Open architecture and APIs
Clients Mimer SQL server architecture Access engine • ISO SQL:1999 • Procedures&triggers • Access control • Referential integrity • Multi threaded • Scalable • Deadlock free • ACID transactions Kernel Cache • RAM based • Dynamic • Configurable Database
Linguistic Sorting • Built-in and user defined collations • 140+ different built-in languages • Text search and sorting: • Independent of case • With national characters in correct order • With or without regard for accents • … • Output from the same column can be sorted differently • Not built into column type • Secondary indexes with different sort orders
Some built-in collations • AFRIKAANS • ALBANIAN • ARABIC • ARUMANIAN • ASTURIAN • BASQUE • BELARUSIAN • BOSNIAN • BRETON • BULGARIAN • CATALAN • AZERBAIJANI • CORSICAN • CROATIAN • CZECH • DANISH • DUTCH • ENGLISH • EOR • ESPERANTO • ESTONIAN • FAROESE • FILLIPINO • FINNISH • FRENCH • FRISIAN • FRIULIAN • GALICIAN • GERMAN • GREEK • GREENLANDIC • HEBREW • HUNGARIAN • ICELANDIC • IRISH_GAELIC • ITALIAN • KAZAKH • KIRGHIZ • KURDISH • LATIN • LATVIAN • LITHUANIAN • LUXEMBOURGISH • MACEDONIAN • MALTESE • MOLDAVIAN • NORWEGIAN • OCCITAN • POLISH • PORTUGUESE • ROMANIAN • ROMANSCH RUSSIAN • SAMI • SCOTS • SCOTTISH_GAELIC • SERBIAN • SLOVAK • SLOVENIAN • SORBIAN • SPANISH • SWEDISH • TATAR • THAI • TURKISH • TURKMEN • UKRAINIAN • UNICODE • UZBEK • VIETNAMESE • WELSH
Indian languages Assamese Bengali Gujarati Hindi Kannada Konkani Malayalam Manipuri Marathi Nepali Oriya Punjabi Sanskrit Sinhala Tamil Telugu African Languages Hausa Igbo Yoruba Middle East languages Dari Pashto Persian Chinese KangXi (康熙) Pinyin (拼音) ZhuYin (注音) WuBiHua (五笔画) Korean Hangul and Chinese together Japanese Some additional collations
Multilingual Support SQL>select word from t order by word collate japanese_3; WORD ============================ ていねい- teinei – polite テープ - teepu – tape でぐち - deguchi – exit テスト - tesuto – test では - dewa - well, then デパート- depaato – dep. store SQL>select * from t where name like 'AA%' collate danish_1; NAME ==== Aalborg Århus
5 6 8 3 4 1 2 TUV MNO JKL DEF ABC GHI 7 9 PQRS WXYZ 0 + Advanced searching using collations • T9 sorting for numeric keypads • For search among words matching a sequence of letters (e.g. Numeric keypads) select * from state wherename like ’83%' collate t9 NAME=====TexasVermont2 rows found
Mimer SQL: Immediate restart • Immediate access to data at restart after failure • Database consistency guaranteed • Option on OpenVMS
Mimer SQL Real-Time A Hard Real-Time Database Server that: • Allows you to model all system data in one data storage • Provides safe sharing of real-time data between • Guaranteed hard real-time transactions • Flexible database transactions with full SQL support
Mimer SQL Real-Time - Features • Hard Real-Time Support with guaranteed response-times • No unpredictable blocking or locking • Full control of when to write to disk/flash • Unrivaled performance for real-time data access • ”Near shared-variable performance” • Specialized logging functionality • Safe and efficient logging of system events/control data • Full client/server functionality for SQL transactions • “Your device is your server” • Scalable cross-platform database solution
Mimer SQL Real-Time – Performance Mimer SQL real-time introducedas little as 3% overhead compared to using shared variables! Near shared variable performance Maintained predictability
Agenda • Background • Mimer customers on OpenVMS • Platforms • Technical features • Mimer SQL on OpenVMS • Q&A
Mimer SQL on OpenVMS • Developed on OpenVMS for OpenVMS • Not a Unix or Windows product ported to OpenVMS! • Use the most efficient primitives on OpenVMS to get best possible performance and scalability • Full function Mimer SQL 10.0 evaluation version available for free download at:http://developer.mimer.com/
Local UserApplication Local UserApplication Remote UserApplication Remote UserApplication JDBC Embedded SQLinterface ADO.NET ODBC Communication Thread Request Threads Background Threads Database Cache Mimer Database Server Mimer SQL: Multi threaded server • One single multi threaded server
Local UserApplication Local UserApplication Remote UserApplication Remote UserApplication JDBC Embedded SQLinterface ADO.NET ODBC Communication Thread Request Threads Background Threads Database Cache Mimer Database Server Advantages with a multi threaded server • Less synchronization overhead • All threads share memory, disk channels, etc. • Efficient use of multi-core servers
Mimer SQL: Database cache • Stores large parts of database in main memory • Possible to use Reserved Memory Registry in OpenVMS • No paging • No working set quota taxation • Reserved at boot time Local UserApplication Local UserApplication Remote UserApplication Remote UserApplication JDBC Embedded SQLinterface ADO.NET ODBC Database Cache Mimer Database Server
Mimer SQL: Supported APIs on OpenVMS • ODBC driver (native Mimer SQL) • JDBC Type 4 driver (all Java) • Embedded SQL • C • Cobol • Fortran • ACU Cobol • X/Open XA (Distributed transactions)
Local UserApplication Local UserApplication Remote UserApplication Remote UserApplication JDBC Embedded SQLinterface ADO.NET ODBC Database Cache Mimer Database Server Mimer SQL: Local Client/server Local clients • Shared memory based • Avoids unnecessary copying of data • Executive mode • $HIBER/$WAKE synchronization • User-Written System Service (UWSS)
Local UserApplication Local UserApplication Remote UserApplication Remote UserApplication JDBC Embedded SQLinterface ADO.NET ODBC Database Cache Mimer Database Server Mimer SQL: Remote Client/server • Remote clients • TCP/IP and DECNET • Single asynchronous $QIO • AST triggered communication • Scalability • No communication thread
Local UserApplication Local UserApplication Remote UserApplication Remote UserApplication JDBC Embedded SQLinterface ADO.NET ODBC Database Cache Mimer Database Server Mimer SQL: Disk I/O • Performed by both Request and Background threads • Asynchronous $QIO • Dynamic prefetch of data