liveBook · Manning

Dataset split

A dataset split is the division of a dataset into distinct subsets assigned different purposes, such as training, validation, or testing.

How 21 Manning books explain it

Fast Python: High performance techniques for large datasets

How it is used
Divides data for separate storage, larger-than-memory processing, and parallel computation rather than assigning modeling roles.
How deep it goes
Works through Parquet partition layout, Dask task graphs, persistence, and repartitioning, including memory and communication trade-offs.
Examples
Uses a taxi Parquet directory partitioned by vendor and passenger count, plus a three-partition Dask CSV task graph.
What you can do after
Operate/configure PyArrow and Dask partitions, inspect task graphs, and choose when to persist, repartition, or write distributed output.

Read how Fast Python: High performance techniques for large datasets explains dataset split →

Advanced Algorithms and Data Structures

Sharding is the technique of partitioning data, users, or transactions across different machines or clusters.

How it is used
Scales growing nearest-neighbor searches and distributes DBSCAN while accounting for neighbors across shard boundaries.
How deep it goes
Works through extended-grid sharding and MapReduce reconciliation, but gives no general running-time bound for dataset splitting.
Examples
Illustrates geographical and random search shards, then an ε-extended grid whose adjacent DBSCAN results are merged.
What you can do after
Build it from scratch using extended grid shards, local DBSCAN mappers, and reducers that reconcile neighboring results.

Read how Advanced Algorithms and Data Structures explains dataset split →

Latency

A partition is a distinct portion of a dataset assigned to a node for storage or processing.

How it is used
Divides large logical datasets into independently accessible parts to reduce synchronization and support parallel reads and writes.
How deep it goes
Defines partitions, compares layouts and workload boundaries, examines skew, and benchmarks routing; defers actual data placement in the benchmark.
Examples
Uses geographic user groups, database records, zip-code skew, and a one-versus-five-node SQLite REST API latency benchmark.
What you can do after
Practice/perform partitioning by selecting a data boundary, routing requests, checking for skew, and measuring latency without mistaking routing for data placement.

Read how Latency explains dataset split →

Machine Learning Platform Engineering

Dataset splitting is the partitioning of a dataset into subsets for separate training, validation, testing, or other processing purposes.

How it is used
Prepares separate training, validation, and test data for an object-detection pipeline.
How deep it goes
Works through a Kubeflow component's inputs, dependencies, split proportions, output directories, and sanity check.
Examples
Uses an image-and-label dataset split 75/15/10 for training, validation, and testing, then checks output files.
What you can do after
Build it from scratch as a Kubeflow split component that produces organized dataset artifacts for downstream steps.

Read how Machine Learning Platform Engineering explains dataset split →

Amazon Web Services in Action, Third Edition: An in-depth guide to AWS

Sharding is the technique of partitioning a key-space or dataset across multiple nodes so each node stores a distinct portion.

How it is used
Uses sharding to grow an in-memory cache beyond one node’s data capacity or request throughput.
How deep it goes
Explains key distribution, client hashing, shard primaries, and replicas, but gives no shard-creation commands.
Examples
Compares a 22 GB cache needing six 4 GB shards with a 4 GB cache that fits on one node.
What you can do after
Evaluate/understand when to shard an ElastiCache cache instead of using replicas or a larger node.

Read how Amazon Web Services in Action, Third Edition: An in-depth guide to AWS explains dataset split →

Apache Kafka in Action

Sharding divides data across multiple subsystems or database nodes, typically by a shard key.

How it is used
Uses dataset splitting to distribute Kafka topic data for horizontal scaling and parallel processing while preserving order where a key requires it.
How deep it goes
Explains key-based placement and the ordering consequences of changing partition counts, including options for migrating to a new topic.
Examples
Uses city-based trip data and keyed product-price updates, with console commands for producing and consuming Kafka messages.
What you can do after
Operate/configure it by choosing Kafka topic partitions and message keys, then plan a new-topic migration when changing counts would break required ordering.

Read how Apache Kafka in Action explains dataset split →

Microsoft Azure in Action

A partition is a subset of database data stored separately from other subsets for distribution and access management.

How it is used
Uses partitioning to manage growing database data and make relevant subsets faster to access.
How deep it goes
Defines relational partitions and explains partition-key choices, hot partitions, and cross-partition query trade-offs with configuration examples.
Examples
Uses bookstore publication and order dates, plus retail product categories and regions, to illustrate candidate splits.
What you can do after
Operate/configure it with SQL partition functions and schemes or Azure CLI --shard, while weighing uneven load against cross-partition queries.

Read how Microsoft Azure in Action explains dataset split →

Natural Language Processing in Action, Second Edition

A train-test split partitions examples into separate subsets for model fitting and evaluation.

How it is used
Separates labeled comments for fine-tuning a classifier and evaluating its predictions on held-out examples.
How deep it goes
Demonstrates an 80/20 implementation with reproducibility and downstream dataset construction, but does not discuss alternative splitting strategies.
Examples
Uses a toxic-comment DataFrame, six binary toxicity labels, scikit-learn train_test_split, and separate training and evaluation DataFrames.
What you can do after
Apply it via scikit-learn to create reproducible subsets and evaluate a fine-tuned classifier on held-out data.

Read how Natural Language Processing in Action, Second Edition explains dataset split →

Machine Learning System Design

A procedure or method for partitioning data into separate subsets for training, validation, testing, or comparative evaluation.

How it is used
Partitions data for model fitting, tuning, and final evaluation, and assigns comparison groups in experiments.
How deep it goes
Explains holdout roles, ratio choices, leakage controls, and deterministic assignment; defers detailed experimental design.
Examples
Illustrates user-grouped search queries and time-separated retail forecasting data.
What you can do after
Apply it via deterministic user-ID bucketing or time-separated validation, then check leakage and representativeness.

Read how Machine Learning System Design explains dataset split →

Kafka for Architects

Partitioning is the distribution of records across separate partitions so data processing and storage can be divided across resources.

How it is used
Distributes topic records for parallel consumption while determining which related messages can retain order together.
How deep it goes
Explains keyed and keyless assignment, round-robin distribution, and single-partition trade-offs; leaves custom partitioner design undeveloped.
Examples
Uses customer profile and transaction topics to choose keys, plus daily top-ten orders to expose cross-partition aggregation.
What you can do after
Operate/configure it by choosing producer assignment and documenting keys against ordering, load distribution, and parallelism requirements.

Read how Kafka for Architects explains dataset split →

Deep Learning with R, Third Edition

Sharding is the partitioning of a variable or data object into distinct chunks assigned to different devices.

How it is used
Uses sharding to distribute model variables across devices when a full model cannot fit on one device.
How deep it goes
Explains per-dimension replication and sharding, then configures variable layouts; stops short of implementing a distribution system.
Examples
Uses a four-way split of a (32, 64) variable, Dense-layer layouts, and 50 text-data file shards.
What you can do after
Operate/configure it with Keras DeviceMesh, LayoutMap, and ModelParallel to assign model-variable chunks to devices.

Read how Deep Learning with R, Third Edition explains dataset split →

Deep Learning with Python, Third Edition

One of the K disjoint subsets created when data is split for cross-validation.

How it is used
Uses disjoint folds to reduce reliance on a high-variance single validation split when data is scarce.
How deep it goes
Works through fold slicing, training on remaining partitions, score averaging, and per-epoch validation histories.
Examples
Shows four validation scores ranging from 0.232 to 0.349, their 0.296 mean, and NumPy-based fold construction.
What you can do after
Build it from scratch by slicing training arrays into folds, evaluating fresh models, and averaging their validation scores.

Read how Deep Learning with Python, Third Edition explains dataset split →

Causal Inference for Data Science

A train-test split partitions observations into a training subset for fitting a model and a test subset for evaluating its predictions.

How it is used
Separates model fitting from evaluation to estimate performance on future data and expose overfitting.
How deep it goes
Defines train and test roles, describes prediction-error checking, and flags overfitting that ordinary cross-validation may not prevent.
Examples
Uses an exam-study analogy and license-plate recognition to contrast held-out evaluation with deployment data.
What you can do after
Evaluate model performance by fitting on train data, predicting test outcomes, and comparing predictions with observed results.

Read how Causal Inference for Data Science explains dataset split →

Grokking Concurrency

Partitioning is a parallel algorithm design technique that identifies independent computational tasks or data subsets for concurrent execution.

How it is used
Identifies opportunities for independent work as the first step in designing concurrent systems.
How deep it goes
Defines fine-grained task discovery and data or task decomposition, while deferring processor and machine constraints.
Examples
Uses road-trip planning tasks and independently processed data subsets as illustrations.
What you can do after
Build concurrent designs by identifying fine-grained tasks that can execute independently.

Read how Grokking Concurrency explains dataset split →

Cyber Threat Hunting

A train-test split partitions a labeled data set into separate subsets for model training and performance evaluation.

How it is used
Separates labeled data for supervised model training and performance evaluation.
How deep it goes
Explains an 80-20 workflow, verifies class balance, and stops before model evaluation details.
Examples
Uses 20,001 labeled data points, X_train and X_test shapes, and pie charts showing class distributions.
What you can do after
Apply it via scikit-learn to create training and testing subsets and inspect their class balance.

Read how Cyber Threat Hunting explains dataset split →

Transformers in Action

Sharding is the partitioning of model parameters, data, or computation across multiple devices or storage units.

How it is used
Distributes model state and computation across devices to make large-model training and inference feasible.
How deep it goes
Defines sharding, explains its training and inference roles, and compares tensor, pipeline, optimizer, and hybrid strategies.
Examples
Uses a 175-billion-parameter model split across 64 GPUs to illustrate per-device memory reduction.
What you can do after
Evaluate sharding strategies by memory savings, communication cost, and intended use case.

Read how Transformers in Action explains dataset split →

Hugging Face in Action

A dataset split is a partition of a dataset designated for a particular stage or purpose in machine-learning workflows.

How it is used
Uses named subsets to control downloading, model training, and evaluation in Hugging Face workflows.
How deep it goes
Defines split roles, shows row counts and records, and demonstrates selection; it does not explain creating partitions from raw data.
Examples
Demonstrates IMDb and Yelp Polarity datasets, DatasetDict outputs, row inspection, and Trainer dataset assignment.
What you can do after
Apply it via Hugging Face Datasets to download, inspect, and assign subsets for training or evaluation.

Read how Hugging Face in Action explains dataset split →

C++ Concurrency in Action, Second Edition

Data-based work division assigns different portions of input data to different threads for processing.

How it is used
Guides the choice of how concurrent application work is assigned across threads.
How deep it goes
Introduces data division as the first among several techniques for dividing work between threads.
What you can do after
Evaluate data division as an option when choosing how threads should perform work.

Read how C++ Concurrency in Action, Second Edition explains dataset split →

Graph Neural Networks in Action

A partition of a dataset into training and testing subsets for model fitting and evaluation.

How it is used
Prepares graph data for model training, validation, testing, and inference.
How deep it goes
Explains split creation, index preservation, graph conversion, and mask-based training, but not statistical split theory.
Examples
Demonstrates a stratified 20% split with retained indices, NetworkX conversion, PyTorch Geometric tensors, and a GCN pipeline.
What you can do after
Apply it via train_test_split and PyTorch Geometric to prepare graph data and restrict training loss to selected nodes.

Read how Graph Neural Networks in Action explains dataset split →

Grokking Algorithms, Second Edition

Partitioning is the process of dividing a sequence around a selected pivot into groups based on their comparison with the pivot.

How it is used
Uses partitioning to divide quicksort’s sorting work into smaller groups.
How deep it goes
Works through pivot selection, grouping, and recursive sorting, but defers how to choose a good pivot.
Examples
Uses small arrays, including [10, 5, 2, 3] and a three-element example with pivot 33.
What you can do after
Apply the pivot-and-group step within a recursive quicksort procedure.

Read how Grokking Algorithms, Second Edition explains dataset split →

Graph Algorithms for Data Science

A dataset split partitions available data into separate subsets for purposes such as feature generation, training, validation, and testing.

How it is used
Structures training, testing, and validation data for evaluating link-prediction and knowledge-graph models.
How deep it goes
Explains split ratios, negative-example balancing, leakage risks, and PyKEEN implementation, but not deeper sampling mechanics.
Examples
Uses person links with age and education, plus PyKEEN triples split into 0.8, 0.1, and 0.1 proportions.
What you can do after
Apply it via PyKEEN's TriplesFactory.split method and construct evaluation data for link prediction.

Read how Graph Algorithms for Data Science explains dataset split →

Related concepts

These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.