SOFTWARE / DATA TOOL

Data Workbench

A browser-based tool for inspecting, searching, editing, analyzing, and benchmarking structured datasets.

JavaScript CSV / TSV / JSON Data Structures Algorithms
23,220 rows tested
7 columns in test dataset
5,000 benchmark queries
3 lookup strategies
01

Overview

Data Workbench began as a Data Structures and Algorithms course project and was later redesigned independently into a more general structured-data exploration tool.

The current application can load real CSV, TSV, and JSON datasets, normalize their structure, search and sort records, calculate numeric summaries, modify data, export CSV files, and compare different lookup strategies.

02

Capabilities

Import

CSV, TSV, JSON arrays, JSON objects, and objects containing a data array.

Explore

Search globally or by column, sort fields, and browse records through pagination.

Edit

Add, modify, and delete records directly inside the current dataset.

Analyze

Automatically calculate mean, median, minimum, and maximum for numeric fields.

Benchmark

Compare linear search, a Map index, and sorted-array binary search.

Export

Export the current edited dataset back to CSV.

03

Architecture

File CSV / TSV / JSON
Parse Schema discovery
Normalize Record model
State Working dataset
Operate Search / Analyze / Edit
Schema handling

Duplicate CSV headers are retained safely, blank headers are ignored, and malformed extra fields do not silently expand the schema.

JSON normalization

JSON schemas are generated from the union of keys found across the loaded records.

Numeric inference

A field is classified as numeric when at least 80% of its populated values parse as numbers.

04

Search Benchmark

The current benchmark measures repeated exact-match lookups while separating preprocessing cost from lookup cost.

23,220 records value column 5,000 queries median of 5 runs
Strategy Build Search Total
Linear Array 0 ms 439.1 ms 439.1 ms
Map Index 1.0 ms 0.2 ms 1.1 ms
Sorted + Binary 844.2 ms 162.4 ms 1003.3 ms

Binary search reduced lookup time compared with repeated linear scanning, but constructing the sorted representation introduced a substantial upfront cost.

For this workload, the Map index provided the lowest combined build and lookup time. The experiment demonstrates why data-structure selection depends on the complete workload, not lookup complexity alone.

05

Next Revision

Richer column profiling: missing values, unique counts, and stronger typing.

More capable filtering and dataset inspection.

Type-aware numeric sorting inside the benchmark.

Mixed successful and unsuccessful lookup workloads.

Virtualized table rendering for substantially larger datasets.

CURRENT BUILD

Inspect the application directly.

Launch Workbench