计算机科学
Managing Gigabytes 豆瓣
作者: Ian H. Witten / Alistair Moffat Morgan Kaufmann 1999 - 5
In this fully updated second edition of the highly acclaimed Managing Gigabytes, authors Written, Moffat, and Bell continue to provide unparalleled coverage of state-of-the-art techniques for compressing and indexing data. Whatever your field, if you work with large quantities of information, this book is essential reading - an authoritative theoretical resource and a practical guide to meeting the toughest storage and access challenges. It covers the latest developments in compression and indexing and their application on the Web and in digital libraries. It also details dozens of powerful techniques supported by mg, the authors' own system for compressing, storing, and retrieving text, images, and textual images. Mg's source code is freely available on the Web. It provides up-to-date coverage of new text compression algorithms such as block sorting, approximate arithmetic coding, and fat Huffman coding. It includes new sections on content-based index compression and distributed querying, with 2 new data structures for fast indexing. It provides new coverage of image coding, including descriptions of de facto standards in use on the Web (GIF and PNG), information on CALIC, the new proposed JPEG Lossless standard, and JBIG2. It includes new information on the Internet and WWW, digital libraries, web search engines, and agent-based retrieval. It is accompanied by a public domain system called MG which is a fully worked-out operational example of the advanced techniques developed and explained in the book. It includes a new appendix on an existing digital library system that uses the MG software.
柠檬、拍卖和互联网算法 豆瓣
The Inner Lives of Markets
作者: [美] 雷·菲斯曼 / 蒂姆·沙利文 译者: 莫方 后浪丨江西人民出版社 2019 - 4
11位诺贝尔经济学奖得主的经济理论,7个主要概念
起底互联网经济的内核,澄清分享经济的隐形逻辑
◎ 编辑推荐
☆ 诺贝尔经济学奖得主乔治·阿克洛夫、埃里克·马斯金诚意推荐
☆ 本书用直白的语言,解释了二战以来经济学的发展,以及对社会经济运行方式的影响,特别是对我们身处其间的互联网经济的影响
☆ 阅读本书,将帮助我们了解经济学如何塑造了社会和我们的行为,看透互联网企业的秘密、洞察互联网经济的风向
◎ 内容简介
只要你租过房子、上网买过东西、自己经营过企业,那么你就处在商业变革的前线。在这场变革中,亚马逊、谷歌、优步等不同以往的企业取得了史无前例的成功,而促成这场变革的不只是科技进步,还有经济学思想。
在这本趣味横生的书中,我们会看到,经济思想的革命远比科技革命更宏大。从谷歌广告的算法,到网上购物规避欺诈,都要依靠经济学家建立的经济模型,甚至连互联网公司的运行方式也要基于经济学家提出的经济学理论。
我们还会看到市场在我们的生活和工作中的真正作用,纠正对市场的诸多误解;也能了解半个世纪以来塑造我们生活的经济学理论。这些经济学理论来自获得过诺贝尔经济学奖的著名经济学家,为我们提供了更好的智慧和洞见。
◎ 名人推荐
条理清晰,案例生动,本书解释了二战后的经济学家们是如何重构经济系统的。这个重新定义的过程不是辨明亚当·斯密和马克思的是非曲直,而是探索这其中的灰色地带。
—— 乔治·阿克洛夫(George Akerlof),诺贝尔经济学奖得主
要理解市场到底如何运作,经济学是一种强有力的工具,并且经济学越来越能够用模型来解释市场、改变市场。本书所做的就是将经济学用最简单直白的语言描述出来,并且告诉我们,经济学为什么在我们的生活中占有重要一隅。
—— 埃里克·马斯金(Eric Maskin),诺贝尔经济学奖得主,哈佛大学教授
对于不懂经济学的人来说,这本书解释了他们想知道的一切,比如经济学如何塑造了我们的世界,如何影响了亚马逊、爱彼迎和易贝等革命性市场场景。
—— 里德·霍夫曼(Reid Hoffman),领英董事长,《联盟》作者
AI极简经济学 豆瓣
Prediction Machines
8.2 (6 个评分) 作者: 阿杰伊·阿格拉沃尔 / 乔舒亚·甘斯 译者: 闾佳 博集天卷 | 湖南科学技术出版社 2018
◆ 人工智能对你的工作、你的生意意味着什么?读这本书你就能明白。 ——哈尔·瓦里安,谷歌首席经济学家
◆ AI 商业化领军实验室出品,直击人工智能痛点,从经济学角度解决“何为人工智能,它有什么用,我们该怎么办”,化繁为简,深入浅出地阐释了人工智能对我们工作与生活的影响。
◆《失控》《必然》 作者凯文·凯利力荐的“天才之作”,哈佛、麻省理工、斯坦福等大学经济学教授和苹果、谷歌、微软等公司人工智能部门高管一致好评,《经济学人》《金融时报》《麦肯锡季刊》争相报道!
【内容简介】
人工智能正在以不可阻挡的态势席卷全球。无论是 iPhone 的神经网络引擎、AlphaGo 的围棋算法,还是无人驾驶、深度学习……毫无疑问,人工智能正在改写行业形态。如同此前个人电脑、互联网、大数据的风行一般,技术创新又一次极大地改变了我们的工作与生活。
那么,究竟应该如何看待人工智能?在《AI极简经济学》一书中,三位深耕人工智能和决策领域的经济学家给出了清晰的答案。他们以坚实的经济学理论剖析动态,把握本质,将人工智能领域变化多端的表象总结为不断提高的机器预测能力。无论你是需要做出决策的企业家,还是尚且在规划职业生涯的普通人,或是面对剧烈社会变动的思考者,都能从这本书中获得重要启发。
【名人推荐】
《AI极简经济学》将人工智能视为一种全新的平价商品——预测能力,这让我们能更加轻松地理解人工智能,实为天才之举。我感觉这本书出奇地有用。
—— 凯文·凯利,《失控》《必然》 作者,《连线》杂志创始主编
无论你是商界领袖、政策制定者、经济学家或战略家,还是一个想要了解“人工智能究竟意味着什么”的普通人,《AI极简经济学》都是必读之书。从制定企业战略,做出决策,到理解人工智能将会如何影响我们的社会,你都可以在本书中找到答案。
—— 鲁斯兰·萨拉赫丁诺夫,苹果公司人工智能研究主管,卡内基·梅隆大学教授
AI 是我们这个时代最具革命性的技术。本书的三位作者深谙这项技术的本质,并经由这本书,向我们传达了他们对 AI 的经济意义及其权衡机制的深刻理解。如果想要拨开 AI 迷雾弄清这项技术将带来的机遇与挑战,你首先应该阅读这本书。
—— 埃里克·布莱恩约弗森,麻省理工学院教授,《第二次机器革命》作者
人工智能或许会改变你的生活,本书则会刷新你对人工智能的认知。我们无法确定人工智能是不是最好的科技进步,可以确定的是,这本书是迄今为止该领域最好的书。
—— 劳伦斯·萨默斯,哈佛大学前任校长,世界银行前首席经济学家,奥巴马政府国家经济委员会主席
《AI极简经济学》是一本开创性的著作,它聚焦于战略家和管理者真正需要了解的AI技术革命的知识。本书采用现实的视角来考量这项技术,并且从经济学和企业战略的原则出发,解读公司、产业和管理将如何被AI技术改变。
—— 苏珊·阿西,斯坦福大学教授,前微软研究员
《AI极简经济学》完成了一项创举:它驱散了笼罩于 AI 周边,使其显得远离现实的迷雾,让它轻松易懂。本书提出了前所未有的见解。高层管理者和政策制定者能轻松理解其中的含义。每一位领导者都应该阅读本书。
—— 多米尼克·巴顿,麦肯锡公司全球管理合伙人
Making Databases Work 豆瓣
作者: Michael L.Brodie Morgan & Claypool 2018
This book celebrates Michael Stonebraker's accomplishments that led to his 2014 ACM A.M. Turing Award "for fundamental contributions to the concepts and practices underlying modern database systems."
The book describes, for the broad computing community, the unique nature, significance, and impact of Mike's achievements in advancing modern database systems over more than forty years. Today, data is considered the world's most valuable resource, whether it is in the tens of millions of databases used to manage the world's businesses and governments, in the billions of databases in our smartphones and watches, or residing elsewhere, as yet unmanaged, awaiting the elusive next generation of database systems. Every one of the millions or billions of databases includes features that are celebrated by the 2014 Turing Award and are described in this book.
Why should I care about databases? What is a database? What is data management? What is a database management system (DBMS)? These are just some of the questions that this book answers, in describing the development of data management through the achievements of Mike Stonebraker and his over 200 collaborators. In reading the stories in this book, you will discover core data management concepts that were developed over the two greatest eras (so far) of data management technology.
The book is a collection of 36 stories written by Mike and 38 of his collaborators: 23 world-leading database researchers, 11 world-class systems engineers, and 4 business partners. If you are an aspiring researcher, engineer, or entrepreneur you might read these stories to find these turning points as practice to tilt at your own computer-science windmills, to spur yourself to your next step of innovation and achievement.
庖丁解牛Linux内核分析 豆瓣
作者: 孟宁 / 娄嘉鹏 2018 - 10
本书从理解计算机硬件的核心工作机制(存储程序计算机和函数调用堆栈)和用户态程序如何通过系统调用陷入内核(中断异常)入手,通过上下两个方向双向夹击的策略,并利用实际可运行程序的反汇编代码从实践的角度理解操作系统内核,分析Linux内核源代码,从系统调用陷入内核、进程调度与进程切换开始,最后返回到用户态进程。
本书配有丰富的实验指导材料和练习,适合作为高等院校计算机相关专业的指导用书,也适合Linux操作系统开发人员自学。
编辑推荐
基于本书内容的在线视频课程——“Linux操作系统分析”被教育部评为“国家精品在线开放课程”,被教育部高等学校计算机类专业教学指导委员会评为“2018年度中国高校计算机教育慕课联盟优 秀在线开放课程”。
媒体推荐

大大小小、可见与不可见的计算机已成为现代人日常工作、学习和生活中必不可少的工具。操作系统是计算机之魂,作为用户使用计算机的接口,它负责调度执行各个用户程序,使计算机完成特定的任务;作为计算机硬件资源的管理者,它负责协调计算机中各类设备高效地工作。操作系统的重要性不言而喻。
对于软件工程师,理解操作系统的工作原理和关键机制是设计高质量应用程序的前提,但要做到这一点是十分困难的。一方面,操作系统设计涉及计算机科学与工程学科的方方面面,包括数据结构与算法、计算机组成与系统结构、计算机网络,甚至程序设计语言与编译系统等核心知识,以及并发、同步和通信等核心概念。另一方面,作为一个复杂庞大的软件产品,理解操作系统更需要理论与实践深度结合。
操作系统的相关学习资料十分丰富。有阐述基本原理者,有剖析典型系统者,还有构造示例系统者;有面向专业理论者,亦有面向应用实践者。角度多种多样,内容简繁不一。
本书的最大特点在于作者结合其多年的Linux操作系统实际教学经验编撰而成。作为一位经验丰富的高级软件工程师和专业教师,本书作者基于自己学习和研究Linux的心得,创新性地以一个mykernel和MenuOS为基础实验平台进行教学和实验组织,实现了理论学习与工程实践的自然融合,达到了事半功倍的效果。同时,书中设计了丰富的单元测试题和实验,引导读者循序渐进地掌握所学知识,并有效地促进读者深入思考和实践所学内容。作者基于本书开设的操作系统课程,其教学形式涉及面对面的课堂教学和在线慕课教学,选课对象既包括软件工程硕士,又包括一般工程实践者,学习人数已数以万计。本书的出版体现了作者认真吸收大量的学员反馈,不断优化课程的教学内容和过程组织的成果。
易读性是本书的另一特色。作者采用二维码这一新媒体时代的代表性技术组织全书的内容,达到了兼顾完整性和简洁性的目标。
作为一名多年从事计算机系统结构研究和教学的教育工作者,我认为本书的出版对于提升国内操作系统教学和实践水平非常有益,相信它必将受到读者的喜爱!
李曦
Serving Machine Learning Models 豆瓣
作者: Boris Lublinsky O'Reilly Media, Inc. 2017 - 10
Book Description
Model serving is a critical but often underappreciated aspect of machine learning.Once you have built a model using your training data set, you need to packageand deploy (i.e., serve) it. It's a surprisingly complex task, in part because modeltraining is usually handled by data scientists, and model serving is the domain ofsoftware engineers. These two groups have different functions, concerns, andtools, so the handoff can be tricky. Plus, machine learning is a hot and fast-growing field, spawning a slew of new tools that require software engineers tocreate new model serving frameworks.
This book delves into the theory and practice of serving machine learning modelsin streaming applications. It proposes an overall architecture that implementscontrolled streams of both data and models that enables not only real-time modelserving, as part of processing input streams, but also real-time model updating. Italso covers:
Step-by- step options for exporting models in tensorflow and PMMLformats.
Implementation of model serving leveraging stream processing enginesand frameworks including Apache Flink, Apache Spark streaming, ApacheBeam, Apache Kafka streams, and Akka streams.
Monitoring approaches for model serving implementations.
2019年2月23日 在读
今天正好搜RichCoFlatMapfunction看到了, 还结合Medium的Deploy your machine learning models with tensorflow serving and kubernetes. 都是model service的production实现.
分布式 计算机科学 软件工程
Docker in Practice 豆瓣
作者: Ian Miell / Aidan Hobson Sayers Manning Publications 2019 - 2
Summary
Docker in Practice, Second Edition presents over 100 practical techniques, hand-picked to help you get the most out of Docker. Following a Problem/Solution/Discussion format, you'll walk through specific examples that you can use immediately, and you'll get expert guidance on techniques that you can apply to a whole range of scenarios.
Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.
About the Technology
Docker's simple idea-wrapping an application and its dependencies into a single deployable container-created a buzz in the software industry. Now, containers are essential to enterprise infrastructure, and Docker is the undisputed industry standard. So what do you do after you've mastered the basics? To really streamline your applications and transform your dev process, you need relevant examples and experts who can walk you through them. You need this book.
About the Book
Docker in Practice, Second Edition teaches you rock-solid, tested Docker techniques, such as replacing VMs, enabling microservices architecture, efficient network modeling, offline productivity, and establishing a container-driven continuous delivery process. Following a cookbook-style problem/solution format, you'll explore real-world use cases and learn how to apply the lessons to your own dev projects.
What's inside
Continuous integration and delivery
The Kubernetes orchestration tool
Streamlining your cloud workflow
Docker in swarm mode
Emerging best practices and techniques
About the Reader
Written for developers and engineers using Docker in production.
Language Implementation Patterns 豆瓣
作者: Terence Parr Pragmatic Bookshelf 2010 - 1
Knowing how to create domain-specific languages (DSLs) can give you a huge productivity boost. Instead of writing code in a general-purpose programming language, you can first build a custom language tailored to make you efficient in a particular domain. The key is understanding the common patterns found across language implementations. "Language Design Patterns" identifies and condenses the most common design patterns, providing sample implementations of each. The pattern implementations use Java, but the patterns themselves are completely general. Some of the implementations use the well-known ANTLR parser generator, so readers will find this book an excellent source of ANTLR examples as well. But this book will benefit anyone interested in implementing languages, regardless of their tool of choice. Other language implementation books focus on compilers, which you rarely need in your daily life. Instead, "Language Design Patterns" shows you patterns you can use for all kinds of language applications. You'll learn to create configuration file readers, data readers, model-driven code generators, source-to-source translators, source analyzers, and interpreters. Each chapter groups related design patterns and, in each pattern, you'll get hands-on experience by building a complete sample implementation. By the time you finish the book, you'll know how to solve most common language implementation problems.
Programming for the Puzzled 豆瓣
作者: Srini Devadas MIT Press 2017 - 10
This book builds a bridge between the recreational world of algorithmic puzzles (puzzles that can be solved by algorithms) and the pragmatic world of computer programming, teaching readers to program while solving puzzles. Few introductory students want to program for programming’s sake. Puzzles are real-world applications that are attention grabbing, intriguing, and easy to describe.
Each lesson starts with the description of a puzzle. After a failed attempt or two at solving the puzzle, the reader arrives at an Aha! moment—a search strategy, data structure, or mathematical fact—and the solution presents itself. The solution to the puzzle becomes the specification of the code to be written. Readers will thus know what the code is supposed to do before seeing the code itself. This represents a pedagogical philosophy that decouples understanding the functionality of the code from understanding programming language syntax and semantics. Python syntax and semantics required to understand the code are explained as needed for each puzzle.
Readers need only the rudimentary grasp of programming concepts that can be obtained from introductory or AP computer science classes in high school. The book includes more than twenty puzzles and more than seventy programming exercises that vary in difficulty. Many of the puzzles are well known and have appeared in publications and on websites in many variations. They range from scheduling selfie time with celebrities to solving Sudoku problems in seconds to verifying the six degrees of separation hypothesis. The code for selected puzzle solutions is downloadable from the book’s website; the code for all puzzle solutions is available to instructors.
EECS应用概率论 豆瓣
作者: [美] Jean Walrand 译者: 黄隆波 人民邮电出版社 2015 - 9
本书精心选取了6个当前热门的科技应用:谷歌PageRank算法、链路复用技术、数字链路通信、追踪预测、语音识别和路线规划,并通过讲述概率论在不同应用中的作用来详细介绍基础的概率知识以及概率论中的重要概念,包括马尔可夫链、大数定律、中心极限定理、假设检验、最小方差预测等。
Artificial Intelligence 豆瓣 Goodreads
9.8 (8 个评分) 作者: Stuart Russell / Peter Norvig Pearson 2009
The long-anticipated revision of this #1 selling book offers the most comprehensive, state of the art introduction to the theory and practice of artificial intelligence for modern applications. Intelligent Agents. Solving Problems by Searching. Informed Search Methods. Game Playing. Agents that Reason Logically. First-order Logic. Building a Knowledge Base. Inference in First-Order Logic. Logical Reasoning Systems. Practical Planning. Planning and Acting. Uncertainty. Probabilistic Reasoning Systems. Making Simple Decisions. Making Complex Decisions. Learning from Observations. Learning with Neural Networks. Reinforcement Learning. Knowledge in Learning. Agents that Communicate. Practical Communication in English. Perception. Robotics. For computer professionals, linguists, and cognitive scientists interested in artificial intelligence.
Getting Started with LevelDB 豆瓣
作者: Andy Dent Packt Publishing 2013 - 11
Mobile and standalone desktop apps often need to store and rapidly retrieve data. LevelDB scales from a few simple values up to trillions of records and is flexible enough to store any kind of data.
Getting Started with LevelDB progresses through the sophisticated ways to use databases. It starts by explaining how to install and build LevelDB from the basics, and moves on to explain the different Objective-C layers for LevelDB. It can be used as an introduction to database-backed iOS apps, as well as provides clarification to key-value stores and helps you understand how they relate to SQL.
LevelDB is a flexible data solution that uses key-value stores to allow for the development of highly complex, efficient data storage systems. From the basics of data storage and retrieval to complex cases involving data storage for apps, this book covers a wide range of LevelDB topics
Even relatively simple apps may have the need to search their data using different terms. Getting Started with LevelDB shows how to design keys to retrieve and store data efficiently. You will learn how its “levelled” nature delivers speedy writes and how to tune its settings and design for performance. You will also see a few techniques for debugging and tuning.
Getting Started with LevelDB will leave you as an accomplished LevelDB programmer, confident you can build a complex database-backed app with high performance on iOS or OS/X.
Core Java, Volume I (9th Edition) 豆瓣
作者: Cay S. Horstmann / Gary Cornell Prentice Hall 2012
Fully updated to reflect Java SE 7 language changes, Core Java(TM), Volume I-Fundamentals, Ninth Edition, is the definitive guide to the Java platform. Designed for serious programmers, this reliable, unbiased, no-nonsense tutorial illuminates key Java language and library features with thoroughly tested code examples. As in previous editions, all code is easy to understand, reflects modern best practices, and is specifically designed to help jumpstart your projects. Volume I quickly brings you up-to-speed on Java SE 7 core language enhancements, including the diamond operator, improved resource handling, and catching of multiple exceptions. All of the code examples have been updated to reflect these enhancements, and complete descriptions of new SE 7 features are integrated with insightful explanations of fundamental Java concepts. You'll learn all you need to be productive with * The Java programming environment * Objects, classes, and inheritance * Interfaces and inner classes * Reflection and proxies * Graphics programming * Event handling and the event listener model * Swing-based user interface components * Application and applet deployment * Exceptions, logging, assertions, and debugging * Generic programming * Collections * Concurrency, and more For detailed coverage of advanced features, including the new API for file input/output and enhancements to the concurrency utilities, look for Core Java(TM), Volume II-Advanced Features, Ninth Edition (ISBN-13: 978-0-13-708160-8).
A Tour of C++ (2/e) 豆瓣
作者: Bjarne Stroustrup Addison Wesley 2018 - 6
In A Tour of C++ (2/e), Bjarne Stroustrup, the creator of C++, describes what constitutes modern C++. This concise, self-contained guide covers most major language features and the major standard-library components―not, of course, in great depth, but to a level that gives programmers a meaningful overview of the language, some key examples, and practical help in getting started.
Stroustrup presents the C++ features in the context of the programming styles they support, such as object-oriented and generic programming. His tour is remarkably comprehensive. Coverage begins with the basics, then ranges widely through more advanced topics, including many that are new in C++17, such as move semantics, uniform initialization, lambda expressions, improved containers, random numbers, and concurrency. The tour even covers some extensions being made for C++20, such as concepts and modules, and ends with a discussion of the design and evolution of C++.
This guide does not aim to teach you how to program (for that, see Stroustrup’s Programming: Principles and Practice Using C++, Second Edition), nor will it be the only resource you’ll need for C++ mastery (for that, see Stroustrup’s The C++ Programming Language, Fourth Edition, and recommended online sources). If, however, you are a C or C++ programmer wanting greater familiarity with the current C++ language, or a programmer versed in another language wishing to gain an accurate picture of the nature and benefits of modern C++, you can’t find a shorter or simpler introduction than this tour provides.
Introduction to Parallel Computing 豆瓣 Goodreads
作者: Ananth Grama / George Karypis Addison Wesley 2003 - 1
Introducation to Parallel Computing is a complete end-to-end source of information on almost all aspects of parallel computing from introduction to architectures to programming paradigms to algorithms to programming standards. It is the only book to have complete coverage of traditional Computer Science algorithms (sorting, graph and matrix algorithms), scientific computing algorithms (FFT, sparse matrix computations, N-body methods), and data intensive algorithms (search, dynamic programming, data-mining).
Structure and Interpretation of Computer Programs - 2nd Edition (MIT) 豆瓣 Goodreads
9.6 (21 个评分) 作者: Harold Abelson / Gerald Jay Sussman The MIT Press 1996 - 7
Structure and Interpretation of Computer Programs has had a dramatic impact on computer science curricula over the past decade. This long-awaited revision contains changes throughout the text.
There are new implementations of most of the major programming systems in the book, including the interpreters and compilers, and the authors have incorporated many small changes that reflect their experience teaching the course at MIT since the first edition was published.
A new theme has been introduced that emphasizes the central role played by different approaches to dealing with time in computational models: objects with state, concurrent programming, functional programming and lazy evaluation, and nondeterministic programming. There are new example sections on higher-order procedures in graphics and on applications of stream processing in numerical programming, and many new exercises.
In addition, all the programs have been reworked to run in any Scheme implementation that adheres to the IEEE standard.
Principles of Transaction Processing, Second Edition 豆瓣
作者: Philip A. Bernstein / Eric Newcomer Morgan Kaufmann 2009 - 6
Principles of Transaction Processing is a clear, concise guide for anyone involved in developing applications, evaluating products, designing systems, or engineering products. This book provides an understanding of the internals of transaction processing systems, describing how they work and how best to use them. It includes the architecture of Web Application Servers, transactional communications paradigms, and mechanisms for recovering from transaction and system failures. The use of transaction processing systems has changed in the years since publication of the first edition. Electronic commerce has become a major focus for business data processing investments, from banking and stock purchase on the web, to eBay auctions, to corporate database management. New standards, new technology and products, and new languages allow web services and SOA to become the leading style of design for enterprise applications. And with the help of this book and its rich examples, you will be able to produce the state-of-the-art applications discussed within. For more information check out Eric Newcomer's blog: http://ericnewcomer.wordpress.com/2009/05/15/what-we-learned-writing-the-second-edition-of-the-tp-book/
Complete revision of the classic "non mathematical" transaction processing reference for systems professionals.
Updated to focus on the needs of transaction processing via the Internet-- the main focus of business data processing investments, via web application servers, SOA, and important new TP standards.
Retains the practical, non-mathematical, but thorough conceptual basis of the first edition.
Seven Databases in Seven Weeks 豆瓣
作者: Luc Perkins / Eric Redmond Pragmatic Bookshelf; 2018 - 3
Data is getting bigger and more complex by the day, and so are your choices in handling it. Explore some of the most cutting-edge databases available - from traditional relational databases to newer NoSQL approaches - and make informed decisions about challenging data storage problems. This is the only comprehensive guide to the world of NoSQL databases, with in-depth practical and conceptual introductions to seven different technologies: Redis, Neo4J, CouchDB, MongoDB, HBase, Postgres, and DynamoDB. This second edition includes a new chapter on DynamoDB and updated content for each chapter.
While relational databases such as MySQL remain as relevant as ever, the alternative, NoSQL paradigm has opened up new horizons in performance and scalability and changed the way we approach data-centric problems. This book presents the essential concepts behind each database alongside hands-on examples that make each technology come alive.
With each database, tackle a real-world problem that highlights the concepts and features that make it shine. Along the way, explore five database models - relational, key/value, columnar, document, and graph - from the perspective of challenges faced by real applications. Learn how MongoDB and CouchDB are strikingly different, make your applications faster with Redis and more connected with Neo4J, build a cluster of HBase servers using cloud services such as Amazon's Elastic MapReduce, and more. This new edition brings a brand new chapter on DynamoDB, updated code samples and exercises, and a more up-to-date account of each database's feature set.
Whether you're a programmer building the next big thing, a data scientist seeking solutions to thorny problems, or a technology enthusiast venturing into new territory, you will find something to inspire you in this book.