Selasa, 30 November 2010

Visual Foxpro


Visual Foxpro
Visual FoxPro adalah bahasa pemrograman berorientasi objek dan prosedural dari Microsoft. Awalnya bahasa pemrograman ini dikenal dengan nama FoxBASE yang diluncurkan oleh Fox Software pada awal 1984. Fox Technologies kemudian bergabung dengan Microsoft pada 1992 sehingga di depan nama FoxBASE ditambahkan awalan "Visual".
Versi terakhir FoxPro (9.0) dapat berjalan pada sistem operasi Mac OS, DOS, Windows, dan Unix. Visual FoxPro 3.0, versi "Visual" pertama, akhirnya tersingkir karena hanya mendukung Mac OS dan Windows, dan versi berikutnya hanya mendukung Windows saja. Versi terkini Visual FoxPro adalah berdasarkan teknologi COM dan Microsoft telah menyatakan bahawa mereka tidak berniat untuk mencipta versi Microsoft .NET.


PostgreSQL, sering hanya Postgres, adalah sebuah object-relational database management system (ORDBMS). Hal ini dirilis di bawah lisensi MIT-gaya dan dengan demikian perangkat lunak sumber bebas dan terbuka. Seperti banyak program open-source lainnya, PostgreSQL tidak dikontrol oleh satu perusahaan - sebuah komunitas global pengembang dan perusahaan mengembangkan sistem.


Sejarah

PostgreSQL berevolusi dari proyek Ingres di University of California, Berkeley. Pada tahun 1982, pemimpin proyek, Michael Stonebraker, kiri Berkeley untuk membuat versi berpemilik dari Ingres. Ia kembali ke Berkeley pada 1985 dan memulai sebuah proyek pasca-Ingres untuk mengatasi masalah dengan sistem database kontemporer yang telah menjadi semakin jelas pada awal 1980-an. Proyek baru, Postgres, bertujuan untuk menambahkan fitur paling sedikit dibutuhkan untuk benar-benar mendukung jenis. Fitur-fitur ini termasuk kemampuan untuk menentukan jenis dan untuk sepenuhnya menggambarkan hubungan - sesuatu yang digunakan secara luas sebelumnya, tetapi dikelola sepenuhnya oleh pengguna. Di Postgres, database "dipahami" hubungan, dan bisa mengambil informasi dalam tabel terkait dengan cara alami menggunakan aturan. Postgres digunakan banyak ide-ide dari Ingres, tetapi tidak kode.

Mulai tahun 1986, tim menerbitkan sejumlah makalah yang menjelaskan dasar sistem, dan tahun 1988 memiliki versi prototipe. Tim merilis versi 1 ke sejumlah kecil pengguna pada bulan Juni 1989, maka versi 2 dengan sistem aturan ditulis ulang pada Juni 1990. Versi 3, dirilis pada tahun 1991, sekali lagi menulis ulang sistem aturan, dan menambahkan dukungan untuk beberapa manajer penyimpanan dan perbaikan mesin query. Pada tahun 1993 jumlah besar pengguna mulai membanjiri proyek dengan permintaan dukungan dan fitur. Setelah merilis versi 4 - terutama pembersihan a - proyek berakhir.

Tapi open-source pengembang dapat memperoleh salinan dan mengembangkan sistem lebih lanjut, karena Berkeley telah merilis Postgres di bawah lisensi MIT-style. Pada tahun 1994, Berkeley mahasiswa pascasarjana Andrew Yu dan Jolly Chen menggantikan juru bahasa Ingres QUEL query berbasis satu untuk bahasa query SQL, menciptakan Postgres95. Kode ini dirilis di web.

Pada bulan Juli 1996, Marc Fournier di Hub.Org Layanan Jaringan menyediakan server non-universitas pembangunan pertama untuk pengembangan usaha open-source. Seiring dengan Bruce Momjian dan Vadim B. Mikheev, bekerja mulai menstabilkan kode diwarisi dari Berkeley. Versi open source pertama dirilis pada tanggal 1 Agustus 1996.

Pada tahun 1996, proyek ini berganti nama menjadi PostgreSQL untuk mencerminkan dukungan untuk SQL. Rilis PostgreSQL versi 6.0 pertama kali dibentuk pada bulan Januari 1997. Sejak itu, perangkat lunak telah dipertahankan oleh sekelompok pengembang database dan sukarelawan di seluruh dunia, koordinasi melalui Internet.

Bahasa prosedural

bahasa prosedural (sering disebut prosedur yang tersimpan) memungkinkan blok kode yang akan dieksekusi oleh server database, dan dapat ditulis dalam bahasa pemrograman lain selain SQL dan Prosedural C. bahasa dapat digunakan untuk membuat fungsi user-defined (subroutine, memicu, agregat dan jendela fungsi), dan juga dapat digunakan dalam ad hoc "DO" blok. Keempat berikut bahasa prosedural disediakan oleh PostgreSQL instalasi standar:

    * PL / pgsql, built-in bahasa yang menyerupai Oracle PL / SQL prosedural
    * PL / Tcl, menyediakan Tcl
    * PL / Perl, Perl menyediakan
    * PL / Python, menyediakan Python, baik versi 2 atau 3

Bahasa lainnya prosedural non-standar yang telah dikembangkan di luar distribusi inti termasuk (namun tidak terbatas pada): PL / Lua (Lua), PL / php (PHP), PL / Ruby (Ruby), PL / sh (setiap Unix seperti shell), PL / skema (Skema), PL / Java (Jawa), PL / R (R) dan bahkan PL / LOLCODE.

Indeks

PostgreSQL termasuk built-in mendukung untuk B-tree, hash, GIST dan Gin indeks. Selain itu, metode indeks yang ditetapkan pengguna dapat diciptakan, meskipun hal ini cukup proses yang terlibat. Indeks pada PostgreSQL juga mendukung fitur berikut:

    indeks Ekspresi * dapat dibuat dengan indeks hasil dari suatu ekspresi atau fungsi, bukan hanya nilai kolom.
    * Indeks parsial, yang hanya indeks bagian dari meja, dapat dibuat dengan menambahkan klausa WHERE ke ujung pernyataan CREATE INDEX. Hal ini memungkinkan indeks yang lebih kecil yang akan dibuat.
    * Perencana mampu menggunakan beberapa indeks bersama-sama untuk memenuhi query yang kompleks, menggunakan bitmap operasi sementara indeks di memori.


 MVCC

PostgreSQL mengelola concurrency melalui sistem yang dikenal sebagai Multi-Version Concurrency Control (MVCC), yang memberikan setiap pengguna "snapshot" dari database, sehingga perubahan yang akan dibuat tanpa dapat dilihat oleh pengguna lain sampai transaksi dilakukan. Hal ini sebagian besar menghilangkan kebutuhan untuk kunci membaca, dan memastikan database mempertahankan ACID (atomicity, konsistensi, isolasi, daya tahan) prinsip secara efisien.

Jenis Data

Berbagai macam tipe data asli yang didukung, termasuk:

    * Panjang Variabel array (termasuk teks dan jenis komposit) sampai dengan ukuran penyimpanan 1GB total.
    * Numeric presisi Sewenang-wenang
    * Geometris primitif
    * Alamat IPv4 dan IPv6
    * CIDR blok dan alamat MAC
    * XML mendukung XPath query (per 8.3)
    * UUID (per 8.3)

Selain itu, pengguna dapat membuat tipe data sendiri yang biasanya dapat dilakukan sepenuhnya diindeks melalui infrastruktur GIST PostgreSQL's. Contoh ini termasuk sistem informasi geografis (SIG) tipe data dari proyek PostGIS untuk PostgreSQL.

jenis baru dari hampir semua objek di dalam database dapat dibuat, termasuk:

    * Pemain
    * Konversi
    * Data jenis
    * Domain
    * Fungsi, termasuk fungsi agregat
    * Indeks
    * Operator (yang ada dapat kelebihan beban)
    * Prosedural bahasa

Derivatif  Kepemilikan dan dukungan

Meskipun lisensi diperbolehkan berdasarkan produk proprietary Postgres, kode tidak berkembang dalam ruang berpemilik pada awalnya. Para cabang utama berasal ketika Paula Hawthorn (sebuah Ingres asli anggota tim yang pindah dari Ingres) dan Michael Stonebraker membentuk ilustrasi Teknologi Informasi untuk menghasilkan produk eksklusif berdasarkan Postgres.

Pada tahun 2000, mantan Red Hat investor menciptakan perusahaan Great Bridge untuk membuat sebuah produk eksklusif berdasarkan PostgreSQL dan bersaing dengan vendor proprietary database. Great Bridge mensponsori beberapa pengembang PostgreSQL dan banyak sumber daya disumbangkan kembali ke masyarakat,
tetapi dengan akhir 2001 ditutup karena persaingan ketat dari perusahaan seperti Red Hat dan kondisi pasar yang buruk.

Pada tahun 2001, Command Prompt, Inc dirilis Mammoth PostgreSQL, produk eksklusif berdasarkan PostgreSQL. Pada tahun 2008, Command Prompt, Inc merilis sumber di bawah lisensi asli. Command Prompt, Inc terus mendukung masyarakat PostgreSQL aktif melalui pengembang dan sponsor proyek termasuk php PL / / Perl, PL, dan hosting proyek komunitas seperti PostgreSQL Build Farm.

Pada bulan Januari 2005, PostgreSQL menerima dukungan oleh database vendor Pervasive Software, dikenal untuk produk Btrieve nya yang di mana-mana pada platform NetWare Novell. Meresap mengumumkan dukungan komersial dan partisipasi masyarakat dan mencapai beberapa keberhasilan. Pada bulan Juli 2006, Pervasif meninggalkan pasar dukungan PostgreSQL.

Pada pertengahan tahun 2005 dua perusahaan lain mengumumkan rencana untuk membuat produk proprietary berdasarkan PostgreSQL dengan fokus pada ceruk pasar yang terpisah. EnterpriseDB menambahkan fungsionalitas untuk memungkinkan aplikasi yang ditulis untuk bekerja dengan Oracle untuk lebih mudah dijalankan dengan PostgreSQL. Greenplum memberikan kontribusi tambahan diarahkan pada gudang data dan aplikasi bisnis intelijen, termasuk proyek BizGres.

Pada bulan Oktober 2005, John Loiacono, wakil presiden eksekutif perangkat lunak di Sun Microsystems, berkomentar: "Kami tidak akan OEM Microsoft tapi kami melihat PostgreSQL sekarang,"meskipun tidak spesifik yang dirilis pada waktu itu. Pada November 2005, Sun telah mengumumkan dukungan untuk PostgreSQL. Pada Juni 2006, Sun Solaris 10 (06/06 rilis) dikirimkan dengan PostgreSQL.

Pada bulan Agustus 2007, EnterpriseDB mengumumkan
yang Postgres Resource Center dan EnterpriseDB Postgres, dirancang sebagai distribusi sepenuhnya dikonfigurasi dari PostgreSQL termasuk modul contrib banyak dan add-pada komponen. EnterpriseDB Postgres diubah namanya menjadi Postgres Plus pada Maret 2008. Postgres Plus tersedia dalam dua versi: Postgres Plus Standar Server yang memiliki semua fitur dari PostgreSQL ditambah tambahan pengujian QA, komponen terpadu, tuning dan menginstal satu-klik, dan Postgres Plus Advanced Server yang memiliki semua fitur Postgres Standar ditambah Oracle Server kompatibilitas, fitur skalabilitas, dan DBA dan pengembang alat. Kedua versi tersebut tersedia secara gratis dan sepenuhnya didukung, meskipun versi gratis Postgres Plus Advanced Server dibatasi oleh lisensi "penggunaan terbatas", yang didefinisikan sebagai "terbatas pada CPU tunggal, menggunakan 1 GB RAM, menyimpan tidak lebih dari 6GB data dalam lingkungan NON-PRODUKSI. "

1 komentar: