Database and Storage Expert Witness
We help attorneys with litigation matters involving database and storage technology. Our experts have decades of experience in the design, construction, and analysis of database and storage technologies. We are well-versed in all types of database technologies, including both SQL and NoSQL databases. We understand the tradeoffs between alternative forms of storing data. We have used and understand the differences between the various providers of Database Management System Software.
We have previously offered testimony as database expert witness on matters involving Oracle, SQL, Microsoft Access, MongoDB, and Apache Cassandra, among others.
We have experience with all aspects of database and storage, including:
- In-memory database, active database, cloud database, data warehouses, deductive database, distributed database, document-oriented database, federated database system, temporal database, probabilistic database, and spatial database
- Structured data, unstructured data, and semi-structured data
- Database Management Systems: MySQL, PostgreSQL, Microsoft SQL Server, Oracle Database, and Microsoft Access
- Navigational databases, relational model, entity-relationship model, object model, document model, entity-attribute-value model, and star schema
- Database tables, primary keys, foreign keys, rows, columns, fields, schemas
- ACID properties: Atomicity, Consistency, Isolation, and Durability
Our database expert witness consultants have an in-depth understanding of the SQL databases.
SQL is a standard language for accessing and manipulating databases. SQL stands for Structured Query Language. It became a standard of the American National Standards Institute (ANSI) in 1986, and of the International Organization for Standardization (ISO) in 1987
SQL is intended for use with Relational Database Management Systems (RDBMS), examples of which include MS SQL Server, IBM DB2, Oracle, MySQL, and Microsoft Access. The data in RDBMS is stored in database objects called tables. A table is a collection of related data entries and it consists of columns and rows. The relationships among tables are in turn modeled through concepts such as foreign keys.
Although SQL is a standard, its implementations are not necessarily compatible across different vendors, because most implementations do not support the entire standard. The standard also does not fully specify certain database behaviors, allowing the vendors to make their own implementation choices.
Our database expert witness consultants have an in-depth understanding of the NoSQL databases.
NoSQL databases provide a mechanism for storage and retrieval of data that is modeled in means other than the tabular relations used in relational databases.
Many NoSQL solutions compromise consistency in favor of availability, partition tolerance, and speed. Most NoSQL databases pursue “eventual consistency”, in which database changes are propagated to all nodes “eventually” (typically within milliseconds), so queries for data might not return updated data immediately or might result in reading data that is not accurate, a problem known as stale reads.
The three most common implementation models for NoSQL databases are (1) key-value store, in which data is represented as a collection of key–value pairs, such that each possible key appears at most once in the collection, (2) document store, often represented as a collection of JSON or XML files, and (3) graph, which is suitable for data whose relations are well represented as a graph.
Our database expert witness consultants have an in-depth understanding of the tradeoffs in database design.
One of the first steps in database design is determining what data should be stored. Once the designer has determined what data needs to be stored, the dependencies among the various data elements must be determined. Finally, once the data requirements and relationships have been decided, a designer develops the logical structure of data, which can then be transformed into the corresponding implementation in the data based management system.
There are a number of factors that a designer must consider in the design process. Notably, in the case of SQL databases, the designer often applies the normalization rules to evaluate whether the tables are structured correctly. Normalization is a way of systematically evaluating the properties of database in the context of insertion, update, and deletion of records. It is intended to ensure no anomalies arise that can lead to loss of data integrity.
In addition to data integrity, alternative database designs may exhibit different properties in terms of performance, security, and availability.
Meet Our Experts
Database Expert Witness
Sam Malek, PhD, is a seasoned database expert witness with more than 20+ years of experience in academia and industry. He is currently a Professor of Software Engineering at the University of California. He has testified more than 35 times in litigation matters involving a variety of software-related subjects, including database design and construction.