Large Hadron Migrator
PgHero
Our great sponsors
Large Hadron Migrator | PgHero | |
---|---|---|
3 | 10 | |
1,811 | 7,539 | |
0.2% | - | |
0.0 | 7.2 | |
7 months ago | 30 days ago | |
Ruby | Ruby | |
BSD 3-clause "New" or "Revised" License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Large Hadron Migrator
-
GitHub downtime root cause analysis
No you didn't. They're doing what is often referred as "online schema change" using https://github.com/github/gh-ost (but the concept is the same than percona's pt-online-schema-change, or https://github.com/soundcloud/lhm.
-
Database... or Goose?
Is there anything similar for MySQL? There is https://github.com/soundcloud/lhm but it's pretty much outdated nowadays
-
Do you use migrations for data manipulations? What are the pro's and con's ?
I may do it from the console or a task if I wanted to modify a large number of records, e.g. something in my Users table. I think you need a sense of how long the update will take - I'm not sure if there's any issue with migrations timing out or such like. If I modify my Users schema it takes 5 minutes or so as it has to make a copy of the table and swap it in and that works fine - https://github.com/soundcloud/lhm
PgHero
-
What are your favourite approaches to keeping on top of Postgres health?
I use either PgHero or Rails PG Extras on every project
-
railstart-niceadmin support more features
- [pghero](https://github.com/ankane/pghero)
-
railstart-niceadmin release now!Backend management system based on Bootstrap 5 and NiceAdmin and Rails 7
pghero
- How and why Relational Model works for databases
-
Check why Django app is slow in production
If you are using PostgreSQL you can enable logging of slow queries and connect to the server with pghero (https://github.com/ankane/pghero) and check top queries by the number of requests and total usage time. Also, you can just enable logging of queries in Django, and on each request, you will have a list of queries on development, sometimes it's just a missing select_related of prefetch_related to increase performance, or you need to create a complex index.
-
Tips for a Healthier Postgres Database
If you are using rails, pghero is a great gem to get better visibility on your Postgres performance
-
How to find and fix a missing database index on a RoR app
https://github.com/ankane/pghero will tell you about any indexes that you should add (and it's free).
What are some alternatives?
Database Cleaner - Strategies for cleaning databases in Ruby. Can be used to ensure a clean state for testing.
Blazer - Business intelligence made simple
Lol DBA - lol_dba is a small package of rake tasks that scan your application models and displays a list of columns that probably should be indexed. Also, it can generate .sql migration scripts.
Scenic - Versioned database views for Rails
SecondBase - Seamless second database integration for Rails.
Squasher - Squasher - squash your old migrations in a single command
SchemaPlus - SchemaPlus provides a collection of enhancements and extensions to ActiveRecord
Redis Dashboard - Sinatra app to monitor Redis servers.
Ruby PG Extras - Ruby PostgreSQL database performance insights. Locks, index usage, buffer cache hit ratios, vacuum stats and more.
Foreigner - Adds foreign key helpers to migrations and correctly dumps foreign keys to schema.rb