This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
admin:basics:environments:create [2011/01/13 17:37] els |
admin:basics:environments:create [2016/06/28 22:38] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ~~NOTOC~~ | ||
+ | |||
{{page>:top_add&nofooter&noeditbtn}} | {{page>:top_add&nofooter&noeditbtn}} | ||
- | ====== Administration: Omnidex Basics ====== | + | ====== Administration: Omnidex Fundamentals ====== |
===== Omnidex Environments ===== | ===== Omnidex Environments ===== | ||
Line 13: | Line 15: | ||
---- | ---- | ||
- | ==== Creating Environments ==== | + | ==== Creating Environment Files ==== |
- | There are two methods to create Omnidex Environments. They can be created interactively using the [[programs:odxadmin:home|Omnidex Administrator]], or they can be created using SQL statements such as [[dev:sql:statements:create_environment:home|CREATE ENVIRONMENT]], [[dev:sql:statements:create_database:home|CREATE DATABASE]], [[dev:sql:statements:create_table:home|CREATE TABLE]] and [[dev:sql:statements:create_index:home|CREATE INDEX]]. Once created, a simple Omnidex Environment File will look like this: | + | There are two methods to create Omnidex Environment Files. They can be created interactively using the [[programs:odxadmin:home|Omnidex Administrator]], or they can be created using SQL statements such as [[dev:sql:statements:create_environment:home|CREATE ENVIRONMENT]], [[dev:sql:statements:create_database:home|CREATE DATABASE]], [[dev:sql:statements:create_table:home|CREATE TABLE]] and [[dev:sql:statements:create_index:home|CREATE INDEX]]. Once created, a simple Omnidex Environment File will look like this: |
<code> | <code> | ||
- | create environment | + | > create environment |
- | in "simple.xml" | + | >> in "simple.xml" |
- | with delete; | + | >> with delete; |
- | + | Environment created in simple.xml | |
- | + | > | |
- | create database "SIMPLE" | + | > |
- | type FLATFILE | + | > create database "SIMPLE" |
- | index_directory "idx" | + | >> type FILE |
- | in "simple.xml"; | + | >> index_directory "idx" |
- | + | >> in "simple.xml"; | |
- | create table "HOUSEHOLDS" | + | Database SIMPLE created in simple.xml |
- | physical "dat\households.dat" | + | > |
- | ( | + | > create table "HOUSEHOLDS" |
- | "HOUSEHOLD" CHARACTER(12), | + | >> physical "dat/households.dat" |
- | "ADDRESS" CHARACTER(50), | + | >> ( |
- | "CITY" CHARACTER(28), | + | >> "HOUSEHOLD" CHARACTER(12), |
- | "STATE" CHARACTER(2), | + | >> "ADDRESS" CHARACTER(50), |
- | "ZIP" CHARACTER(5), | + | >> "CITY" CHARACTER(28), |
- | "COUNTRY" CHARACTER(2), | + | >> "STATE" CHARACTER(2), |
- | constraint HSHD_HOUSEHOLD_PK primary ("HOUSEHOLD") | + | >> "ZIP" CHARACTER(5), |
- | ) | + | >> "COUNTRY" CHARACTER(2), |
- | in "simple.xml"; | + | >> constraint HSHD_HOUSEHOLD_PK primary ("HOUSEHOLD") |
- | + | >> ) | |
- | + | >> in "simple.xml"; | |
- | create table "INDIVIDUALS" | + | Table HOUSEHOLDS created in simple.xml |
- | physical "dat\individuals.dat" | + | > |
- | ( | + | > |
- | "INDIVIDUAL" CHARACTER(12), | + | > create table "INDIVIDUALS" |
- | "HOUSEHOLD" CHARACTER(12), | + | >> physical "dat/individuals.dat" |
- | "NAME" CHARACTER(50), | + | >> ( |
- | "GENDER" CHARACTER(1), | + | >> "INDIVIDUAL" CHARACTER(12), |
- | "BIRTHDATE" ANSI DATE, | + | >> "HOUSEHOLD" CHARACTER(12), |
- | "PHONE" CHARACTER(14), | + | >> "NAME" CHARACTER(50), |
- | "EMAIL" CHARACTER(60), | + | >> "GENDER" CHARACTER(1), |
- | constraint IND_INDIVIDUAL_PK primary ("INDIVIDUAL"), | + | >> "BIRTHDATE" ANSI DATE, |
- | constraint IND_HOUSEHOLD_FK foreign ("HOUSEHOLD") references "HOUSEHOLDS" | + | >> "PHONE" CHARACTER(14), |
- | ) | + | >> "EMAIL" CHARACTER(60), |
- | in "simple.xml"; | + | >> constraint IND_INDIVIDUAL_PK primary ("INDIVIDUAL"), |
+ | >> constraint IND_HOUSEHOLD_FK foreign ("HOUSEHOLD") references "HOUSEHOLDS" | ||
+ | >> ) | ||
+ | >> in "simple.xml"; | ||
+ | Table INDIVIDUALS created in simple.xml | ||
+ | > | ||
</code> | </code> | ||
==== Adding Omnidex Indexing ==== | ==== Adding Omnidex Indexing ==== | ||
- | The easiest way to add Omnidex Indexing is to add indexing information beside each column. This will not work in all situations, such as when multi-column indexes are being created. However, the example below shows the basic addition of Omnidex indexing to the same database. In this example, the [[programs:odxsql:home|OdxSQL]] program is used to process the statements; however, these statements can also be sent through ODBC or JDBC applications. | + | The easiest way to add Omnidex Indexing is to add indexing information beside each column. This will not work in all situations, such as when multi-column indexes are being created; however, it will work in many simpler installations. More complex installations will require the more complex features described in [[dev:sql:statements:create_table:home|CREATE TABLE]] and [[dev:sql:statements:create_index:home|CREATE INDEX]]. The example below shows the basic addition of Omnidex indexing to the same database. |
<code> | <code> | ||
Line 71: | Line 77: | ||
> | > | ||
> create database "SIMPLE" | > create database "SIMPLE" | ||
- | >> type FLATFILE | + | >> type FILE |
>> index_directory "idx" | >> index_directory "idx" | ||
>> in "simple.xml"; | >> in "simple.xml"; | ||
Line 78: | Line 84: | ||
> | > | ||
> create table "HOUSEHOLDS" | > create table "HOUSEHOLDS" | ||
- | >> physical "dat\households.dat" | + | >> physical "dat/households.dat" |
>> ( | >> ( | ||
>> "HOUSEHOLD" CHARACTER(12) omnidex, | >> "HOUSEHOLD" CHARACTER(12) omnidex, | ||
Line 93: | Line 99: | ||
> | > | ||
> create table "INDIVIDUALS" | > create table "INDIVIDUALS" | ||
- | >> physical "dat\individuals.dat" | + | >> physical "dat/individuals.dat" |
>> ( | >> ( | ||
>> "INDIVIDUAL" CHARACTER(12) omnidex, | >> "INDIVIDUAL" CHARACTER(12) omnidex, | ||
Line 106: | Line 112: | ||
>> ) | >> ) | ||
>> in "simple.xml"; | >> in "simple.xml"; | ||
- | Table INDIVIDUALS created in simple.xml</code> | + | Table INDIVIDUALS created in simple.xml |
+ | </code> | ||
+ | |||
+ | ==== Updating Omnidex Indexes ==== | ||
+ | |||
+ | When Omnidex indexing is added to an Omnidex Environment, only the metadata about each index is added to the environment. The indexes themselves are not built until an UPDATE INDEXES statement is issued. This is of great benefit since it allows multiple indexes to be built with one scan of the data. Omnidex applications frequently involve many Omnidex indexes, and building them individually would be prohibitively slow. The example below connects to the newly create environment and updates the indexes. | ||
+ | |||
+ | <code> | ||
+ | > connect simple | ||
+ | Connected to D:\class\lab1\simple.xml | ||
+ | > | ||
+ | > update indexes | ||
+ | Database | ||
+ | Table Rows CPU Elapsed | ||
+ | ---------------------------------------------------------------------------- | ||
+ | SIMPLE | ||
+ | HOUSEHOLDS 1,909 0:00 0:00 | ||
+ | INDIVIDUALS 5,000 0:00 0:00 | ||
+ | ---------------------------------------------------------------------------- | ||
+ | Total 0:00 0:03 | ||
+ | |||
+ | Omnidex indexes updated | ||
+ | > | ||
+ | </code> | ||