From 81ce857bc0af4f8400c9547833f09572d1ab6024 Mon Sep 17 00:00:00 2001 From: Andrew Atkinson Date: Tue, 17 Jun 2025 10:17:47 -0500 Subject: [PATCH] Add slotted counters Basic examples: https://github.com/evilmartians/activerecord-slotted_counters --- Gemfile | 2 + Gemfile.lock | 3 + app/models/rider.rb | 3 + app/models/user.rb | 1 + .../20250617150055_create_slotted_counters.rb | 15 +++++ db/structure.sql | 63 ++++++++++++++++++ docs/slotted_counters.md | 26 ++++++++ docs/slotted_counters_bench.rb | 15 +++++ erd.pdf | Bin 55857 -> 57649 bytes 9 files changed, 128 insertions(+) create mode 100644 db/migrate/20250617150055_create_slotted_counters.rb create mode 100644 docs/slotted_counters.md create mode 100644 docs/slotted_counters_bench.rb diff --git a/Gemfile b/Gemfile index 7390283..2bd95bd 100644 --- a/Gemfile +++ b/Gemfile @@ -29,6 +29,8 @@ gem 'strong_migrations' # Use safe Migration patterns gem 'rubocop' +gem "activerecord-slotted_counters" + group :development, :test do gem 'active_record_doctor' gem 'benchmark-ips' diff --git a/Gemfile.lock b/Gemfile.lock index 40200c0..0ddc6b1 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -73,6 +73,8 @@ GEM timeout (>= 0.4.0) activerecord-import (1.8.1) activerecord (>= 4.2) + activerecord-slotted_counters (0.3.0) + activerecord (>= 6.1) activestorage (7.2.2.1) actionpack (= 7.2.2.1) activejob (= 7.2.2.1) @@ -358,6 +360,7 @@ PLATFORMS DEPENDENCIES active_record_doctor activerecord-import (~> 1.5) + activerecord-slotted_counters bcrypt (~> 3.1) benchmark-ips benchmark-memory diff --git a/app/models/rider.rb b/app/models/rider.rb index 119e36e..2425ad0 100644 --- a/app/models/rider.rb +++ b/app/models/rider.rb @@ -1,4 +1,7 @@ class Rider < User + # https://github.com/evilmartians/activerecord-slotted_counters + has_slotted_counter :trip_requests + has_many :trip_requests has_many :trips, through: :trip_requests end diff --git a/app/models/user.rb b/app/models/user.rb index 1791121..583fc4a 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -1,4 +1,5 @@ class User < ApplicationRecord + # counter_cache trips_count has_secure_password validates :first_name, :last_name, presence: true validates :drivers_license_number, diff --git a/db/migrate/20250617150055_create_slotted_counters.rb b/db/migrate/20250617150055_create_slotted_counters.rb new file mode 100644 index 0000000..3d2eb43 --- /dev/null +++ b/db/migrate/20250617150055_create_slotted_counters.rb @@ -0,0 +1,15 @@ +class CreateSlottedCounters < ActiveRecord::Migration[7.2] + def change + create_table :slotted_counters do |t| + t.string :counter_name, null: false + t.string :associated_record_type, null: false + t.integer :associated_record_id, null: false + t.integer :slot, null: false + t.integer :count, null: false + + t.timestamps + end + + add_index :slotted_counters, [:associated_record_id, :associated_record_type, :counter_name, :slot], unique: true, name: 'index_slotted_counters' + end +end diff --git a/db/structure.sql b/db/structure.sql index 8da33d7..c506269 100644 --- a/db/structure.sql +++ b/db/structure.sql @@ -27,6 +27,7 @@ DROP INDEX IF EXISTS rideshare.index_trips_on_driver_id; DROP INDEX IF EXISTS rideshare.index_trip_requests_on_start_location_id; DROP INDEX IF EXISTS rideshare.index_trip_requests_on_rider_id; DROP INDEX IF EXISTS rideshare.index_trip_requests_on_end_location_id; +DROP INDEX IF EXISTS rideshare.index_slotted_counters; DROP INDEX IF EXISTS rideshare.index_locations_on_address; DROP INDEX IF EXISTS rideshare.index_fast_search_results_on_driver_id; ALTER TABLE IF EXISTS ONLY rideshare.vehicles DROP CONSTRAINT IF EXISTS vehicles_pkey; @@ -35,6 +36,7 @@ ALTER TABLE IF EXISTS ONLY rideshare.users DROP CONSTRAINT IF EXISTS users_pkey; ALTER TABLE IF EXISTS ONLY rideshare.trips DROP CONSTRAINT IF EXISTS trips_pkey; ALTER TABLE IF EXISTS ONLY rideshare.trip_requests DROP CONSTRAINT IF EXISTS trip_requests_pkey; ALTER TABLE IF EXISTS ONLY rideshare.trip_positions DROP CONSTRAINT IF EXISTS trip_positions_pkey; +ALTER TABLE IF EXISTS ONLY rideshare.slotted_counters DROP CONSTRAINT IF EXISTS slotted_counters_pkey; ALTER TABLE IF EXISTS ONLY rideshare.schema_migrations DROP CONSTRAINT IF EXISTS schema_migrations_pkey; ALTER TABLE IF EXISTS ONLY rideshare.vehicle_reservations DROP CONSTRAINT IF EXISTS non_overlapping_vehicle_registration; ALTER TABLE IF EXISTS ONLY rideshare.locations DROP CONSTRAINT IF EXISTS locations_pkey; @@ -46,6 +48,7 @@ ALTER TABLE IF EXISTS rideshare.users ALTER COLUMN id DROP DEFAULT; ALTER TABLE IF EXISTS rideshare.trips ALTER COLUMN id DROP DEFAULT; ALTER TABLE IF EXISTS rideshare.trip_requests ALTER COLUMN id DROP DEFAULT; ALTER TABLE IF EXISTS rideshare.trip_positions ALTER COLUMN id DROP DEFAULT; +ALTER TABLE IF EXISTS rideshare.slotted_counters ALTER COLUMN id DROP DEFAULT; ALTER TABLE IF EXISTS rideshare.locations ALTER COLUMN id DROP DEFAULT; DROP SEQUENCE IF EXISTS rideshare.vehicles_id_seq; DROP TABLE IF EXISTS rideshare.vehicles; @@ -57,6 +60,8 @@ DROP SEQUENCE IF EXISTS rideshare.trip_requests_id_seq; DROP TABLE IF EXISTS rideshare.trip_requests; DROP SEQUENCE IF EXISTS rideshare.trip_positions_id_seq; DROP TABLE IF EXISTS rideshare.trip_positions; +DROP SEQUENCE IF EXISTS rideshare.slotted_counters_id_seq; +DROP TABLE IF EXISTS rideshare.slotted_counters; DROP VIEW IF EXISTS rideshare.search_results; DROP TABLE IF EXISTS rideshare.schema_migrations; DROP SEQUENCE IF EXISTS rideshare.locations_id_seq; @@ -314,6 +319,41 @@ CREATE VIEW rideshare.search_results AS ORDER BY (count(t.rating)) DESC; +-- +-- Name: slotted_counters; Type: TABLE; Schema: rideshare; Owner: - +-- + +CREATE TABLE rideshare.slotted_counters ( + id bigint NOT NULL, + counter_name character varying NOT NULL, + associated_record_type character varying NOT NULL, + associated_record_id integer NOT NULL, + slot integer NOT NULL, + count integer NOT NULL, + created_at timestamp(6) without time zone NOT NULL, + updated_at timestamp(6) without time zone NOT NULL +); + + +-- +-- Name: slotted_counters_id_seq; Type: SEQUENCE; Schema: rideshare; Owner: - +-- + +CREATE SEQUENCE rideshare.slotted_counters_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: slotted_counters_id_seq; Type: SEQUENCE OWNED BY; Schema: rideshare; Owner: - +-- + +ALTER SEQUENCE rideshare.slotted_counters_id_seq OWNED BY rideshare.slotted_counters.id; + + -- -- Name: trip_positions; Type: TABLE; Schema: rideshare; Owner: - -- @@ -491,6 +531,13 @@ ALTER SEQUENCE rideshare.vehicles_id_seq OWNED BY rideshare.vehicles.id; ALTER TABLE ONLY rideshare.locations ALTER COLUMN id SET DEFAULT nextval('rideshare.locations_id_seq'::regclass); +-- +-- Name: slotted_counters id; Type: DEFAULT; Schema: rideshare; Owner: - +-- + +ALTER TABLE ONLY rideshare.slotted_counters ALTER COLUMN id SET DEFAULT nextval('rideshare.slotted_counters_id_seq'::regclass); + + -- -- Name: trip_positions id; Type: DEFAULT; Schema: rideshare; Owner: - -- @@ -573,6 +620,14 @@ ALTER TABLE ONLY rideshare.schema_migrations ADD CONSTRAINT schema_migrations_pkey PRIMARY KEY (version); +-- +-- Name: slotted_counters slotted_counters_pkey; Type: CONSTRAINT; Schema: rideshare; Owner: - +-- + +ALTER TABLE ONLY rideshare.slotted_counters + ADD CONSTRAINT slotted_counters_pkey PRIMARY KEY (id); + + -- -- Name: trip_positions trip_positions_pkey; Type: CONSTRAINT; Schema: rideshare; Owner: - -- @@ -635,6 +690,13 @@ CREATE UNIQUE INDEX index_fast_search_results_on_driver_id ON rideshare.fast_sea CREATE UNIQUE INDEX index_locations_on_address ON rideshare.locations USING btree (address); +-- +-- Name: index_slotted_counters; Type: INDEX; Schema: rideshare; Owner: - +-- + +CREATE UNIQUE INDEX index_slotted_counters ON rideshare.slotted_counters USING btree (associated_record_id, associated_record_type, counter_name, slot); + + -- -- Name: index_trip_requests_on_end_location_id; Type: INDEX; Schema: rideshare; Owner: - -- @@ -776,6 +838,7 @@ ALTER TABLE ONLY rideshare.trip_requests SET search_path TO rideshare; INSERT INTO "schema_migrations" (version) VALUES +('20250617150055'), ('20231220043547'), ('20231218215836'), ('20231213045957'), diff --git a/docs/slotted_counters.md b/docs/slotted_counters.md new file mode 100644 index 0000000..0efb726 --- /dev/null +++ b/docs/slotted_counters.md @@ -0,0 +1,26 @@ +# Slotted Counters + +A Rider can track its trip_requests. + +```rb +# https://github.com/evilmartians/activerecord-slotted_counters +has_slotted_counter :trip_requests +``` + +Increment counter manually +``` +rideshare(dev)> Rider.increment_counter(:trip_requests_count, rider.id) + TRANSACTION (9.1ms) BEGIN + (2.3ms) INSERT INTO "slotted_counters" ("counter_name","associated_record_type","associated_record_id","slot","count","created_at","updated_at") VALUES ('trip_requests_count', 'Rider', 20200, 86, 1, CURRENT_TIMESTAMP, CURRENT_TIMESTAMP) ON CONFLICT ("associated_record_id","associated_record_type","counter_name","slot") DO UPDATE SET count = slotted_counters.count + EXCLUDED.count RETURNING "id" + TRANSACTION (0.3ms) COMMIT +``` + +Access: +``` +rider.trip_requests_count +``` + +## Why the "slot"? +By having a limit of rand(100), there are up to 100 possible records representing the total count. + +A slot keeps a counter, and its counter is updated on increment. This distributes the updates and avoids locking the same row. diff --git a/docs/slotted_counters_bench.rb b/docs/slotted_counters_bench.rb new file mode 100644 index 0000000..68c3b19 --- /dev/null +++ b/docs/slotted_counters_bench.rb @@ -0,0 +1,15 @@ +# Run with Rails Runner +rider = Rider.last +10_000.times do + Rider.increment_counter(:trip_requests_count, rider.id) +end + +# Although there are 10,000 increments for the same +# Rider, we don't have 10K records in slotted_counters +# due to the "slot" distributing the inserts +# +# This controls the growth of slotter_counters +# compared with a insert-per-increment approach + +puts "getting Rider trip_requests_count" +puts rider.trip_requests_count diff --git a/erd.pdf b/erd.pdf index 0847dbf78aa0e9b21aa85b3ededf390df8990b7a..f2c40fa7d96d189bfd367cab05354f0b03151f4b 100644 GIT binary patch delta 39569 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 delta 37809 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