NoSQL tehnologije i primjene

Tomić, Nela (2016) NoSQL tehnologije i primjene. Diploma thesis, Faculty of Science > Department of Mathematics.

Language: Croatian

Download (4MB) | Preview


Relational databases have a long-standing position in most organizations, and for good reason. Their functionality and reliability has clearly been proven over time. But organizations are increasingly considering alternatives to legacy relational infrastructure. In some cases the motivation is technical — such as a need to handle new, multi-structured data types or scale beyond the capacity constraints of existing systems — while in other cases the motivation is driven by the desire to identify viable alternatives to expensive proprietary database software and hardware. A third motivation is agility or speed of development, as companies look to adapt to the market more quickly and embrace agile development methodologies. The term “NoSQL” started to make an umbrella category for all non-relational databases that satisfy to some extent these principles. When compared to relational databases, many NoSQL systems share several key characteristics including a more flexible data model, higher scalability, and superior performance. But most of these NoSQL databases also discard the very foundation that has made relational databases so useful for generations of applications - expressive query language, secondary indexes and strong consistency. We can group NoSQL databases into four distinct models: Key-Value databases Key-value databases are simple and flexible but they satisfy the need of fast retrieval services and high scalability options. They are based on the associative array, which is a more generalized data structure than arrays. Keys may be integers, strings, lists of values, or other types. An important constraint on keys is that they must be unique within a namespace. Keys are used to look up values and those values can vary by type. Some of the limitations of key-value databases, such as lack of query language, are mitigated with additional features such as search tools. Document databases Documents are flexible data structures that do not require predefined schemas. Documents are organized into related sets called collections. Collections should contain similar types of entities, although the keys and values may differ across documents. Denormalization, query processors and indexes play crucial roles in the overall performance of document databases. It helps to use design patterns when modeling common relations such as one-to-many, many-to-many, and hierarchies. Sometimes embedded documents are called for, whereas in other cases, references to other document identifiers are a better option when modeling these relations. Column databases Column family databases are some of the most scalable databases available. They also support high availability, even cross-data center availability. Column family databases are designed for large volumes of data. It helps to use tools designed specifically for moving, processing, and managing Big Data and Big Data systems. They are flexible in regard to the type of data stored and the structure of schemas. They provide developers with the flexibility to change the columns of a column family. The basic, logical components of a column family database are namespaces, column families, columns, and row keys. Graph databases Graph theory provides a solid foundation of methods and algorithms for building graph databases and analyzing relations between entities. Graphs are composed of two simple components: vertices that represent entities and edges that represent relationships between entities. Depending on the types of relations, edges may be directed or undirected. This simplicity quickly gives way to a broad range of graph properties and features that are useful for modeling a number of phenomena.

Item Type: Thesis (Diploma thesis)
Supervisor: Manger, Robert
Date: 2016
Number of Pages: 109
Subjects: NATURAL SCIENCES > Mathematics
Divisions: Faculty of Science > Department of Mathematics
Depositing User: Iva Prah
Date Deposited: 19 May 2016 14:24
Last Modified: 19 May 2016 14:24

Actions (login required)

View Item View Item