KdbplusForMortals/contents
From Kx Wiki
Contents |
Kdb+ for Mortals
Chapter 1 - Persistent Tables
Jeffry A. Borror
Table of Contents
- 1.1 Loading Tables from Stored Data
- 1.2 Splayed Tables
- 1.2.0 Overview
- 1.2.0.1 Splayed table Layout
- 1.2.0.2 Limitations of Splaying
- 1.2.1 Splaying a Table
- 1.2.2 Working with Splayed Tables
- 1.2.3 Modifying a Mapped Table in Memory
- 1.2.4 Built-in Operations on the Persisted Splayed Table
- 1.2.4.1 Appending Records
- 1.2.4.2 Sorting and Applying Attributes
- 1.2.5 Manual Operations on Splayed Table Files
- 1.2.5.1 Column Update
- 1.2.5.2 Reordering Columns on Disk
- 1.2.5.3 Sorting by a Column on Disk
- 1.2.5.4 Adding a Column on Disk
- 1.2.5.5 Deleting a Column on Disk
- 1.2.6 Splayed Tables with Symbols
- 1.2.6.1 Splaying Enumerated Symbol Columns
- 1.2.6.2 Merging Saved sym Domains
- 1.2.7 Splayed Tables with Compound Columns
- 1.2.7.1 Compound Column Example
- 1.2.7.2 String Columns
- 1.2.7.3 Symbols vs. Strings
- 1.2.8 Links between Splayed Tables
- 1.2.9 Query Execution on Splayed Tables (Advanced)
- 1.3 Partitioned Tables
- 1.3.0 Overview
- 1.3.1 Partitions
- 1.3.1.1 Partition Layout
- 1.3.1.2 Partition Examples
- 1.3.1.3 Partition Domain
- 1.3.2 Creating Partitions
- 1.3.2.1 Partitioning Tables without Symbols
- 1.3.2.2 Partitioning Tables with Symbols
- 1.3.3 Working with Partitioned Tables
- 1.3.3.1 The select Template
- 1.3.3.2 The Virtual Column i in Partitioned Tables
- 1.3.4 Query Execution on Partitioned Tables (Advanced)
- 1.3.4.0 Overview
- 1.3.4.1 Map-Reduce
- 1.3.4.2 Map-Reduce in Queries
- 1.3.4.3 Map-Reduce Aggregates vs. Brute Force
- 1.3.5 Modifying Partitioned Tables
- 1.3.5.1 Appending Records within a Partition
- 1.3.5.2 Modifying Data in a Partition
- 1.3.6 Multiple Partitioned Tables
- 1.3.6.1 Daily trades and quotes
- 1.3.6.2 Missing Table in Partition
- 1.3.7 Examples of Partition Domains
- 1.3.7.1 Yearly
- 1.3.7.2 Monthly
- 1.3.7.3 int
- 1.3.8 Links and Partitioned Tables
- 1.3.8.1 Linking to a Column in Memory
- 1.3.8.2 Linking to a Column on Disk
- 1.4 Segments
- 1.4.0 Overview
- 1.4.1 Segmented Tables
- 1.4.1.1 Contrasting Partitions and Segments
- 1.4.1.2 Segment Layout Examples
- 1.4.2 Creating Segments
- 1.4.2.1 Trades Segmented by Day of Week
- 1.4.2.2 Trades Segmented by Symbol Range
- 1.4.2.3 Trades Segmented by Exchange
- 1.4.2.4 Trades Segmented across Partitions
- 1.4.3 Multiple Segmented Tables
- 1.4.4 Query Execution on Segmented Tables (Advanced)
- 1.4.4.1 Preliminaries
- 1.4.4.2 Execution over Segments
- 1.4.4.3 Slaves and Cores
- 1.4.5 Examples
- 1.5 Using .Q Utilities for Splayed and Partitioned Tables
- 1.6 Kdb+ Database
- 1.6.1 Comparing kdb+ to an RDBMS
- 1.6.2 The Physical Layout of a kdb+ Database
- 1.6.2.1 The sym File
- 1.6.2.2 Other Serialized Files in the Root
- 1.6.2.3 Scripts
- 1.6.2.4 Splayed Tables
- 1.6.2.5 Partitioned Tables
- 1.6.2.6 Segmented Tables
- 1.6.3 Creating and Loading a Kdb+ Database
- 1.6.3.0 What happens at startup?
- 1.6.3.1 Serialized q Entities
- 1.6.3.2 Splayed Tables
- 1.6.3.3 Partitioned Tables
- 1.6.3.4 Segmented Tables
- 1.6.3.5 Scripts
- 1.6.3.6 Putting It All Together
- 1.6.4 There's No Place Like QHOME
- 1.6.4.1 The Environment Variables
- 1.6.4.2 Where is q?
Next: 1.1 Loading Tables from Stored Data
Table of Contents