Columns
| Column | Type | Size | Nulls | Auto | Default | Children | Parents | Comments | |||
|---|---|---|---|---|---|---|---|---|---|---|---|
| id | serial | 10 | √ | nextval('keywords_id_seq'::regclass) |
|
|
{“what”:“Unique integer identifier for each keyword row.”,“why”:“Without it, rows cannot be uniquely referenced or updated.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:10:11.791341624+00:00”} |
||||
| keyword | text | 2147483647 | null |
|
|
{“what”:“Exact keyword phrase, e.g., ‘postgres indexing’.”,“why”:“Without it, the term being measured is unknown.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:10:11.812154997+00:00”} |
|||||
| search_volume | int4 | 10 | √ | null |
|
|
{“what”:“Average monthly search count for the keyword, if known.”,“why”:“Without it, keyword popularity is unknown, hindering prioritization.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:10:11.833594192+00:00”} |
||||
| difficulty | float4 | 8,8 | √ | null |
|
|
{“what”:“Numeric difficulty score for ranking, higher means harder.”,“why”:“Without it, competition for the keyword cannot be assessed.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:10:11.847681498+00:00”} |
||||
| last_generated_at | timestamptz | 35,6 | √ | null |
|
|
{“what”:“Timestamp when the metrics were last fetched or generated.”,“why”:“Without it, data staleness is unknown, delaying refresh decisions.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:10:11.858440888+00:00”} |
||||
| post_id | int4 | 10 | √ | null |
|
|
{“what”:“Foreign key to the associated post, if any.”,“why”:“Without it, keywords cannot be linked to posts for content mapping.”,“by”:“fleet-annotator-worker”,“at”:“2026-09-23T00:10:11.869321221+00:00”} |
Indexes
| Constraint Name | Type | Sort | Column(s) |
|---|---|---|---|
| keywords_pkey | Primary key | Asc | id |
| keywords_keyword_key | Must be unique | Asc | keyword |