<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    cuiyi's blog(崔毅 crazycy)

    記錄點滴 鑒往事之得失 以資于發(fā)展
    數(shù)據(jù)加載中……

    NoSQL非關(guān)系型數(shù)據(jù)庫學習(一)

    2008年的時候,我還是只知道DB2, Oracle, MS SQLServer, Sybase, MySQL, PostgreSQL,  Firebird等主流商業(yè)或者開源數(shù)據(jù)庫。當汲取知識于網(wǎng)絡(luò)之際,突然發(fā)現(xiàn)很多新的名詞魚躍而出,什么 SQLite, Memcached,  FastDB, MongoDB, Solr, Redis, HBase,  Cassandra, Teradata, Hive, CouchDB, HBase等等。也不免的困惑了很多。


    試著逐步理清頭緒,首先數(shù)據(jù)庫分為關(guān)系型數(shù)據(jù)庫Relational DBMS和非關(guān)系型數(shù)據(jù)庫NoSQL 數(shù)據(jù)庫。

    >> 關(guān)系型數(shù)據(jù)庫Relational DBMS包含:
         DB2, Oracle, MS SQLServer, Sybase, MySQL, PostgreSQL,  Firebird

    >> 非關(guān)系型數(shù)據(jù)庫NoSQL包含:
          SQLite, Memcached,  FastDB, MongoDB, Solr, Redis, HBase,  Cassandra,
          Teradata, Hive, CouchDB, HBase, Neo4j, Riak

    簡單應(yīng)用場景對比:

    關(guān)系型數(shù)據(jù)庫的優(yōu)勢: 結(jié)構(gòu)化數(shù)據(jù)、范式模型、ACID事務(wù)。

    NoSQL優(yōu)勢:性能、可擴展性、靈活的模式和分析能力。在下列應(yīng)用中更有優(yōu)勢
    a.存儲的數(shù)據(jù)實質(zhì)上是半結(jié)構(gòu)化或者松散的;
    b.要求一定等級的性能和擴展性;
    c.存取該數(shù)據(jù)的應(yīng)用和最終的一致性相吻合

    NoSQL非關(guān)系型數(shù)據(jù)庫典型支持功能:
    a.模式靈活
    b.無共享結(jié)構(gòu)
    c.分片做為數(shù)據(jù)存儲模型的一部分
    d.異步復制
    e.使用BASE取代ACID事務(wù)。

     
    繼續(xù)分類:

    其次,數(shù)據(jù)庫也可以分為基于磁盤的數(shù)據(jù)庫和基于內(nèi)存的數(shù)據(jù)庫。

    硬盤型數(shù)據(jù)庫包含
    >>關(guān)系型數(shù)據(jù)庫Relational DBMS: 全部
    >>NoSQLMongoDB

    內(nèi)存型數(shù)據(jù)庫包含
    >>NoSQLSQLite, Memcached,  FastDB, Redis


    繼續(xù)分類:
    NoSQL根據(jù)實現(xiàn)又分為:

    http://www.infoq.com/research/nosql-databases?utm_source=infoqresearch&utm_campaign=lr-homepage

    You are here: InfoQ Homepage Research NoSQL Database Adoption Trends

    NoSQL Database Adoption Trends

    by Srini Penchikala on Jul 23, 2013 

    UPDATE Aug 08 2013: The following new NoSQL database options were added today, after user request and feedback: GridGain, GigaSpaces, Tibco, and MarkLogic.

    UPDATE Jul 25 2013: The following options were added today, after user request: Oracle Coherence, Terracotta BigMemory, Couchbase, and Oracle NoSQL Database.

    NoSQL databases have been getting lot of attention over the last few years for their performance, scalability, schema flexibility and analytics capabilities. While relational databases are still good choice for certain use cases - like structured data and applications that require ACID transactions - NoSQL databases are better suited for use cases where:
      
    ·     The data stored is semi-structured or unstructured in nature
      ·     The applications that access this data require a certain level of performance and scalability
      ·     The applications that access this data are ok with eventual consistency

    Non-relational databases typically support the following capabilities:
    ·     Schema flexibility
    ·     Shared nothing architecture
    ·     Sharding as part of the data storage model
    ·      Asynchronous replication
    ·     BASE instead of ACID Transactions

    InfoQ would like to learn what NoSQL databases you are currently using or planning on using in your applications.

    Document Databases

    ·         MongoDB: MongoDB is an open-source document oriented database.

    ·         CouchDB: Apache CouchDB is a database that uses JSON for documents, JavaScript for MapReduce queries, and HTTP for an API.

    ·         Couchbase: NoSQL document database based on JSON model.

    ·         RavenDB: RavenDB is a document-oriented database based on .NET language.

    ·         MarkLogic: MarkLogic NoSQL database is used to store XML-based, document-centric information. It supports schema flexibility.

    ·         Other Document Database

    Graph Databases 

    ·         Neo4j: Neo4j is a property graph database; supports ACID transactions.

    ·         InfiniteGraph: Graph database used to persist and traverse relationships between objects, supports distribute data stores.

    ·         AllegroGraph: AllegroGraph is a graph database that uses memory utilization in combination with disk-based storage for scalability, supports SPARQL, RDFS++, and Prolog reasoning.

    ·         Other Graph Database

    Key Value Data Stores 

    ·         Riak: Riak is an open source, distributed key value database, supports data replication and fault-tolerance.

    ·         Redis: Redis is an open source key-value store. Supports master-slave replication, transactions, Pub/Sub, Lua scripting, Keys with a limited time-to-live.

    ·         Dynamo: Dynamo is a key-value distributed data store. It is directly implemented as Amazon DynamoDB; used in Amazon S3 product.

    ·         Oracle NoSQL Database: Key-value NoSQL database from Oracle. It supports ACID transactions and JSON.

    ·         Voldemort: Distributed key-value storage system with the data replication and partitioning.

    ·         Aerospike: Aerospike database is a key-value store; supports hybrid memory architecture and data integrity with strong or tunable consistency.

    ·         Other Key Value Data Store

    Columnar Databases 

    ·         Cassandra: Cassandra is column database that supports data replication across multiple data centers. Its data model offers column indexes, log-structured updates, support for denormalization, materialized views, and built-in caching.

    ·         HBase: Apache HBase is an open-source, distributed, versioned, column-oriented store modeled after Google's Bigtable. It provides Bigtable-like capabilities on top of Hadoop and HDFS.

    ·         Amazon SimpleDB: Amazon SimpleDB is a non-relational data store that offloads the work of database administration. Developers store and query data items using web services requests.

    ·         Apache Accumulo: Apache Accumulo sorted, distributed key/value data store created based on Google's BigTable design and is built on top of Apache Hadoop, Zookeeper, and Thrift technologies.

    ·         Hypertable: Hypertable is an open source, scalable database, also modeled after Bigtable; supports sharding.

    ·         Azure Tables: Windows Azure Table Storage Service offers NoSQL capabilities for applications that require storage of large amounts of unstructured data. Tables can auto-scale to store up to several terabytes of data. They are accessible via REST and managed APIs.

    ·         Other Columnar Database

    In-Memory Data Grids 

    ·         Hazelcast: Hazelcast CE is an open source data distribution platform. It allows the developers to share and partition the data across the database cluster.

    ·         Oracle Coherence: Oracle's in-memory data grid solution that provides fast access to frequently used data. Coherence supports event capabilities and dynamic partitioning of data.

    ·         Terracotta BigMemory: Distributed in-memory management solution from Terracotta. The product includes an Ehcache interface, Terracotta Management Console and BigMemory-Hadoop Connector (early access).

    ·         GemFire: VMware vFabric GemFire is a distributed data management platform and provides elastic in-memory data management, replication, partitioning, data-aware routing, and continuous querying.

    ·         Infinispan: Infinispan is a Java based open source key/value NoSQL datastore and distributed data grid platform. It supports transactions and peer-to-peer as well as client/server architecture.

    ·         GridGain: Distributed, object-based, in-memory, SQL+NoSQL key-value database. Supports ACID transactions.

    ·         GigaSpaces: GigaSpaces in-memory data grid (the Space) serves as the system of record for the applications and supports a variety of caching scenarios.

    ·         Tibco: ActiveSpaces product from Tibco provides an infrastructure to create virtual data caches from the aggregate memory of participating nodes in the cluster and to scale as nodes join and leave. 

    ·         Other In-Memory Data Grid

     

    (譯版:一網(wǎng)打盡2013最常用的NoSQL數(shù)據(jù)庫http://blog.chedushi.com/archives/7306)

    >>文檔數(shù)據(jù)庫
         a. MongoDB
    :開源、面向文檔,也是當下最人氣的NoSQL數(shù)據(jù)庫。
         b. CounchDB
    Apache CounchDB是一個使用JSON的文檔數(shù)據(jù)庫,使用JavascriptMapReduce查詢,以及一個使用HTTPAPI
         c. Couchbase
    NoSQL文檔數(shù)據(jù)庫基于JSON模型。
         d. RavenDB
    RavenDB是一個基于.net語言的面向文檔數(shù)據(jù)庫。
         e. MarkLogic
    MarkLogic NoSQL數(shù)據(jù)庫用來存儲基于XML和以文檔為中心的信息,支持靈活的模式。

    >>圖數(shù)據(jù)庫
         a. Neo4j
    Neo4j是一個圖數(shù)據(jù)庫;支持ACID事務(wù)(原子性、獨立性、持久性和一致性)
         b. InfiniteGraph
    :一個圖數(shù)據(jù)庫用來維持和遍歷對象間的關(guān)系,支持分布式數(shù)據(jù)存儲。
         c. AllegroGraph
    AllegroGraph是結(jié)合使用了內(nèi)存和磁盤,提供了高可擴展性,支持SPARQ、RDFS++Prolog推理。

    >>鍵值數(shù)據(jù)存儲
        a. Riak
    Riak是一個開源,分布式鍵值數(shù)據(jù)庫,支持數(shù)據(jù)復制和容錯。
        b. Redis
    Redis是一個開源的鍵值存儲。支持主從式復制、事務(wù),Pub/Sub、Lua腳本,還支持給Key添加時限。
        c. Dynamo
    Dynamo是一個鍵值分布式數(shù)據(jù)存儲。它直接由亞馬遜Dynamo數(shù)據(jù)庫實現(xiàn);在亞馬遜S3產(chǎn)品中使用。
        d. Oracle NoSQL Database
    :來自Oracle的鍵值NoSQL數(shù)據(jù)庫。它支持事務(wù)ACID(原子性、一致性、持久性和獨立性)和JSON。
        e. Oracle NoSQL Database
    :具備數(shù)據(jù)備份和分布式鍵值存儲系統(tǒng)。
        f. Voldemort
    :具備數(shù)據(jù)備份和分布式鍵值存儲系統(tǒng)。
        g. Aerospike
    Aerospike數(shù)據(jù)庫是一個鍵值存儲,支持混合內(nèi)存架構(gòu),通過強一致性和可調(diào)一致性保證數(shù)據(jù)的完整性。

    >>列存儲數(shù)據(jù)庫
        a. Cassandra
    Cassandra是列存儲數(shù)據(jù)庫,支持跨數(shù)據(jù)中心的數(shù)據(jù)復制。它的數(shù)據(jù)模型提供列索引,log-structured修改,支持反規(guī)范化,實體化視圖和嵌入超高速緩存。
        b. HBase
    Apache Hbase源于GoogleBigtable,是一個開源、分布式、面向列存儲的模型。在HadoopHDFS之上提供了像Bigtable一樣的功能。
        c. Amazon SimpleDB
    Amazon SimpleDB是一個非關(guān)系型數(shù)據(jù)存儲,它卸下數(shù)據(jù)庫管理的工作。開發(fā)者使用Web服務(wù)請求存儲和查詢數(shù)據(jù)項。
        d. Apache Accumulo
    Apache Accumulo的有序的、分布式鍵值數(shù)據(jù)存儲,基于GoogleBigTable設(shè)計,建立在Apache Hadoop、ZookeeperThrift技術(shù)之上。
        e. Hypertable
    Hypertable是一個開源、可擴展的數(shù)據(jù)庫,模仿Bigtable,支持分片  
        f. Azure Tables
    Windows Azure Table Storage Service為要求大量非結(jié)構(gòu)化數(shù)據(jù)存儲的應(yīng)用提供NoSQL性能。表能夠自動擴展到TB級別,能通過RESTManaged API訪問。

    >>內(nèi)存數(shù)據(jù)網(wǎng)格
      a. Hazelcast
    Hazelcast CE是一個開源數(shù)據(jù)分布平臺,它允許開發(fā)者在數(shù)據(jù)庫集群之上共享和分割數(shù)據(jù)。
       b. Oracle Coherence
    Oracle的內(nèi)存數(shù)據(jù)網(wǎng)格解決方案提供了常用數(shù)據(jù)的快速訪問能力,一致性支持事務(wù)處理能力和數(shù)據(jù)的動態(tài)劃分。
      c. Terracotta BigMemory
    :來自Terracotta的分布式內(nèi)存管理解決方案。這項產(chǎn)品包括一個Ehcache界面、Terracotta管理控制臺和BigMemory-Hadoop連接器。
      d. GemFire
    Vmware vFabric GemFire是一個分布式數(shù)據(jù)管理平臺,也是一個分布式的數(shù)據(jù)網(wǎng)格平臺,支持內(nèi)存數(shù)據(jù)管理、復制、劃分、數(shù)據(jù)識別路由和連續(xù)查詢。
      e. Infinispan
    Infinispan是一個基于Java的開源鍵值NoSQL數(shù)據(jù)存儲,和分布式數(shù)據(jù)節(jié)點平臺,支持事務(wù),peer-to-peer client/server 架構(gòu)。
     f. GridGain
    :分布式、面向?qū)ο?、基于?nèi)存、SQL+NoSQL鍵值數(shù)據(jù)庫。支持ACID事務(wù)。
     g. GigaSpaces
    GigaSpaces內(nèi)存數(shù)據(jù)網(wǎng)格能夠充當應(yīng)用的記錄系統(tǒng),并支持各種各樣的高速緩存場景。

    posted on 2014-01-13 11:53 crazycy 閱讀(2152) 評論(1)  編輯  收藏 所屬分類: JavaEE技術(shù) 、DBMS

    評論

    # re: NoSQL非關(guān)系型數(shù)據(jù)庫學習(一)  回復  更多評論   

    Data Visualization Software
    SQIAR (http://www.sqiar.com/solutions/technology/tableau) is a leading Business intelligence Company.Using Tableau,SQIAR rapidly transform your sea of uncorrelated data into meaningful interactive and actionable visual insights.
    2014-02-12 04:32 | rohail.khan666@hotmail.com
    主站蜘蛛池模板: 国产免费131美女视频| 777亚洲精品乱码久久久久久| 日本一道在线日本一道高清不卡免费| 国产成人精品久久亚洲高清不卡 | 久草福利资源网站免费| 亚洲色精品VR一区区三区| 国产成人+综合亚洲+天堂| 国产特黄特色的大片观看免费视频| 免费视频成人片在线观看| 免费精品人在线二线三线区别| 久久综合给合久久国产免费| 永久免费AV无码网站在线观看| 亚洲国产精品无码中文字| 免费乱理伦在线播放| 久久久久亚洲AV片无码下载蜜桃| 亚洲日韩精品无码一区二区三区| 久久精品国产亚洲AV久| 久久一区二区免费播放| 午夜高清免费在线观看| 亚洲男人天堂2017| 无码免费又爽又高潮喷水的视频| 亚洲区日韩精品中文字幕| 亚洲熟妇无码久久精品| 一区二区三区在线免费观看视频| 一级做a爰全过程免费视频毛片| 亚洲高清免费在线观看| 2021国产精品成人免费视频| 奇米影视亚洲春色| 亚洲av午夜国产精品无码中文字 | 亚洲人成色7777在线观看| 亚洲国产精品成人综合色在线婷婷 | 日韩大片在线永久免费观看网站| 亚洲经典在线中文字幕| 中国好声音第二季免费播放| 日本免费久久久久久久网站| 亚洲精品成人区在线观看| 亚洲人成网站999久久久综合| h片在线免费观看| 成人午夜亚洲精品无码网站| 日本黄页网址在线看免费不卡 | 亚洲av无码国产综合专区 |