Events/2009/Proposed Sessions

From OpenSQLCamp

Jump to: navigation, search

The table below lists all the session proposals for the OpenSQL Camp 2009, European Edition that have been submitted until July 19th. The submission period is now closed, now it's time to set up the schedule. As the conference system is only available to a closed user group, the commenting and voting will be performed using a separate channel. See the Reviewing and Voting page for more information - the voting period ends on Sunday, July, 26th (12:00pm PST)!

Event ID Name Title / Subtitle Abstract / Full Description
333 Lenz Grimmer MySQL High Availability Solutions - Best practices and commonly used HA setups for MySQL There are many ways to ensure the availability of a MySQL Server and how to provide redundancy and fault-tolerance. In this talk, Lenz will give an overview over some best practices and commonly used HA setups for MySQL. The talk will cover the commonly used Open Source components and tools, with a focus on Linux and OpenSolaris. The session will also cover MySQL Cluster, the architecture and relationship to the MySQL Server.

MySQL is a popular open source relational database system (RDBMS) and widely used as the storage backend for dynamic web sites and applications. In many areas it has become a mission-critical component of the software stack, where downtime is not an option. This talk will give an overview about different solutions and technologies available to make a MySQL Server system highly available. The session will start with a brief introduction to High Availability (HA), the terminology and general concepts involved. Afterwards, several MySQL HA solutions will be introduced and explained, e.g. replication (and possible topologies), Linux-Heartbeat, block device replication (DRBD), Shared storage/SAN, MySQL Cluster, MySQL Proxy, Sun Open HA Cluster and Red Hat Cluster Suite.

401 Johannes Schlüter Using MySQL with PHP 5.3 Based on the newly developed MySQL native driver, mysqlnd, as a drop-in replacement for the MySQL Client library the current version of PHP, PHP 5.3, brings some major improvements for users of MySQL. This talk will discuss what mysqlnd actually is, give an overview over the different MySQL APIs in PHP (mysqli, PDO and the classic mysql extension) telling which to use in what situations and show some new features added with PHP 5.3, like support for asynchronous queries or persistent connections using mysqli.
404 Alexander Thiem Ingres Design Analyzer - Ein integrierter Performance Monitor für autonomes Datenbank-Tuning Die Komplexitiät aktueller relationaler Datenbank Management Systeme stellt eine immer größere Herausforderung an Datenbankadministratoren dar. Der DBA muss sich kontinuierlich und intensiv mit dem System zu beschäftigen, um die Performance des Systems sicherzustellen. Das Ziel eines modernen DBMS muss die Unterstützung des DBAs sein, um seine Arbeit mit automatisierten Prozessen zu erleichtern und ihm so stets schnelle und prezise Entscheidungen zu ermöglichen.

Der Ingres Design Advisor ist der erste Schritt zum autonomen Datenbank Tuning in Ingres. Der integrierte Performance Monitor erlaubt die Überwachung und Analyse des Systems und gibt Empfehlungen für das physische Datenbank Design.

Mit dem Ingres Design Advisor wird das DBMS Ingres um die Möglichkeit erweitert, den Status und die Performance des Systems in Echtzeit und über einen langen Zeitraum zu überwachen und diese Daten automatisiert zur Leistungsverbesserung zu nutzen. Der Advisor untersucht den Workload eines Systems, macht Vorschläge zur Index-Erstellung und zeigt grafisch aktuelle und kommende Engpässe der DBMS Konfiguration. Dieser Vortrag geht auf die Unterschiede und Gemeinsamkeiten zu existierenden Lösungen anderer Anbieter ein und erklärt, warum autonomes Datenbank Tuning ein so wichtiges Thema für moderne Datenbank Management Systeme ist.

405 Andreas 'ads' Scherbaum Welche Datenbank? Ein kleiner Ausflug in die Welt der Datenbanken. Der Vortrag liefert einen Einblick in die Welt kommerzieller und Open-Source Datenbanken mit ihren Vor- und Nachteilen.

Miteinander verglichen werden sowohl (objekt)relationale wie auch objektorientierte und dateibasierte Dateibanken. Die Betrachtung erfolgt aus dem Gesichtspunkt eines Anwenders (Entscheider), der für ein Projekt eine neue Datenbank auswählt und dabei Kriterien wie Anwendungszweck, Integrationsfähigkeit, Mehrbenutzerbetrieb, Speichern von Objekten oder binären Daten, Replikation und Partitionierung, Transaktionssicherheit oder auch die Lizenz und mögliche Kosten zu überprüfen hat.

420 Sheeri K. Cabral MySQL Continual Replication Sync - using mk-table-checksum Abstract: The theory has been around since an article by Baron Schwartz in October 2008. Recently Sheeri K. Cabral tackled this daunting task and found a few surprises -- from options that don't work as they are supposed to, to learning that a lot more data was in sync than I'd guessed. Sheeri will lead folks through the theory of setting up continual replication sync, and the actual process, including the important aspects to be aware of when doing this on your own systems.
421 Sheeri K. Cabral A Better mysqltuner mysqltuner (http://wiki.mysqltuner.com/MySQLTuner) is an open source tool that looks at a select number of parameters, including system and status variables, and outputs tuning recommendations. Sheeri K. Cabral of the Pythian Group has modified mysqltuner to be more comprehensive, to output information and to have a "spreadsheet" mode where the results of mysqltuner are outputted as a single column, so that you can easily compare subsequent runs of the modified mysqltuner -- for example, running it monthly or weekly to see how performance is progressing (or degrading). There is also a truly offline mode that requires no database connectivity where files containing the output of SHOW GLOBAL STATUS and SHOW GLOBAL VARIABLES are used.

This workshop will go through all the details of the modified mysqltuner, and take suggestions for further improvements.

422 Giuseppe Maxia Remote MySQL administration with Gearman - combining Gearman and MySQL Sandbox for ease of use MySQL Sandbox is an easy way of testing MySQL in one host. Combining it with Gearman, a distributed system of workers and clients, you can easily install and maintain database servers in remote hosts with the ease of a local sandbox.

Testing single database instances is quite easy. Testing replicated, or other distributed systems across several boxes is a pain. Users of MySQL Sandbox know that they can install one single or complex instance in one box, but they haven't been able, so far, to use a replication system across several hosts. Enters Gearman, a system that deals with jobs on distributed hosts, making the task easy and approachable by most anyone. In this workshop, we will see how to set three separate boxes with Gearman and Sandbox, and then use these servers to install several kinds of replicated systems, with extreme ease.

423 Holger Klemt A really free database used in free and commercial projects Firebird is a relational database system, that suppports most ANSI SQL features. The open Source project started in the year 2000 based on the sourcecode of Borland Interbase. Firebird uses a free license, which also allows unlimited usage and distribution in commercial projects. Starting with a small embedded version up to the full featured server version available for windows, linux, mac, sun, etc. it can be easilly included in distributed applications. Holger gives an overview about customer projects where Firebird is used, for example german telekom, german press agency, european patent organisation, ERP software, insurance solutions, medical solutions and much more. You will also get an overview about performance regarding users, database size, transactions per minute and other technical details, for example, Stored Procedures, Trigger, Views, Hardwarerequirements, administration, scalability, Differences to MySQL and Postgresql, integration in PHP, Java, Python etc.
424 Holger Klemt SQL based ERP software - using the database as an application server Holger will show a SQL based ERP software, which has a very different approach in the implementation, since most of the business rules are implemented in the Firebird database as stored procedure and triggers. There are already more than 500 companies in germany using this ERP software as their central production system. A lot of them have specific extension, which are only defined using changed or new database obejcts. With more than 1000 tables and more than 15000 other database objects and about 500000 lines of code in the business rules procedure and triggers, it shows what is possible to combine a multi tier application in two levels.
427 Giuseppe Maxia Sharding for the masses - Introducing the spider storage engine Everybody needs sharding. Which is not easy to maintain. Being tied to the application layer, sharding is hard to export and to interact with. The Spider storage engine, a plugin for MySQL 5.1 and later, solves the problem in a transparent way.

The Spider storage engine, a plugin for MySQL 5.1 and later, is an extension of partitioning. Using this engine, the user can deal transparently with multiple backends in the server layer. This means that the data is accessible from any application without code changes. This lecture will briefly introduce MySQL partitioning, and then shows how to create and use the Spider engine, with some practical examples. This talk covers the latest version of the Spider engine, which includes a condition pushdown feature that increases performance significantly

429 Nicklas Westerlund 8 Rules for Designing More Secure Applications with MySQL By focusing on suggestions on how to to keep your data secure I'll present lessons learned while designing secure and efficient architectures at the same time. I’ll bring to your attention some of the tradeoffs between easiness of operations versus a hard-to-break design. Unfortunately, we can’t foresee every single possible security flaw in advance, but in this session you will learn techniques to help you do a good design at the same time you minimize the risk.

This topic will focus on things such as:

  • Do not trust anything that comes from outside the Firewall
  • Do use of stored procedures and views to isolate your data from the Application
  • Isolate your data from the application user
  • Make sure you have proper Credentials Management
  • Do not send data in plain text (ever!)
  • Do not store passwords anywhere
  • Make sure your Application is Auditable
  • Make sure your Application is Recoverable

It will also go over basics of PCI compliance as well as general programming errors and typical mistakes that is often made, compromising security.

430 Nicklas Westerlund Maatkit explained In this session, you will be presented by an overview of the very popular Maatkit tools. These are tools that will help make your life easier when working with MySQL. It'll cover things such as mk-parallel-dump, mk-audit, mk-heartbeat and many more useful tools to help with everyday operations, making it just that little bit easier to deal with issues and queries coming up. Do you know how to get the slave hierarchy for example? Those are things I will cover in this session.

By use of examples this session provides explanation of what the various tools in maatkit does, and how to best utilize them for optimal win. I will also, in this session, give usage information, drawbacks as well as tips and tricks such as how to be able to turn around the knowledge you get from the tools into production.

I'll not cover all tools, but I will go with the most popular ones and also throw in some of the less used tools, such as mk-find and mk-slave-find, to further broaden the knowledge of the crowd when it comes to Maatkit.

431 Nicklas Westerlund Introduction and Best practices for MySQL Cluster Are you struggling with availability? Write scalability? Tried everything but still can't get the uptime you need? Perhaps MySQL Cluster can be of use for you. I'll cover an introduction to MySQL Cluster, showing you the limitations and strengths is possesses, an overview of how to set up and operate the cluster, and finally, dwell into the new options in NDB 7.

Do you already have a cluster but need to add more data nodes? Don't want to take the cluster offline to do this? Then come and listen and ask questions, I will explain how you can accomplish this without downtime. Need replication? No problems. Two channels? No problem.

This session will cover:

  • Installation of NDB
  • Configuration of NDB
  • Terms used and topography of how a cluster is designed
  • Best use practices, security, backup and restore
  • Scalability
  • New features for version 7
  • Limitations and drawbacks
  • Strengths
  • Possible use scenarios, as well as performance numbers compared to InnoDB from not only a availability standpoint, but also a performance standpoint, what can one expect from a cluster versus the current setup?
  • Replication, cluster to cluster, standalone to cluster, cluster to standalone, several replication channels.
433 Vladimir Kolesnikov PBXT: Technology trends that affect your database The recent progress in development of storage hardware is a major challenge for the traditional

storage engines developed with spindles and rpms in mind. Add here cheap RAM, multi-core CPUs - are you sure your storage engine effectively utilizes all this?

Learn how the PBXT transactional storage engine for MySQL meets these challenges.

The discussion will cover engine's general architecture, specific design solutions, engine's transactional and multi-versioning properties as well as recently added features and improvements such as concurrent index updates and in-memory tables.

440 Seppo Jaakola Galera Replication - multi-master synchronous replication for MySQL Galera is generic replication service, which has been integrated with MySQL providing multi-master synchronous MySQL/InnoDB clustering solution.

Galera replication gives:

  • good performance even with write intensive work loads
  • high availability (due to synchronous replication)
  • transparency for client connections

Galera replication uses certification based replication method, which gives good performance even with write intensive work loads. In the presentation, we will show the concept and architecture of MySQL/Galera clustering solution. Galera integration with DBMS engines happens through wsrep API (write set replication API) and we will describe the state and goals of wsrep and Galera projects.

We have benchmarked MySQL/Galera with several benchmarks and results show remarkable performance gain. The presentation shows results from Sysbench, DBT2 benchmark runs. We have evaluated MySQL/Galera under Drupal and eZ Publish CMS systems and will show results from jmeter benchmark against Drupal cluster.

452 Andreas 'ads' Scherbaum, Michael Renner PostgreSQL für kleine und große Unternehmen PostgreSQL hat fälschlicherweise den Ruf, nicht weit verbreitet zu sein. Dieser Vortrag räumt mit einigen der Mißverständnisse rund um die fortschrittlichste Open-Source Datenbank der Welt auf.

Es gibt viele Unternehmen, die PostgreSQL einsetzen. Dieser Vortrag stellt einige Beispiele vor und zeigt auf, warum diese Tatsache trotzdem noch nicht weit verbreitet ist. Zusätzlich werden einige der angeblich vorhandenen Schwächen für den Produktionseinsatz analysiert und widerlegt.

453 Stephane Combaudon Minimizing data access with covering indexes Indexes are known to speed up retrievals, but do you know that sometimes looking at the indexes is sufficient to get the data you need ?

This session will help you understand the principles of covering indexes, their benefits and the situations where you cannot use them.

The basic use of an index is to retrieve rows as efficiently as possible. Generally speaking, finding a row with an index involves two steps internally: first, you query the index to get pointers to data and then you use the pointers to retrieve data. Indexes hold values, so why not use directly these values ? As indexes are smaller than data and are more likely to fit in memory, you can expect huge improvements from this optimization.

How can you check that the MySQL server only retrieves values from the index ? Is it possible to rewrite a query so that it uses a covering index ? And are you sure that using a covering index will always help get better performance ? To answer these questions we will look at the information of EXPLAIN. Then we will explain some rewriting techniques (for instance with queries with LIKE or dates) and show some benchmarks with good and bad use of covering indexes.

Another important use of covering indexes is sorting. Basically, even if you use an index to sort rows, which can be very fast, you still have to retrieve data from the rows, which can be expensive. Once again covering indexes can help you much.

Summary of the session:

  • Indexing basics : features and goals of indexes
  • Index types : hash, b-tree
  • Index and data layouts for MyISAM and InnoDB
  • Accessing data on disk, on RAM
  • Covering indexes : definition, why and when using it
  • Situations where you cannot use a covering index
  • Case studies
454 Darren Cassar Securich - MySQL user administration and security made easy! Securich - The security plugin for MySQL user rights management.

How often do you wonder "What privileges does user xyz have globally (I.E. on databases, tables and stored procs)?", "Do all my users have a decent password?" and "When was it changed last?", whilst hoping they weren't cycling through the usual three passwords just because they were lazy to remember a new one, or "Who has access to table 'passwords' in database 'livedb'". Maybe you have occasionally granted full access to all tables in a database just because it's a pain in the back to grant on tables one by one, or wondered about the mess your users and their privileges were in. Did you ever wish you could clone user 'abc'@'localhost' out of 'xyz'@'%.my.domain.com'? then, perhaps, Securich (http://www.securich.com) can come to your rescue. It can easily tackle the above and much more. Securich also enables the long absent roles functionality in MySQL, permits dynamic updating of roles and immediate rollout of the changes to each user.

Securich is very simple to install and update using a bash script which includes error catching and rollback (should there be a problem). Securich is also easy to remove if required, a single command "drop securich" does the trick and doesn't change any of the rights granted to users through it.

Features:

  • Roles / groups
  • Password history / updating
  • User cloning
  • Dynamic roles
  • Secured user (avoiding password less accounts) Password guidelines The possibility to grant access to all tables in a database but one in two commands *Partial privilege history User blocking / unblocking Total isolation of users if need be|- valign="top"
455 Trond Norbye Whats new in Memcached 1.4, and where do we go from here! - Deepdive into memcached 1.4 and the upcomming engine interface The work on Memcached 1.4 started over two years ago, so this is by no means a minor release. In this presentation I will cover the major new enhancements in the 1.4 server, and talk about the future of Memcached with a special deep dive into the upcoming Engine interface.

memcached is a key ingredient in any major Web 2.0 site to offload the database by handling the read-load. Up till now you had to fork memcached if you wanted to use a different backend to store the items (e.g., Tugela cache use BDB). We are currently working on adapting something similar to the MySQL storage engine design, by creating a plugable engine interface in Memcached.

The ideal memcached server is the one with the lowest price per GB of memory. The introduction of Flash memory and SSD in commodity hardware, opens new possibilities. I have been experimenting with a hybrid memcached engine, utilizing RAM and Flash memory. This engine would be ideal where you need fast access time for the frequently most used items (they are stored in RAM), but can accept slightly higher latency for other items (stored in flash). This talk will cover the following topics:

  • What the storage interface is
  • Why we created it
  • What it may be used for
  • How this allows us to create a hybrid caching model by utilizing RAM and Flash memory.
456 Felix Schupp New kid on the block: The BlackRay Data Engine - Introduction to the architecture of BlackRay The BlackRay Data Engine is a high-performance, in-memory relational database, designed for large data sets and high performance. Originally designed for directory applications it offers features such as token search, token position, phonetic search and the combination of these features with leading, trailing and mid-span wildcards. It is built to run on standard hardware, but offer the ability to index data in the over 100 Million row range, with constant search throughput of several 100 queries per second, even with complex queries. This talk will cover the basic index internal design, the overall data engine setup, and options such as the available query- and management APIs.

In this talk we would like to explain our motivations for designing and building BlackRay, and then elaborate on the architecture of the internals of the data engine. The index structures inside the data engine are designed for low memory consumption, and the ability to quickly index large amounts of data. A total of five index layers, also called index perspectives, is required to fulfill the functions required for our search algorithms. Our smart combination of binary- and permuterm based search offers significant performance benefits over many traditional tree- and trie-based searches. Finally, searching for a token combination within a single table column only result in linear complexity, rather than exponential as in most typical index structures. The option to additionally compress the index further reduce the amount of memory used during operation.

Additionally we will explain the overall data engine setup, including the object-oriented search API (Java, C++, Pyhton, C#), as well as the progress on the PostgreSQL compatible socket interface for JDBC and ODBC. Further topics covered in our brief introduction are Remora, the web-based management interface, and the fail-over and recovery mechanisms of BlackRay, including the options available to maintain a history of your data. (project home)

457 Michael Dirolf An Introduction to MongoDB MongoDB is an open-source, high-performance, schema-free, document-oriented database. The goal of the MongoDB project is to bridge the functionality gap between a key/value store and a traditional RDBMS. This talk will introduce MongoDB and discuss some of the reasons why MongoDB might be the right fit for your project.

This talk introduces MongoDB by explaining how it compares to traditional relational databases as well as some other non-relational systems. Following this introduction we will discuss some specific use cases for MongoDB. This will include examples of interacting with MongoDB from several different languages. Questions and discussion will be encouraged throughout the presentation.

The talk will begin with a discussion of non-relational databases, focusing on the gains in scalability and flexibility that non-relational systems can provide over the typical RDBMS. We will then review some of the non-relational systems that have become popular recently, including BigTable, SimpleDB, CouchDB and MongoDB, with a focus on what differentiates these systems.

The second part of the talk will focus specifically on MongoDB. This will include discussion of the architecture and features of MongoDB, as well as the use cases it excels at. We will also walk through a case study using MongoDB from several different programming languages.

Questions and discussion will be encouraged throughout the presentation, but some time will be alloted at the end specifically for Q&A.

458 Linas Virbalas (proposed by Robert Hodges) Bringing Master/Slave into the 21st Century using Tungsten Database Clustering Tungsten is an increasingly well-known open source project that lets you build modern database clusters to protect data from loss, scale performance effectively, and provide rapid failover. In this talk we will explain the problems that Tungsten solves and then lead you step-by-step through the process of building your own cluster. We’ll start with master/slave replication as a foundation, add broadcast monitoring, insert peer-to-peer management, and finally add shiny new CAP-based SQL Routing and proxying on top. The result is a robust distributed database that is manageable as a single unit and looks as close to a single integrated database as possible without breaking any laws of nature. Come see what master/slave can do in the 21st Century!
459 Stephane Combaudon Optimize your paginated displays Paginated displays are common on Web applications but if not implemented correctly, they can cause a lot of performance problems. In this talk we will show why you can get performance problems and how to solve them.

On most Web applications you will find the following scenario : a search box, then a list of results that lead to a page with details. As the list may contain up to thousands of results or even more, you will end up optimizing the display by paginating the list. In order to improve the usability of the list of results, you will add links to browse the different pages and probably add the total number of items in the list. This idea sounds good but unfortunately it can consume so many resources that your whole application can be slowed down!

With a demo application, we will outline the reasons of theses performance problems, then we will show technical and non-technical solutions to succeed in making efficient paginated lists. These solutions will be implemented in our demo application to give an idea of the performance gains we can expect.

Summary of the session :

  • Different types of paginated displays
  • Performance implications
  • Non-technical solutions
  • Technical solutions
  • Benchmarcks before and after optimization
462 Kristian Waagan Getting acquainted with Apache Derby Apache Derby is a transactional, relational database written in Java.

This feature packed database is small enough to be run in many constrained environments, yet powerful enough to efficiently utilize the power of modern multi-CPU machines. Distributed under the Apache License (v2.0), you are free to bundle Derby as part of your application.

This presentation will give a brief overview of Apache Derby, its history and the community around it. Further, it will go into the details of features that have been added in the latest releases and show how they enable powerful ways to use a relation database.

Topics that will be covered:

  • Origin, history and community
  • Derby modes (embedded, client/server, combined)
  • Overview of features and capabilities
  • Making legacy data available to Derby
  • New features
463 Andreas Rulle Eine OpenSource-Datenbank für Software as a Service (SAAS)– ein Erfahrungsbericht - Welches ist die bessere Datenbank für eine konkrete Software als Service? Zunächst wird dargestellt, warum wir in der Intermoves GmbH mit der Firebird-Datenbank seit 2001 grundsätzlich zufrieden sind. Hierbei wird gezeigt, wie ein seit 2004 produktiver Cluster arbeitet, bei dem derzeit 12 parallele Service-Units auf sechs Firebird-Datenbankserver zugreifen.

Danach wird erläutert, warum wir uns in einer sehr späten Beta-Phase eines SAAS-Projektes nach einer Alternative zur Firebird-DB umgesehen haben. Es wird unter anderem auf den Zusammenhang zwischen Multiversion Concurrency Control (MVCC)/Garbage Collection und der Usability einer AJAX-Webanwendung eingegangen. Die Servervarianten Classic, SuperServer und SuperClassic und deren Skalierbarkeit werden miteinander verglichen.

Anschließend schauen wir uns die Kriterien an, die im konkreten Fall zur Entscheidung für die PostgreSQL-Datenbank und gegen MySQL geführt haben.

Es hat das Management gefreut, dass die Anwendung bei dem rechenintensivsten Feature insgesamt – also die Einheit aus Anwendungscode und Datenbank - um den Faktor 9 schneller als vor dem Umstellungs- und Optimierungsprozess ist. Die gewählte Optimierungsstrategie und Schritte bei der Migration werden beschrieben.

465 Jan Kneschke MySQL Proxy: a MySQL toolbox - Architecture and Concepts of misuse MySQL Proxy is more than just a transparent proxy for MySQL protocol. Looking under the hood you will see plugins, libraries and scripting extensions all working hand in hand. They are designed to be used in non-proxy scenarios, so we do. Let's see how we can misuse them.

Diving into the architecture of the MySQL Proxy, splitting it up into its components and putting them together to implement something new. From working on binary logs, filtering them, merging them to making MySQL 5.1 upgrade easier. All spiced with some scripting and examples.

466 Lenz Grimmer (Moderator), others Panel Discussion: The OSS Toolshed Shootout - An interactive session to discuss database tools and technologies In addition to talks about different databases and related technologies delivered by individuals, one session at the OpenSQL Camp should be an interactive session with live discussions between a moderator, a selection of panelists and the audience. The participants should be representatives/proponents of the different OSS Database technologies present and should focus on highlighting the advantages and possibilities of the solution they represent instead of badmouthing any of the other participating projects. They should be fairly familiar with the product itself, but also with the toolchain and applications commonly used around it. The audience will gain practical advice and insight into how to achieve certain tasks with a given database product. Additionally, they will learn more about the various tools needed to get the job done and how the same task would be addressed with a different product.

Suggested discussion topics

  • Backup and recovery: what are the usual tools and applications used to perform backups of your database of choice?
  • High Availability: how can your database be made resilient to failure? What functionality is built into your database, which external tools do you use/recommend?
  • Scalability: How can your database system be tuned to handle an increase in load/volume? How do you tackle performance issues?
  • Security: What measurements can you take to improve the security of the database? Which features does your database provide?
  • Monitoring: What functionality does the database system provide? What applications or tools do you recommend for checking the availability and health of the system?
  • APIs and Connectors: How can your database interact with the wide range of programming and scripting languages? What interfaces do exist and which ones are commonly used?
Personal tools