NoSQL Data Modeling Training
Top 5 Objectives
Obtain the skills for producing conceptual (align), logical (refine), and physical (design) NoSQL data models for key-value, document, column, and graph databases. Modeling exercises to reinforce the material will be completed using Hackolade Studio for hands-on real-world practice. This 20-hour virtual class is delivered in five half-day sessions.
- Build the optimal NoSQL data model, factoring in scope, focus, timer, filter, and mode
- Combine NoSQL-specific data modeling components with traditional for optimum results
- Practice the Align, Refine, and Design NoSQL approach
- Create document, graph, key-value, and column data models
- Solve a series of NoSQL data modeling challenges
This course assumes a basic understanding of data modeling terms and principles, and no prior knowledge of NoSQL.
Steve Hoberman, Instructor
Steve Hoberman has trained more than 10,000 people in data modeling since 1992. Steve is known for his entertaining and interactive teaching style (watch out for flying candy!), and organizations around the globe have brought Steve in to teach his Data Modeling Master Class, which is recognized as the most comprehensive data modeling course in the industry.
Steve is the author of nine books on data modeling, including the bestsellers The Rosedata Stone and Data Modeling Made Simple. Steve is also the author of Blockchainopoly. One of Steve’s frequent data modeling consulting assignments is to review data models using his Data Model Scorecard® technique.
He is the founder of the Design Challenges group, creator of the Data Modeling Institute’s Data Modeling Certification exam, Conference Chair of the Data Modeling Zone conferences, director of Technics Publications, lecturer at Columbia University, and recipient of the Data Administration Management Association (DAMA) International Professional Achievement Award.
This Course Contains Five Modules
Module 1: NoSQL Settings
Although there are multiple solutions to modeling every scenario, one will stand out as the best solution to meet requirements, enable communication, and provide extensibility. Apply these five settings to arrive at the optimal NoSQL model:
- Scope. Identifies the purpose of the initiative, including whether it is tactical or strategic. For example, a graph use case such as fraud detection for the auto insurance line of business is an example of tactical, whereas fraud detection across all lines of businesses is strategic.
- Focus. Prioritizes simplicity or flexibility. Simplicity encourages using concrete terms such as Order for a high-throughput key-value solution, whereas flexibility encourages more generic terms such as Transaction.
- Timer. Emphasizes modeling a current or aspirational perspective. Today, a column implementation for an accounting system might only allow an Account to be owned by one Customer. However, the future implementation might allow for joint ownership.
- Filter. Implements either a business or application approach. “I need a 360 degree view of customer” is an example of a business filter. A requirement to extract and interpret certain fields from a JSON file is an example of an application filter.
- Mode. Determines whether a RDBMS or NoSQL approach is ideal for this initiative. An Online Transaction Processing (OLTP) system is relational whereas an Online Analytical Processing (OLAP) system is dimensional—both with an RDBMS mode. Evaluative and discovery use cases, however, require the NoSQL mode.
We end this module with a game of 25 real-life scenarios requiring you to choose the right settings. For example, what settings would you choose for a data model to meet this scenario? Netflix is optimizing an audit logging application, including user, host, source IP address, source port, timestamp, and operation.
Module 2: NoSQL Components
Combine both traditional data modeling components with those specific to NoSQL. Traditional components include data types, attributes, entities, and representatives. Know that keys have additional uses within NoSQL, such as for partitioning and sorting, and leverage compound, composite, and overloaded keys within NoSQL. Learn the value of an application-dependent query model and the different types of indexes available once we make the model dependent on a specific NoSQL database. For example, DynamoDB’s use of Global Secondary Indexes (GSIs) and Local Secondary Indexes (LSIs). Know how NoSQL databases represent different types of relationships, such as one-to-many and subtyping. Practice using keys when rolling down a relationship and lists, sets, and maps when rolling up a relationship.
Module 3: NoSQL Approach
Apply the Align, Refine, and Design approach to NoSQL. The goal of alignment is to identify the queries within our scope in the form of a query alignment model. Supporting deliverables include user stories and a business terms model. The goal of refinement is to model the queries within the scope in the form of a database-independent query refinement model. The main supporting deliverable is a normalized logical data model. (Yes, normalized, and we will explain why!) The goal of design is to ensure the structure to answer the queries is most efficient for the particular type of NoSQL database using a query design model.
Module 4: NoSQL Case Study
We will create the modeling deliverables for an organization implementing at least one NoSQL database. Deliverables include user stories, business terms model, query alignment model, normalized logical data model, query refinement model, and query design model.
Module 5: NoSQL Challenges We will tackle a number of NoSQL challenges, including:
- NoSQL protocols within an enterprise architecture
- The role of developers in NoSQL modeling and design
- Where to use RDF, OWL, and Turtle
- Naming standards for NoSQL
- NoSQL model maintenance
- And more!
More information and schedule
Click here to ask a question or request a quote for Steve to teach this course to your team.