Bazy NoSQL WB@NOSQL

[Alan Kay]

Once you have something that grows faster than education grows, you’re always going to get a pop culture.

Alan Kay

Zaczynamy – luty 2017!

Indeks „TIOBE” dla baz danych:

Co to jest „NoSQL”?

K. Haines
„Applications, whether web apps, simple dynamic websites or command line apps, frequently need some sort of persistent data store. As a result, databases have become ubiquitous on modern systems, and because of this chicken and egg relationship, programmers will often habitually reach for a relational database when the project only calls for a way to persist data.”

L. Carlson, L. Richardson
Wszyscy chcą pozostawić po sobie coś trwałego. […] Każdy program, który piszemy, pozostawia jakiś ślad swojego działania (w najprostszym przypadku są to dane wyświetlane na standardowym urządzeniu wyjściowym). Większość bardziej rozbudowanych programów idzie o krok dalej: zapisują one – w pliku o określonej strukturze – dane stanowiące rezultat jednego uruchomienia, by przy następnym uruchomieniu rozpocząć działanie w stanie, w którym zakończyła się poprzednia sesja. Istnieje wiele sposobów takiego utrwalania danych, zarówno bardzo prostych, jak i wielce skomplikowanych.

W 2009 roku Johan Oskarsson organizował konferencję poświęconą bazom danych, które pojawiły się po roku 2000. Informacje o konferencji chciał umieścić na Twitterze. Dlatego potrzebował łatwego do wyszukiwaniu w tweetach hashtaga. Użył #nosql zaproponowanego przez Erica Evansa z Rackspace.

Zobacz też artykuł NoSQL w Wikipedii. Warto też przeczytać artykuł Teda Newarda, The Vietnam of Computer Science. (I to też Gay marriage: the database engineering perspective.)

In the relational databases world the data modeling process was mainly a single step activity: design the schema based on normalization rules. In the NoSQL world, designing the schema means analyzing data access patterns. Differently put the question shifted from how do I store data to how will I access data.

[Schema Design in Schema-less Datastores]

MongoDB

  1. Co to jest MongoDB?
  2. Interaktywna powłoka mongo
  3. Proste grupowania
  4. Aggregation Pipeline
  5. Platforma obliczeniowa MapReduce
  6. MapReduce Cookbook
  7. Wyszukiwanie pełnotekstowe

Elastic / ElasticSearch

  1. Wyszukiwanie z ElasticSearch
  2. Hurtowy import danych do ElasticSearch
  3. Mappings & Stempel analysis for Polish
  4. ElasticSearch & Ruby

Laboratoria