MongoDB koncepcja analityczna
Czy nam się dowiedzieć, co baza danych powinna nauczyć się jednego z podstawowych pojęć w MongoDB podstawowej koncepcji jest to, że dokumenty, zbiory, bazy danych, tu wprowadzić jeden po drugim.
Poniższa tabela pomoże Ci łatwiej zrozumieć niektórych pojęć Mongo:
SQL Terminologia / Koncepcje | MongoDB Termin / koncepcja | Wyjaśnienie / Opis |
---|---|---|
baza danych | baza danych | baza danych |
stół | kolekcja | tabeli bazy danych / Kolekcje |
rząd | dokument | Zapis danych Line / Dokumentacja |
kolumna | pole | Pole danych / Domain |
wskaźnik | wskaźnik | wskaźnik |
stół łączy | Tabela łączy, MongoDB nie obsługuje | |
klucz podstawowy | klucz podstawowy | klucz podstawowy, MongoDB automatycznie _id pole jako klucz podstawowy |
Przez następujące przykłady postać, możemy bardziej intuicyjne zrozumienie Mongo niektórych pojęć:
baza danych
MongoDB można utworzyć wiele baz danych.
Domyślna baza danych MongoDB jest "db", baza danych jest przechowywana w katalogu danych.
Pojedyncza instancja MongoDB może pomieścić wiele niezależnych baz danych, każdy z własnym zestawem uprawnień i różnych baz danych są również umieszczone w różnych plikach.
"Pokaż DBS", aby wyświetlić listę wszystkich danych.
$ ./mongo MongoDB shell version: 3.0.6 connecting to: test > show dbs local 0.078GB test 0.078GB >
Realizacja polecenia "db", aby wyświetlić bieżący obiekt bazy danych lub kolekcję.
$ ./mongo MongoDB shell version: 3.0.6 connecting to: test > db test >
Run "użyć" polecenie, można podłączyć do konkretnej bazy danych.
> use local switched to db local > db local >
Przykłady wyżej polecenia, "Lokalny" jest to, że chcesz połączyć bazę danych.
W następnym rozdziale omówimy szczegółowo użycie MongoDB w poleceniu.
Baza danych jest również identyfikowany przez nazwę. Nazwa bazy danych może być dowolny z poniższych warunków UTF-8 string.
- To nie może być pusty ciąg ( "").
- Nie zawierają '' (spacja)., $, /, \ I \ 0 (null Yu Fu).
- Powinno być pisane małymi literami.
- Do 64 bajtów.
Niektóre nazwy baz danych są zastrzeżone i mogą bezpośrednio uzyskać dostęp do tych baz danych mają szczególną rolę.
- admin: z punktu widzenia instytucji, która jest "root" w bazie. Jeśli dodasz użytkownika do bazy danych, użytkownik automatycznie dziedziczy wszystkie uprawnienia do bazy danych. Niektóre konkretne polecenia po stronie serwera można uruchamiać tylko z bazy danych, takie jak listy wszystkich bazy danych lub serwera.
- lokalnych: dane nigdy nie zostanie skopiowany, może być stosowany do przechowywania dowolnego zbiór jest ograniczony do jednego lokalnego serwera
- config: Gdy Mongo fragmentacji jest ustawiony, bazy danych config używane wewnętrznie do przechowywania informacji plaster.
plik
Dokumentacja jest klucz (klucz-wartość) z (tj BSON). Dokument MongoDB nie musi być podawana tego samego pola, to samo pole i nie wymaga tego samego typu danych, który jest relacyjna baza danych jest bardzo różna, MongoDB również bardzo widocznym elementem.
Prostym przykładem są następujące dokumenty:
{"site":"www.w3big.com", "name":"本教程"}
Poniższa tabela zawiera odpowiednie warunki RDBMS i MongoDB:
RDBMS | MongoDB |
---|---|
baza danych | baza danych |
stół | Ustaw |
rząd | plik |
rząd | pole |
Wspólny Stół | dokument wbudowania |
klucz podstawowy | Klucz podstawowy (MongoDB stanowi klucz do _id) |
Usługi bazy danych i klienci | |
Mysqld / Oracle | mongod |
mysql / SQLPLUS | Mongo |
Należy pamiętać, że:
- par klucz / wartość dokumentu są sortowane.
- Dokument może być nie tylko wartość ciąg wewnątrz cudzysłowów może być także kilka innych typów danych (lub nawet cały osadzone dokumenty).
- MongoDB rozróżnić rodzaje i wrażliwa.
- Dokument MongoDB nie może mieć duplikaty kluczy.
- Kluczowym dokumentem jest ciągiem. Z nielicznymi wyjątkami, klucz można używać UTF-8 znaków.
Kluczowe dokumenty Naming Convention:
- Klucz nie może zawierać \ 0 (znak null). Ten znak jest używany do wskazania końca wiązania.
- . A $ mają być używane tylko szczególne znaczenie w pewnych okolicznościach.
- Do podkreślenia "_" na początku klawiszy są zarezerwowane (nie jest to bezwzględnie konieczne).
Ustaw
MongoDB to grupa Dokument kolekcji, podobnie jak RDBMS (system zarządzania bazami danych relacyjnych: relacyjny system zarządzania bazą danych) w formie.
Kolekcja występuje w bazie danych, zbiór bez stałej strukturze, co oznacza, że można wstawić do gromadzenia danych w różnych formatach i rodzajach, ale zwykle możemy wstawić zestaw danych będzie miało pewne znaczenie.
Na przykład, możemy udokumentować te różne struktury danych do kolekcji:
{"site":"www.baidu.com"} {"site":"www.google.com","name":"Google"} {"site":"www.w3big.com","name":"本教程","num":5}
Kiedy pierwszy dokument do kolekcji zostanie utworzona.
Uzasadnione nazwa kolekcji
- Nazwa kolekcji nie może być pusty ciąg "."
- Ustaw Nazwa nie może zawierać znaków \ 0 (null znaków), znak ten oznacza koniec zbiór nazwisk.
- Ustaw Nazwa nie może być "system". Na początku, która jest zarezerwowana dla ustawionego systemu prefiksem.
- Utworzonych przez użytkownika nazwa kolekcji nie może zawierać znaków zastrzeżonych. Niektóre sterowniki obsługują kolekcję zawierającą nazwę, to dlatego, że jakiś system generowane Kolekcja zawiera znak. Jeśli nie chcesz, aby uzyskać dostęp do kolekcji takiego systemu jest tworzony, w przeciwnym razie nie pojawiają się w nazwie $ środku.
Następujące przykłady:
db.col.findOne()
ograniczona kolekcje
Ograniczone są zbiory kolekcji stałej wielkości.
Posiada wysokie właściwości użytkowe i kolejka ważność (wygasły zgodnie z kolejnością wstawienia). Nieco podobna i "RRD" koncepcji.
Ograniczone zbiory są automatycznie wstawiane w celu utrzymania przedmiotów o wysokiej wydajności. Jest idealny do funkcji i podobnym standardzie kolekcji rejestrowania różnych, trzeba jawnie stworzyć kaucyjna zbieranie, zbiór określony rozmiar w bajtach. Zbiór wartości przestrzeni do przechowywania danych przypisanych wcześniej.
Należy zauważyć, że określony rozmiar pamięci bazy danych zawierającej informacje nagłówka.db.createCollection("mycoll", {capped:true, size:100000})
- W zakorkowanej kolekcji, można dodać nowe obiekty.
- Może być aktualizowana, jednak obiekt nie będzie zwiększenie powierzchni magazynowej. Jeśli zwiększysz aktualizacja nie powiedzie się.
- Baza danych nie pozwala na usunięcie. Użyj spadek () metoda, aby usunąć cały zbiór wierszy.
- Uwaga: Po usunięciu, należy jawnie odtworzyć kolekcję.
- W maszynach 32-bitowych, ograniczona Kolekcja jest największym 1E9 składowania (1x10 9) bajtów.
metadane
Informacja w bazie danych przechowuje się w bazie. Wykorzystują system przestrzeni nazw:
dbname.system.*
W nazw baz danych MongoDB <dbname> .system *, która zawiera wiele informacji o systemie, zbiorów specjalnych (kolekcja), w następujący sposób:
nazw Collection | opis |
---|---|
dbname.system.namespaces | Lista wszystkich obszarów nazw. |
dbname.system.indexes | Lista wszystkich indeksów. |
dbname.system.profile | Zawiera on podsumowanie danych (profil) informacji. |
dbname.system.users | Lista wszyscy użytkownicy mogą uzyskać dostęp do bazy danych. |
dbname.local.sources | Zawiera on kopię końcowego (Slave) informacji o serwerach i statusu. |
Aby zmodyfikować obiekt w kolekcji System posiada następujące ograniczenia.
W {{}} system.indexes wstawiania danych, można utworzyć indeks. Ale poza tym informacje stół jest niezmienna (komenda specjalny wskaźnik spadku automatycznie aktualizuje odpowiednie informacje).
{{}} System.users są modyfikowalne. {{System.profile}} zostanie usunięty.
MongoDB typ danych
Poniższa tabela MongoDB kilka powszechnie stosowane typy danych.
Typy danych | opis |
---|---|
sznur | String. Przechowywanie danych powszechnie stosowane typy danych. W MongoDB, UTF-8 zakodowany ciąg jest legalne. |
liczba całkowita | wartości całkowitej. Jest używany do przechowywania wartości. W zależności od serwera, którego używasz, może być podzielony na 32-bitową lub 64-bitową. |
Boolean | Wartość logiczna. Do przechowywania wartości logiczne (prawda / fałsz). |
podwójny | Podwójnej precyzji wartość zmiennoprzecinkową. Do przechowywania wartości zmiennoprzecinkowych. |
Min / Max klucze | Minimalna wartość oraz wartość BSON (binarne JSON) Element a najwyższa wartość wskaźnika względnej. |
tablice | Na tablicy lub listy lub przechowywać wiele wartości dla klucza. |
datownik | Datownik. Modyfikować lub dodawać rekordy udokumentować określony czas. |
przedmiot | Dla osadzonych dokumentów. |
Null | Tworzy pustą wartość. |
symbol | Symbol. Ten typ danych jest zasadniczo równa typu łańcuchowego, ale różnica polega na tym, że jest zasadniczo na zastosowaniu specjalnych symboli wpisywanych języka. |
data | Data Godz. Format czasu UNIX używany do przechowywania bieżącej daty i czasu. Można określić własne data i czas: tworzony jest obiekt Date, napływające informacje o dacie. |
ID obiektu | ID obiektu. ID używany do tworzenia dokumentu. |
Dane binarne | danych binarnych. Do przechowywania danych binarnych. |
kod | Typ Tag. Kod JavaScript jest używany do przechowywania dokumentów. |
wyrażenie regularne | Wyrażenie regularne. Do przechowywania wyrażenie regularne. |