1. Introduction to IvorySQL

1.1. Overview

IvorySQL is an advanced, full-featured, Oracle open source compatible PostgreSQL with a firm commitment to always remain 100% compatible and a direct replacement for the latest PostgreSQL. IvorySQL adds a GUC parameter called 'ivorysql.compatible_mode' to control the compatibility mode of IvorySQL, which has two values: 'oracle' and 'pg'.When initializing the data directory, specify the compatibility mode of the data directory by specifying the '-m' parameter, and '-m pg' then the data directory is PostgreSQL mode.In this mode, the 'ivorysql.compatible_mode' parameter will be invalidated, and the '-m oracle' or if the '-m' parameter is not specified, the data directory will be compatible with Oracle mode.In this mode, the initial value of the 'ivorysql.compatible_mode' parameter is 'oracle' and does not support some PostgreSQL syntax, and the database can support 100% of PostgreSQL syntax and functions by 'set ivorysql.compatible_mode to pg'.

One of the highlights of IvorySQL is the PL/iSQL procedural language, which supports Oracle’s PL/SQL syntax. At the same time, IvorySQL implements Oracle-compatible functions by adding plug-ins ivorysql_ora bound to the kernel, and the functions currently implemented include built-in functions, data types, system views, merges, and the addition of GUC parameters, and will continue to implement new compatible functions in the form of plug-ins bound to the kernel in the future.

1.2. Product Goals and Scope

We are committed to the principles of the open source approach and we strongly believe in building a healthy and inclusive community. We insist that good ideas can come from anywhere. Only by including different perspectives can we make the best decisions. While the first release of IvorySQL focuses on Oracle-compatible features, the future roadmap and feature set will be defined by the community in an open source manner.

1.3. Core Features

IvorySQL is developed based on PostgreSQL database and is compatible with Oracle database for strong compatibility. Suitable for PostgreSQL database and Oracle database scenarios.

1.4. Competitive Advantages

  • Core Open Source: IvorySQL’s core code including compatible features are all open under the open source protocol, with no vendor restrictions. It is also used in Hankook database company instances and has an active developer community.

  • Oracle compatible: Oracle databases can be migrated to IvorySQL.

  • Customizable: Simply download the code and customize it the way you want.

  • Easy to use: For system administrators, IvorySQL dramatically reduces the cost of administration and maintenance. For developers, IvorySQL provides a simple interface, a minimalist solution, and seamless integration with third-party tools. For data analysis professionals, IvorySQL provides easy access to data.

  • Hemco Support: Powered by the leading PostgreSQL database provider, Hemco.

1.5. Technical Ecology

IvorySQL is based on PostgreSQL, with complete SQL, rock-solid reliability and a huge ecosystem.

1.6. Core Application Scenarios

Ivory database’s main application scenarios.

  • Enterprise database

    For example, ERP, transaction system, financial system involves funds, customers and other information, data cannot be lost and business logic is complex. Choosing IvorySQL as the underlying data storage can help you provide high availability under the premise of data consistency, and you can implement complex business logic with simple programming.
  • Applications with LBS

    Large-scale games, O2O and other applications need to support world map, nearby businesses, distance between two points and other capabilities. PostGIS adds support for geographic objects, allowing you to run location queries in SQL without complex coding, helping you to rationalize your logic more easily, implement LBS more conveniently, and improve user stickiness.
  • Data Warehousing and Big Data

    With more data types and powerful computing power, IvorySQL makes it easier for you to build a database warehouse or big data analytics platform to enhance your business operations.
  • Website or App Building

    IvorySQL's good performance and powerful features can effectively improve website performance and reduce development difficulty.
  • Database Migration

    If you need to migrate Oracle database to PostgreSQL database, you can directly use IvorySQL database for migration.

2. Main, Basic Features

IvorySQL is a powerful open source object-relational database management system (ORDBMS). Used to store data securely, support best practices, and allow them to be retrieved when requests are processed. In addition, it is also compatible with Oracle’s syntax, which is suitable for scenarios where Oracle is used.