Industry Press, Pub Date :2013-08-01 176 Chinese China Machine Press "NoSQL essence " as to consider whether and how to use Enterprise NoSQL databases provide a reliable basis for decision making . It consists of world-class so...
Awesome small introduction in NoSQL. Old but gold. If followed with "Next generation databases", it will be very helpful; as this other book is more recent and covers more topics, like in memory databases and big data.
The world of NoSQL is still very young and very fresh. Most books about relational databases tend to be about a specific one, like Oracle or MySQL, and tend to deal with specific issues, such as performance or scalability but very few developers are using NoSQL solutions on such a scale as to warrant those kinds of treatments. The questions developers have about NoSQL don't call for books like "High Performance MongoDB: Optimization, Backups, and Replication", but that exact book exists for MySQL.
Most developers are in the dipping-a-toe-in phase of NoSQL adoption. And the questions most developers have are: 1) What the heck is NoSQL? 2) What are the different kinds of NoSQL databases? 3) What does it look like to use them? 4) Which NoSQL database should I use?
That last question is the one that most people get hung up on. NoSQL is an umbrella term that covers a lot of different technology, and the individual elements under this umbrella can differ greatly. A data model that lends itself well to a particular NoSQL database might be completely wrong on another NoSQL database.
NoSQL Distilled aims to be a very short and concise introduction to this umbrella term, with a particular focus on answering this last question. Rather than simply being a series of chapters, each one covering a different NoSQL database, Distilled tries to pull out the elements common to these technologies and focus on the underlying principles. In a way, it's like Fowler's other books, in that the first half is general principles, and the second half is specifics that go deeper on those principles. We don't really see any actual NoSQL databases until about the halfway point, after Distilled has explained the various types of clustering strategies, performance concerns, and patterns of NoSQL databases in general.
I liked this approach very much. It allows the reader to focus on what actually matters about NoSQL databases, such as why they exist, what they're good at, what they're bad at, and what principles they follow, before getting into specifics like syntax or deployment.
Martin Fowler has always been one of my favorite tech authors, and though his co-author is new to me, I definitely felt like I was reading a typical Fowler book. Occasionally dry but still dense with information, covered competently and explained well. I also appreciated the complete lack of marketing/hype, which is present in most other NoSQL books (often written by people affiliated with the projects). NoSQL distilled is clear in that it says you should probably use a relational database still, and only use NoSQL if you can prove it has a particular benefit for you.
NoSQL distilled does not go deep into anything. If you're experienced with various NoSQL databases, this book will be largely useless to you. But if you've lived your life in a relational world and you're curious about what kind of benefits you could get by using a document database or a key-value store or a graph database, NoSQL distilled will be very enlightening. It does an admirable job of answering the "when to use/when not to use" question, though I do feel like it could have gone into more detail in answering those questions.
The first part deals with distributed databases concepts like different consistency types, resilience, CAP and the motivation for NoSQL. Very useful reminder for less theoretical people like me.
The second part picks a sample database for each one of the different NoSQL types (key-value, column, document and graph) and explains its application with a little code sample. Each chapters ends with best and worst case scenarios for each database type.
It works as a quick survey of current NoSQL and it's mainly aimed to people with little or no knowledge of NoSQL and its applications. For people with some background on NoSQL, it lacks real world examples. Some of the examples provides are not worth reading.
Anyway, is an easy to read and short book that i'll recommend to all my workmates willing to understand one of the current computing trends.
Good for what it is-- a slim high level overview of NoSQL that gives you historical context and discusses key concepts like CAP theorem, distribution strategies (sharding, master/slave replication, peer to peer replication) and store types (key value, column family, document-based, graph). But, there's not much "there" there. It's all fairly abstract and intentionally doesn't get into the nitty gritty of real life use cases. I would've liked to have seen real life case studies though. You're not going to come away from this book really knowing whether or not you should use Riak, Cassandra, MongoDB or whatever for your own project(s).
I've liked it very much. It was precisely what I was looking for, so a broad overview of NoSQL databases, advantages and shortcomings. Don't expect any deep dive into particular technologies, it's more a birds eye view on 4 different NoSQL db types: key-value, document, graph and wide-column databases, how they work, where they come short.. And as such, I think this book delivers.
Martin Fowler books are traditionally from very high quality (Pramod Sadalage is a new author for me but I could expect that he works at the same professional level). In this respect the "NoSQL Distilled" is not much different. All the most important concepts are very accurate defined and detailed described. What is the best way to design aggregates, why transactions have lost its importance, sharding, replication and consistency issues - everything is explained with precise clarity. One gets answers to most of possible data design questions in the first conceptual part of the book.
The second part of the book does not look same convincing. Although most concepts from the first part are illustrated in the second, still examples are too short and look like a quick start guide from database documentation. In this regard I would personally prefer another book - Seven Databases in Seven Weeks: A Guide to Modern Databases and the NoSQL Movement that successfully demonstrates most relevant strengths of respective databases. One could say that "Seven Databases..." book perfectly extends "NoSQL Distilled" as a practice guide. (Or other way around - "NoSQL Distilled" extends "Seven Databases..." better summarizing most important concepts)
All in all the "NoSQL Distilled" is a very important appearance and must have for the target audience.
The number one reason for the use of NoSQL databases is not performance and should be our use case. This means if our data model does not fit well in to the relational model, rather than twisting the data we can choose alternate data stores. This is absolutely critical if you want NoSQL to be used in most of the mid sized enterprise applications. Also companies will start to believe that they should consider NoSQL it even if they are not Google or Amazon.
When I was reading the book I thought that Polygot persistence is about using multiple data stores in same application depending on the use cases. But authors also seems to suggest that applications should wrap around the data stores with services ( like web services or REST). If we need to do this ideally we could only have one data store accessed by one service. Which would conflict the first statement. I am not sure about the reverence this question but I would love to have read more about using the different data store in the same application and its pros and cons.
I mean to say,
This is a very great book if you are looking get in to wild jungle of NoSQL databases. The authors does a great job in giving the brief introduction and making sure the basics are covered.
A quick and concise introduction into the world of NoSQL. Explains the 4 primary types of solutions really well. Provides good fundamentals into how to reason about your data in order to make it compatible for use in NoSQL solutions. The scalability considerations are very well thought out and give enough context to apply when designing for your specific cases. Very well done - bravo to the authors.
Este review foi escrito após minha SEGUNDA leitura deste livro.
Lançado em 2013, o uso de NoSQL ainda era bem menos comum do que hoje em dia, mas, como uma introdução ao assunto, ele ainda atende bem, principalmente a parte 1, que aborda muita teoria ainda relevante (aggregate-orientation, replicação de dados, teorema CAP, Map-Reduce, etc).
As clearly stated by the authors in the who should read this book section, this book won’t answer all your questions about nosql databases but will help you ask good questions. Overall this book presents a nice overview of the topic.
I bought this book for a Database Management Systems course and found it very helpful as a brief overview of NoSQL databases.
The book is broken into two parts: Understand and Implement. In the first, the authors give a survey of some basic information regarding things like aggregate data models, distribution models, consistency, map-reduce, and roughly what NoSQL is.
In the second part, more details are given about the types of NoSQL databases including key-value, document, column-family stores, and graph databases. Each chapter runs through the features of the database type as well as suitable use cases and when not to use each type. There is also a comparison chart mapping the terms between traditional RDBMS and a representative database for each type. There are also chapters touching on schema migrations, polyglot persistence, and how to choose a database.
The chapters are relatively short, making them less intimidating. It is a book written for beginners and on the whole I found it easy to understand. Throughout the book there are helpful visualizations and simple examples.
Because of the simplicity of the book, I would not recommend it to those already familiar with NoSQL. It is very clearly meant for beginners and because of this does not include in-depth examples. It is meant as a survey of NoSQL and I found it very adequate for that goal. Good for those interesting in learning more about NoSQL and as a beginner guide for those considering implementing NoSQL. It is a good place to start if you are thinking of using a NoSQL database to point you in the right direction.
This is a short concise introduction to the NoSQL databases. The main concern going into this book was it being dated though the content is relevant still today. I think it serves as good introduction to the four major family of databases.
My impression of Martin Folwer, one of the authors, has been that he is much more interested in formalizing definitions and coining terms. For example, what is a microservice? Or in this book, what is a NoSQL database and how the term evolved? I mostly hate such topics. However, in this book, the terms that are coined, for example, "aggregate oriented" etc are extremely useful. The discussion on CAP theorem and insights into the tradeoff of availability vs latency (not consistency) are extremely insightful and thought provoking.
I am not sure if the authors have coined these terms and the commentary or is it taken from somewhere else. But my rating mostly comes due to these insights and hence subject to revision later. The deep dive into the databases is rather shallow. Having worked and read about the KV stores, document and graph databases, I didn't face any difficulty understanding the content, but since I was not aware of column-family stores, it was hard to get the complete picture. So one's mileage may vary depending on the prior knowledge.
This book is exactly what I needed. I've been using relational databases for 2 decades now and I was not tempted by the big-data or nosql tools because I never had a big data problem. I had PostgreSQL databases with several hundred million records without experiencing any issue and without even spending much on the database server. The reality is that most business don't have big data problems because they don't have big data (even when developers chose to use big data tools).
But now I am facing big data problems. I find myself having to think in terms of big data architectures and I needed to be able to think and make technology choices and design systems that take into consideration the possibility of billions or trillions of records and more requests per second than even Ethernet could cope with. This book was an excellent primer on what's out there and how it behaves, a starting point to then go and learn more. Even my vocabulary about databases is now better.
Good Overview; Comparisons of No SQL DB types could be better
The book gives a good lay of the land regarding what the different types of NoSQL databases are and how they're structured; however it was a little confusing trying to understand why one would choose one type over another. Also, it appears that the material is already starting to be outdated when addressing capabilities of these databases.
I think it would have been helpful to address the mindset that is required by a data modeler to be successful with leveraging the strengths of these databases. You may have selected the best database for your problem domain, but how do you know that your designed data model is structured in a way that leverages the strengths of the DB?
All that being said, the book gets to the point and is quick to read through.
The book provides a high-level introduction of what NoSQL databases are, the 4 different types of them and the features each of these have to offer. This enables users to decide which NoSQL database to use for their use case and they can deep dive on that one - using a different book of course.
Though an introductory book, it does touch upon some architectural concepts like map-reduce and optimistic and pessimistic concurrency. There are sections that explain on replication and sharding of your data distribution. This book also offers a great illustration of CAP theorem.
Reading this book allowed me to come up with this: No SQL databases work without a schema, while NoSQL databases work without a schema - just some word play there!
Overall solid introduction to the various NoSQL DBMS solutions, their features, how to use them, and some of their practical use cases. While this book was published over 12 years ago (literally forever), most of the NoSQL concepts remain relevant to this day.
However, several of the drawbacks of relational databases discussed in the book seem slightly outdated today, with relational databases like Postgres supporting traditionally "NoSQL-esque" features like sharding with pg_shard, and support for flexible schemas through native json/jsonb support
Nonetheless, I believe this is a great read for any backend/data engineers working with NoSQL.
This is a great book and reference material for people who just enter the NoSQL world. For people, with experience in the field, I recommend reading on a chapter basis.
Even some of the described DBs are inactive or never got big enough community to strive, I recommend this book because it aggregates all the main concepts of the NoSQL world and this world didn't change that much over the last 5+ years.
A short but pretty insightful book regarding NoSQL databases. I found the book interesting and useful despite being now 12 years old. This is due to the book focusing on the general principles of NoSQL databases as opposed going too deep into the specifics of certain systems. Book also points to plenty of further reading for those who want to dive into certain specifics in order to gain a deeper understanding.
So I wanted to get up to speed with NoSQL technologies as fast as I can without going into details of any specific technology, and that was the right book for the job! Between the short chapters and the clear structure of each section the ideas were very clear and easy to grasp, though I founded it very hard to get a good grasp of the column databases so I needed outside information about this part to get to a better understanding.
Great, and super quick, introduction to the concepts behind, the various types of, and popular implementations of NoSQL systems. Slideshare and YouTube review links at https://martin.atlassian.net/wiki/spa....
A great book to understand the particularities of NoSQL databases. Concise and beginner-friendly. I used it in a master's course about the topic and it was the perfect complement to my professors' slides. The style is clear and juvenile, easy to follow and with various expamples and clarifications. The diagrams could have been fancier, but they serve their purpose nonetheless.
I found the early chapters enlightening to the purpose of nosql. Thinking about aggregates vs relations and being able to run on clusters. I was hoping to get a better idea of how to use nosql in the wild but this is mostly a quick guide to high level dos and donts. I would recommend up to chapter 6 and then the rest you can read as you need.
A good primer for the beginning NoSQL enthusiast. Sets you up nicely to make an educated decision as to which types of NoSQL databases exist and whether they will be useful in your organization. I would recommend this book.
Good short light book. Nothing new for me but it was required to have a ground in technical discussion. Now I definitely love Microsoft CosmosDB because it hides lots of stuff behind and provides only service for solution.
For anyone new or with NoSQL knowledge in bits & pieces and trying to connect the dots and whole picture, this is exactly the book, one could ask for. Explained in a very succinct way the evolution, pros, cons, types of each NoSQL databases without getting into too many details. Found the talk of author pretty Martin Fowler a good follow up summary https://www.youtube.com/watch?v=qI_g0...
This book is amazing. In a very concise way it introduces you to the NoSQL world and gives you the background on why they came into being. It then gives concrete examples and talks about the strengths and weaknesses of various NoSQL choices. It gives a lot of practical advice on how to approach NoSQL databases and how to decide on using them.