A bird's-eye view on your DB schema
Signum Framework understand your database schema. Using Map module, power users will be able to understand it too.
Map module gives you a bird's-eye view of your database schema using an interactive diagram. Some features:
- Interactive: Map uses a d3 force layout specially tunned to cluster your entities by namespace, and let the user manipulate the position interactively. Really fun!
- Accurate: Each node is a database table, and each arrow is a foreign key. The font size and opacity get smaller for less important entities (Enums, Symbols, MLists, ...)
- Filtering: Just by writing some text in the filter box, nodes and lines will disappear, easily focusing on particular modules.
- Useful: Clicking on a particular node selects it, highlighting his relationships. Ctrl +Click will open a search page.
Using a combo box, the user can change the color of the nodes. By default this options are provided:
- By Namespace: Helping you understand how the nodes are clustered in diferent modules.
- By EntityData: Whether the entity is Master data or Transactional data.
- By EntityKind: What's the role of the entity (System, Main, Part, String, Shared, etc..)
- By Columns: Understand the relative complexity of each entitiy counting the number of columns it has.
- By Rows: Check which tables have more rows (and compare with EntityData!)
- By Size: Check which tables are eating your disk, including the size of all the table indexes in the different partitions.
Also, map contains an extensible system for registering color providers, letting other modules take advantage of it. For example the following modules are already integrated with Map:
- Authorization: Check what tables are authorized for each role.
- Cache: Check what tables are cached and semi cached, and look for different statistics for each table (total load time, and number of loads, invalidations or rows).
- Disconnected: Check what is the Upload/Download disconnected strategy for each table.
- Isolation: Check what is the isolation strategy for each table (Isolated, Optional or None).