Presentation is loading. Please wait.

Presentation is loading. Please wait.

Data and Applications Security Developments and Directions Dr. Bhavani Thuraisingham The University of Texas at Dallas NoSQL Data Management.

Similar presentations


Presentation on theme: "Data and Applications Security Developments and Directions Dr. Bhavani Thuraisingham The University of Texas at Dallas NoSQL Data Management."— Presentation transcript:

1 Data and Applications Security Developments and Directions Dr. Bhavani Thuraisingham The University of Texas at Dallas NoSQL Data Management

2 NoSQL Overview l A NoSQL database provides a mechanism for storage and retrieval of data that is modeled in means other than the tabular relations used in relational databases. Motivations for this approach include simplicity of design, horizontal scaling and finer control over availability. l NoSQL databases are often highly optimized key–value stores intended primarily for simple retrieval and appending operations, whereas an RDBMS is intended as a general purpose data store. There will thus be some operations where NoSQL is faster and some where an RDBMS is faster. l NoSQL databases are finding significant and growing industry use in big data and real-time web applications. [ NoSQL systems are also referred to as "Not only SQL" to emphasize that they may in fact allow SQL-like query languages to be used. [ l Barriers to the greater adoption of NoSQL data stores in practice include: the lack of full ACID transaction support, the use of low-level query languages, the lack of standardized interfaces, and the huge investments already made in SQL by enterprises.

3 Taxonomy l There have been various approaches to classify NoSQL databases, each with different categories and subcategories. Because of the variety of approaches and overlaps it is difficult to get and maintain an overview of non-relational databases. Nevertheless, the basic classification n is based on data model. A few of these and their prototypes are: - Column: HBase, Accumulo, CassandraHBaseAccumuloCassandra - Document: MarkLogic, MongoDB, CouchbaseMarkLogicMongoDBCouchbase - Key-value: Dynamo, Riak, Redis, MemcacheDB, Project VoldemortRiakRedisMemcacheDBProject Voldemort - Graph: Neo4J, OrientDB, Allegro, VirtuosoOrientDBAllegroVirtuoso

4 Classification l Classification based on data model l Data-structures server RedisRedis l Document Store MarkLogic, CouchDB, MongoDB, Jackrabbit, XML-Databases, ThruDB, CloudKit, Persevere, Riak Basho, ScalarisMarkLogicCouchDBMongoDBJackrabbitRiak l KV Cache Memcached, Repcached, Coherence, Infinispan, eXtreme Scale, JBoss Cache, Velocity, Terracotta, Gigaspaces XAPMemcachedCoherenceeXtreme Scale VelocityTerracottaGigaspaces XAP l KV Store Keyspace, Flare, SchemaFree, RAMCloud l KV Store - Eventually consistent Dynamo, Voldemort, Dynomite, SubRecord, MotionDb, DovetailDBDynamoVoldemort l KV Store - Ordered TokyoTyrant, Lightcloud, NMDB, Luxio, MemcacheDB, ActordMemcacheDB l Object Database ZopeDB, DB4O, Shoal, PerstZopeDBPerst l Tuple Store Gigaspaces, Coord, Apache RiverApache River l Wide Columnar Store BigTable, HBase, Cassandra, Hypertable, KAI, OpenNeptune, Qbase, KDIBigTableHBaseCassandraHypertable

5 Classification l Classification based on Feature l Data Model - Column Store, Document Store, Graph Database, Key–value Stores, Relational Database l Performance l Scalability l Flexibility l Complexity l Functionality

6 Document Store l The central concept of a document store is the notion of a "document". l While each document-oriented database implementation differs on the details of this definition, in general, they all assume that documents encapsulate and encode data (or information) in some standard formats or encodings. l Encodings in use include XML, YAML, and JSON as well as binary forms like BSON, PDF and Microsoft Office documents (MS Word, Excel, and so on).YAMLJSONBSONPDF l Different implementations offer different ways of organizing and/or grouping documents: - Collections - Tags - Non-visible Metadata - Directory hierarchies l Compared to relational databases, for example, collections could be considered as tables as well as documents could be considered as records. But they are different: every record in a table has the same sequence of fields, while documents in a collection may have fields that are completely different. l Documents are addressed in the database via a unique key that represents that document. One of the other defining characteristics of a document-oriented database is that, beyond the simple key- document (or key–value) lookup that you can use to retrieve a document, the database will offer an API or query language that will allow retrieval of documents based on their contents.

7 Document Store l Compared to relational databases, for example, collections could be considered as tables as well as documents could be considered as records. But they are different: every record in a table has the same sequence of fields, while documents in a collection may have fields that are completely different. l Documents are addressed in the database via a unique key that represents that document. One of the other defining characteristics of a document-oriented database is that, beyond the simple key- document (or key–value) lookup that you can use to retrieve a document, the database will offer an API or query language that will allow retrieval of documents based on their contents.

8 Graph l This kind of database is designed for data whose relations are well represented as a graph (elements interconnected with an undetermined number of relations between them). The kind of data could be social relations, public transport links, road maps or network topologies, for example. l AllegroGraph, IBM DB2, DEX, FlockDB, InfiniteGraph, Neo4j, OpenLink Virtuoso, OrientDB, Sones GraphDB, Sqrrl Enterprise, OWLIM AllegroGraphIBM DB2DEXFlockDBInfiniteGraphNeo4j OpenLink VirtuosoOrientDBGraphDBSqrrl Enterprise OWLIM

9 Key Value Stores l Key–value stores allow the application to store its data in a schema- less way. The data could be stored in a datatype of a programming language or an object. Because of this, there is no need for a fixed data model.The following types exist: l KV - eventually consistent, KV – hierarchical, KV - cache in RAM, KV - solid state or rotating disk, KV – ordered, Object database, Tabular, Tuple store, Triple/Quad Store (RDF) database, Multivalue databases, Reality, the original Pick/MV Database, Revelation Software's, D3 Cell database

10 NoSQL in the Cloud l NoSQL databases can be run on-premises, but are also often run on IaaS or PaaS platforms like Amazon Web Services, RackSpace or Heroku. There are three common deployment models for NoSQL on the cloud: IaaSPaaSAmazon Web ServicesRackSpace Heroku l Virtual machine image - cloud platforms allow users to rent virtual machine instances for a limited time. It is possible to run a NoSQL database on these virtual machines. Users can upload their own machine image with a database installed on it, use ready-made machine images that already include an optimized installation of a database, or install the NoSQL database on a running machine instance. Virtual machine

11 NoSQL in the Cloud l Database as a service - some cloud platforms offer options for using familiar NoSQL database products as a service, such as MongoDB, Redis and Cassandra, without physically launching a virtual machine instance for the database. The database is provided as a managed service, meaning that application owners do not have to install and maintain the database on their own, and pay according to usage. Some database as a service providers provide additional features, such as clustering or high availability, that are not available in the on-premise version of the database Database as a serviceMongoDB RedisCassandra l Native cloud NoSQL databases - some providers offer a NoSQL database service which is available only on the cloud. A well-known example is Amazon’s SimpleDB, a simple NoSQL key-value store. SimpleDB cannot be installed on a local machine and cannot be used on any cloud platform except Amazon’s.SimpleDB

12 Reference l http://en.wikipedia.org/wiki/NoSQL#Key.E2.80.93value_stores


Download ppt "Data and Applications Security Developments and Directions Dr. Bhavani Thuraisingham The University of Texas at Dallas NoSQL Data Management."

Similar presentations


Ads by Google