Magento unterscheidet sich stark von typischer PHP-Entwicklung und was es Dinge nennt, stimmt nicht immer mit dem überein, was andere Leute sie nennen. Magento teilt die Modellschicht in zwei Teile auf, wie Sie erkannt haben, wobei das Modell die Geschäftslogik behandelt und der Ressourcenteil nur die Kommunikation mit der Datenbank abwickelt - die Theorie besagt, dass Sie, wenn Sie sich für einen Datenbanktyp entscheiden, der nicht mit PDO ansprechbar ist, eine andere Ressource einsetzen könnten, um das Laden und Speichern zu verarbeiten, ohne dass die Logik, die diese Vorgänge umgibt, davon betroffen ist.
Die beiden verschiedenen Arten von Ressourcen, die Magento hat, sind Entity und Mysql4 - letzteres ist ein ziemlich standardmäßiges Tabellen-Gateway-System, bei dem die Ressource einer Tabelle in der Datenbank zugeordnet wird, während ersteres etwas komplizierter ist. Um es Benutzern und Entwicklern wirklich einfach zu machen, benutzerdefinierte Felder hinzuzufügen, werden die Hauptteile von Magento (Produkte, Kunden, Bestellungen usw.) alle durch das sogenannte Entity-Attribute-Value-System (EAV) repräsentiert, bei dem statt einer typisierten Spalte pro Wert eine Zeile mit einem Schlüssel (vgl. Spaltenname) und einem Wert vorhanden ist. Die Entity-Ressourcen übernehmen das Mapping dieser EAV-Tabellen auf das Feld-Array, das die Daten enthält.
Es sei jedoch betont, dass dies weit entfernt von typisch für eine PHP-Anwendung ist, und wenn Ihre Absicht darin besteht, PHP zu lernen, würde ich ein anderes System wählen.