Glosarium PDL
Rujukan cepat istilah PDL (IF4040). Definisi sengaja singkat dan boleh mengulang UTS_PDL; penjelasan lengkap ada di bagian yang di-link pada kolom ketiga (angka seperti 2.6 berarti bagian 2.6 di UTS_PDL). Istilah bertanda (P) adalah prasyarat yang tidak dijelaskan di materi mana pun (bagian 1 UTS_PDL, tambahan di luar materi kuliah). Cakupan saat ini: note 12 sampai 20. Istilah umum SWE/AI/Data ada juga di Glosarium-Teknis.
A. ER dan Relasional
| Istilah | Penjelasan singkat | Dijelaskan lengkap di |
|---|---|---|
| Entity, entity set | Objek yang dapat dibedakan; himpunan entity bertipe sama | 2.2 |
| Relationship set | Relasi matematis antar n ≥ 2 entity set | 2.2 |
| Role | Peran entity set dalam relationship (mis. course_id dan prereq_id) | 2.2 |
| Degree (binary/ternary) | Jumlah entity set dalam relationship | 2.2 |
| Composite / multivalued / derived attribute | Atribut dapat dipecah / bernilai banyak { } / dihitung dari atribut lain | 2.2 |
| Mapping cardinality | One-to-one, one-to-many, many-to-one, many-to-many | 2.2 |
| Total vs partial participation | Entity wajib berpartisipasi (garis ganda) vs tidak wajib | 2.2 |
| Weak entity set | Entity set tanpa primary key sendiri, bergantung pada identifying entity; double rectangle | 2.2 |
| Discriminator | Atribut pembeda weak entity (garis bawah putus-putus) | 2.2 |
| Identifying relationship | Relationship weak entity ke identifying entity; double diamond | 2.2 |
| Specialization / generalization | Memecah entity set ke subgroup (top-down) / menggabungkan (bottom-up); segitiga ISA | 2.2 |
| Disjoint vs overlapping | Satu entity hanya di satu lower-level vs boleh lebih | 2.2 |
| Aggregation | Memperlakukan relationship sebagai entity abstrak | 2.2 |
| Redundancy, incompleteness | Dua kesalahan desain: informasi berulang; aspek tak termodelkan | 2.2 |
| Logical vs physical design | Menentukan skema vs tata letak fisik | 2.2 |
| Superkey, candidate key, primary key, alternate key | Himpunan atribut pengidentifikasi; superkey minimal; yang terpilih; yang tidak terpilih | 2.3 |
| Foreign key | Nilai harus muncul di relasi lain (referencing vs referenced) | 2.3 |
| Foreign key, normalisasi | Penjelasan dasar juga di 14_Relational_Data_Model | 2.3 |
| Atomic value, null | Nilai tak terbagi; nilai tak diketahui | 2.3 |
| DML, DDL | Bahasa manipulasi dan definisi data | 2.3 |
| Outer join (left/right/full) | Join yang mempertahankan tuple tanpa pasangan dengan null | 2.3 |
| Correlated subquery | Subquery yang memakai variabel query luar | 2.3 |
| View, materialized view | Relasi virtual; relasi hasil view yang disimpan fisik dan perlu di-refresh | 2.3 |
| Trigger, stored procedure (P) | Kode otomatis saat perubahan; rutin tersimpan di database | 1 |
| ACID | Atomic, Consistent, Isolated, Durable | 2.4 |
| BASE, CAP, MapReduce | Dijelaskan di materi lama | 11_NoSQL |
| OLTP (P) | Online Transaction Processing | 1 |
B. NoSQL Umum
| Istilah | Penjelasan singkat | Dijelaskan lengkap di |
|---|---|---|
| NoSQL | ”Not Only SQL”; penyimpanan di luar struktur relasional tradisional | 2.4 |
| Schema-less | Tidak wajib mendefinisikan struktur di muka | 2.4, 2.5, 2.6 |
| Scale vertically vs horizontally | Memperbesar satu mesin vs menambah jumlah mesin | 2.4, 2.8 |
| Row-oriented vs column-oriented | Menyimpan seluruh kolom satu baris bersama vs seluruh nilai satu kolom bersama | 2.4 |
| Column store | Blok penyimpanan hanya berisi satu kolom; sparse, distributed, multi-dimensional sorted map | 2.4 |
| Codasyl | Database berbasis network data model | 2.4 |
| Multi-model | Satu core mendukung beberapa model (mis. ArangoDB) | 2.4 |
| Big Data (P) | Data terlalu besar/cepat/beragam untuk satu server konvensional | 1 |
| Block disk, seek, cache (P) | Satuan baca disk; waktu pindah ke lokasi; memori penyimpan cepat | 1 |
| Hadoop, HDFS (P) | Platform data terdistribusi dan sistem file-nya | 1 |
C. Key-Value
| Istilah | Penjelasan singkat | Dijelaskan lengkap di |
|---|---|---|
| Key, value | Alamat pengacu; objek (byte) terkait | 2.5 |
| Namespace | Kumpulan pasangan key-value tanpa key duplikat; prefix implisit | 2.5 |
| Key-naming convention | Pola nama key <entity>:<id>:<atribut> | 2.5 |
| Partition, partition key | Subset database per server; key penentu partisi | 2.5 |
| Hash function | Memetakan input ke string berukuran tetap | 2.5 |
| Cluster, heartbeat | Sekumpulan komputer terkoordinasi; pesan penanda masih hidup | 2.5 |
| Master node vs masterless | Satu master menerima baca/tulis vs semua node setara | 2.5 |
| Ring | Server tertaut sirkular ke dua tetangga | 2.5 |
| Replication | Menyimpan banyak salinan | 2.5 |
| Range partitioning vs hashing | Nilai berdekatan ke node sama vs sebaran merata | 2.5, 2.6 |
| TTL key | Key sementara dengan masa hidup | 2.5 |
| Atomic aggregate | Nilai yang harus bersama disimpan dengan satu assignment | 2.5 |
| Enumerable keys | Key dengan counter untuk mengambil rentang | 2.5 |
| Inverted index | Pasangan key-value untuk pencarian lewat atribut lain | 2.5 |
| Ordered key-value database | Menjaga struktur terurut sehingga mendukung range query | 2.5 |
D. Document
| Istilah | Penjelasan singkat | Dijelaskan lengkap di |
|---|---|---|
| Document, collection | Pasangan key-value terurut; kumpulan dokumen sejenis | 2.6 |
| JSON | Format pasangan key-value bersarang dalam { } dan [ ] | 2.6 |
| Embedded document | Dokumen di dalam dokumen, menghindari join | 2.6 |
| Polymorphic schema | Banyak struktur implisit dalam satu collection | 2.6 |
| Index | Struktur untuk mencari cepat (analog indeks buku) | 2.6 |
| Normalization vs denormalization | Mengurangi anomali vs menambah redundansi demi performa | 2.6 |
| Nested loop join | Algoritma join memeriksa setiap pasangan tuple | 2.6 |
| Embedding vs referencing | Simpan di dalam dokumen vs lewat ID | 2.6 |
| Mutable document | Dokumen yang ukuran/isinya berubah; bisa dipindahkan bila tumbuh | 2.6 |
| ETL | Extraction, Transformation, Load antara dua basis data | 2.6 |
| Parent/child reference, ancestors | Pola hierarki | 2.6 |
| Document Interaction Diagram (DID), JSON Schema | Model logis dokumen dan spesifikasi tipe dokumen | 2.6 |
| Vertical partitioning | Memisah kolom tabel | 2.6 |
| Horizontal partitioning (sharding), shard, shard key | Memisah baris/dokumen ke server berbeda; kunci penentu | 2.6 |
| Range / hash / list partitioning | Algoritma penempatan ke shard | 2.6 |
| MSDS | Material Safety Data Sheet (studi kasus) | 2.6 |
E. Column Family
| Istilah | Penjelasan singkat | Dijelaskan lengkap di |
|---|---|---|
| Google BigTable | Penyimpanan terdistribusi Google (2006), model column family | 2.7 |
| Column family | Kumpulan kolom terkait yang sering dipakai bersama | 2.7 |
| Keyspace | Container top-level, analog schema relasional | 2.7 |
| Row key | Pengidentifikasi row, juga partisi dan urutan | 2.7 |
| Column (name, timestamp, value) | Tiga bagian kolom | 2.7 |
| Valueless column | Nama kolom membawa data | 2.7 |
| Hotspotting | Operasi menumpuk di sedikit server karena key sekuensial | 2.7 |
| Primary vs secondary index | Pada row key (otomatis) vs pada column value | 2.7 |
| Hinted handoff | Tulis tetap diterima sementara saat node tujuan tidak tersedia | 2.7 |
| Partitioner, lexicographic order | Penentu urutan row Cassandra; urutan seperti kamus (P) | 2.7, 1 |
| CQL | Cassandra Query Language, mirip SQL | 2.7 |
| HBase, Cassandra, Accumulo | Column family database; HBase di atas HDFS | 2.7 |
| Zookeeper, RegionServer, Master Server | Komponen HBase; Zookeeper berpotensi SPOF | 2.7 |
| Peer-to-peer | Semua node setara tanpa single point of failure (Cassandra) | 2.7 |
| Compaction, commit log, bloom filter (P) | Penggabungan data, catatan tulis, pemeriksa key cepat | 1 |
F. Graph
| Istilah | Penjelasan singkat | Dijelaskan lengkap di |
|---|---|---|
| Vertex, edge | Entitas; relasi (juga link/arc) | 2.8 |
| Weight, directed/undirected | Nilai pada edge; arah edge | 2.8 |
| Path, loop, cycle | Rangkaian vertex dan edge; edge ke diri sendiri; path kembali ke awal | 2.8 |
| Tree, root | Graf berjenjang dengan satu titik awal | 2.8, 1 |
| Bipartite graph | Dua himpunan vertex, edge hanya antar himpunan | 2.8 |
| Multigraph | Beberapa edge antar sepasang vertex | 2.8 |
| Flow network, source, sink | Graf berarah berkapasitas dengan titik awal dan akhir aliran | 2.8 |
| Isomorphism | Korespondensi persis vertex dan edge dua graf | 2.8 |
| Order, size | Jumlah vertex; jumlah edge | 2.8 |
| Degree, closeness, betweenness, centrality | Ukuran pentingnya vertex; centrality adalah istilah payung | 2.8 |
| Union, intersection, traversal | Operasi khas graf | 2.8 |
| Dijkstra’s algorithm | Jalur terpendek, pertumbuhan sebanding vertex kuadrat | 2.8 |
| Cypher, Gremlin | Bahasa query deklaratif (Neo4j) dan traversal (TinkerPop) | 2.8 |
| Neo4j, ArangoDB, Titan | Graph database | 2.8, 2.4 |
| DFS, BFS (P) | Penelusuran graf kedalaman/ keluasan | 1 |
| Laju pertumbuhan O(n²) (P) | Cara menyatakan pertumbuhan waktu terhadap ukuran data | 1 |
| BLOB | Binary Large Object | 2.8 |
G. XML
| Istilah | Penjelasan singkat | Dijelaskan lengkap di |
|---|---|---|
| XML, SGML, W3C | Markup extensible; induknya; badan standar | 2.9 |
| Tag, element, atribut | Label; bagian data; pasangan name=value | 2.9 |
| Properly nested | Setiap start tag punya end tag unik dalam parent yang sama | 2.9 |
| Mixed content | Campuran teks dan subelemen | 2.9 |
| Namespace | Prefix terikat URI untuk membedakan tag sama | 2.9 |
| URI (P) | Pengenal sumber daya berbentuk teks | 1 |
| CDATA, PCDATA | String yang tidak diinterpretasi sebagai tag; isi string dalam DTD | 2.9 |
| DTD | Document Type Definition: struktur, tanpa tipe data | 2.9 |
| ID, IDREF, IDREFS | Identifier unik; rujukan; himpunan rujukan | 2.9 |
#REQUIRED, #IMPLIED | Atribut wajib; opsional | 2.9 |
| XML Schema | Skema bertipe, key dan keyref, ditulis dalam XML | 2.9 |
xs:key, xs:keyref | Key dan foreign key pada XML Schema | 2.9 |
| Tree model, text node | Model pohon dokumen XML | 2.9 |
| XPath, path expression | Memilih bagian dokumen lewat step / | 2.9 |
| XSLT, template | Bahasa transformasi XML; aturan transformasi | 2.9 |
| XQuery, FLWOR | Bahasa query XML: for, let, where, order by, return | 2.9 |
| SAX, DOM | API berbasis event; API berbasis pohon | 2.9 |
| Parsing (P) | Menguraikan teks jadi struktur | 1 |
| String / tree representation | Cara menyimpan XML di relasional | 2.9 |
| Publishing, shredding | Relasional ke XML; XML ke tuple | 2.9 |
SQL/XML (xmlelement, xmlattributes, xmlagg) | Ekstensi SQL untuk output XML | 2.9 |
| SOAP, WSDL, UDDI | Protokol pemanggilan; deskripsi; direktori Web service | 2.9 |
| ODF, OOXML | Format dokumen berbasis XML | 2.9 |
| XML-enabled vs native XML database | Relasional yang menyimpan XML vs database khusus XML | 2.9 |
| CLOB | Character Large Object | 2.9 |
| Object-relational impedance mismatch | Ketidakcocokan model objek dan tabel | 2.9 |
| RDF (P) | Format relasi subjek-predikat-objek | 1 |
| Double-modeling | Memodelkan data dua kali karena format berbeda | 2.9 |
H. Studi Kasus TGTS
| Istilah | Penjelasan singkat | Dijelaskan lengkap di |
|---|---|---|
| TGTS | TransGlobal Transport and Shipping (perusahaan fiktif untuk studi kasus) | 2.5 sampai 2.8 |
| TGTS Tracker | Studi kasus key-value (konfigurasi aplikasi mobile) | 2.5 |
| Customer Manifest | Studi kasus document database | 2.6 |
| Customer Data Analysis | Studi kasus column family | 2.7 |
| Optimizing Transportation Routes | Studi kasus graph | 2.8 |