官术网_书友最值得收藏!

MongoDB for NoSQL developers

As MongoDB has grown from being a niche database solution to the Swiss Army knife of NoSQL technologies, more developers are coming to it from a NoSQL background as well.

Setting the SQL to NoSQL differences aside, users from columnar type databases face the most challenges. Cassandra and HBase being the most popular column oriented database management systems, we will examine the differences and how a developer can migrate a system to MongoDB.

  • Flexibility: MongoDB's notion of documents that can contain sub-documents nested in complex hierarchies is really expressive and flexible. This is similar to the comparison between MongoDB and SQL, with the added benefit that MongoDB can map easier to plain old objects from any programming language, allowing for easy deployment and maintenance.
  • Flexible query model: A user can selectively index some parts of each document, query based on attribute values, regular expressions or ranges, and have as many properties per object as needed by the application layer. Primary, secondary indexes as well as special types of indexes like sparse ones can help greatly with query efficiency. Using a JavaScript shell with MapReduce makes it really easy for most developers and many data analysts to quickly take a look into data and get valuable insights.
  • Native aggregation: The aggregation framework provides an ETL pipeline for users to extract and transform data from MongoDB and either load them in a new format or export it from MongoDB to other data sources. This can also help data analysts and scientists get the slice of data they need performing data wrangling along the way.
  • Schemaless model: This is a result of MongoDB's design philosophy to give applications the power and responsibility to interpret different properties found in a collection's documents. In contrast to Cassandra's or HBase's schema based approach, in MongoDB a developer can store and process dynamically generated attributes.
主站蜘蛛池模板: 宜宾县| 扬中市| 七台河市| 揭阳市| 彩票| 伊川县| 边坝县| 山西省| 慈利县| 三原县| 廊坊市| 杭州市| 桐柏县| 深圳市| 巴里| 建水县| 葫芦岛市| 丰顺县| 昌图县| 公主岭市| 东阳市| 宁波市| 涿鹿县| 游戏| 贵定县| 出国| 高陵县| 凤山县| 静宁县| 上杭县| 庆安县| 长白| 平顶山市| 兴安盟| 鱼台县| 任丘市| 罗江县| 通化市| 湛江市| 敖汉旗| 晴隆县|