Star Schema — Customer Dimension (CSV)
The customer dimension of a star schema — surrogate key, name, city, country, and segment. Joins to the sales fact table on customer_key. Names are synthetic.
customer_key,name,city,country,segment
1,Ada Rossi,Lisbon,PT,Enterprise
2,Chen Menon,Dubai,AE,Consumer
3,Priya Patel,Dubai,AE,Consumer
4,Omar Nguyen,Denver,US,Consumer
5,Sofia Garcia,Denver,US,Enterprise
6,Diego Patel,London,GB,Consumer
7,Lena Patel,Dubai,AE,SMB
8,Kenji Haddad,Austin,US,Consumer
9,Amara Nguyen,Lisbon,PT,SMB
10,Ravi Kowalski,Toronto,CA,Enterprise
11,Maria Kowalski,Mumbai,IN,Enterprise
12,Noah Nguyen,Berlin,DE,SMB
13,Yuki Okafor,Toronto,CA,Enterprise
14,Ivan Kim,Lisbon,PT,SMB
15,Zara Kowalski,Mumbai,IN,SMB
16,Leo Nguyen,London,GB,Enterprise
17,Nina Nguyen,Berlin,DE,SMB
18,Sam Rossi,Denver,US,Consumer
19,Tara Haddad,London,GB,Enterprise
20,Hugo Rossi,Dubai,AE,Consumer
21,Ada Okafor,Berlin,DE,Enterprise
22,Chen Menon,Austin,US,Enterprise
23,Priya Kowalski,Austin,US,Enterprise
24,Omar Kowalski,Berlin,DE,SMB
25,Sofia Okafor,Mumbai,IN,SMB
26,Diego Patel,Nairobi,KE,Enterprise
27,Lena Garcia,Lisbon,PT,Enterprise
28,Kenji Haddad,Berlin,DE,Enterprise
29,Amara Haddad,Nairobi,KE,Consumer
30,Ravi Kowalski,Austin,US,SMB
31,Maria Menon,Sydney,AU,Enterprise
32,Noah Kowalski,Berlin,DE,Enterprise
33,Yuki Silva,Sydney,AU,SMB
34,Ivan Nguyen,Austin,US,Enterprise
35,Zara Kowalski,Dubai,AE,SMB
36,Leo Menon,Sydney,AU,Consumer
37,Nina Patel,Mumbai,IN,Consumer
38,Sam Nguyen,Sydney,AU,Consumer
39,Tara Silva,Nairobi,KE,SMB
40,Hugo Patel,Toronto,CA,SMB
Specifications
- Rows
- 40
- Key
- customer_key
- Role
- dimension
What is a .csv file?
CSV (Comma-Separated Values) is a plain-text tabular format where rows are lines and fields are separated by commas, with quoting rules for values that contain delimiters, quotes, or newlines. It has no formal type system and depends on encoding and dialect conventions. It is the most portable format for tabular data exchange.
How to use this file
Use an example CSV to test parsers against quoting and embedded-delimiter edge cases, header handling, encoding detection, and import pipelines into databases or spreadsheets.
How to use this file for testing
“Star Schema — Customer Dimension (CSV)” is a deterministic Novus Examples fixture for Data import, Data engineering, Conversion testing. Realistic faker-generated datasets with documented schemas for testing import and ETL flows.
Documented properties for this file: dimension · 40 rows. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.
Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.
Data fixtures document their exact quirks — delimiters, encodings, null handling, schema, and row counts — in the spec table. Point your parser or importer at the file and assert it handles the documented edge cases; clean and deliberately-messy siblings make before/after diffs straightforward.
Code examples
import pandas as pd
df = pd.read_csv("dim_customer.csv")
print(df.head())
print(df.dtypes)Related files
- csvE-commerce Customers (CSV, 500 rows)A realistic e-commerce customer directory (500 rows) — part of a relational dataset (products, customers, orders) with CSV, JSON, SQL, and Parquet twins for testing joins, imports, and conversion.

- csvE-commerce Orders (CSV, 2000 rows)A realistic e-commerce order lines (customer_id → customers, product_id → products) (2000 rows) — part of a relational dataset (products, customers, orders) with CSV, JSON, SQL, and Parquet twins for testing joins, imports, and conversion.

- csvE-commerce Products (CSV, 200 rows)A realistic e-commerce product catalogue (200 rows) — part of a relational dataset (products, customers, orders) with CSV, JSON, SQL, and Parquet twins for testing joins, imports, and conversion.

- avroAvro — Row Binary + SchemaThe same records as Apache Avro — a compact row-based binary format that embeds its own schema, widely used in Kafka pipelines. For testing Avro decoders and schema evolution.

- csvBank Transactions (CSV, 60 rows)A bank-transaction statement — 60 debits and credits across three accounts (masked numbers) with running balances, categories, and merchants. Synthetic data for testing statement parsers, categorisation, and reconciliation.

- jsonBank Transactions (JSON, 60 records)The bank transactions as a JSON array — the format twin of the CSV, for import and reconciliation testing.

Generated by generation/data_edgecases.py. Free for any use, no attribution required — license.