MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

przechowywanie pełnego tekstu z pliku txt do mongodb

Nie musisz kodować go w formacie JSON/BSON, jeśli używasz sterownika. Jeśli używasz powłoki MongoDB, musisz się tym martwić podczas wklejania zawartości.

Prawdopodobnie chciałbyś użyć sterownika Pythona MongoDB :

from pymongo import MongoClient

client = MongoClient()
db = client.test_database  # use a database called "test_database"
collection = db.files   # and inside that DB, a collection called "files"

f = open('test_file_name.txt')  # open a file
text = f.read()    # read the entire contents, should be UTF-8 text

# build a document to be inserted
text_file_doc = {"file_name": "test_file_name.txt", "contents" : text }
# insert the contents into the "file" collection
collection.insert(text_file_doc)

(Nieprzetestowany kod)

Jeśli upewniłeś się, że nazwy plików są unikalne, możesz ustawić _id właściwość dokumentu i pobierz ją w następujący sposób:

text_file_doc = collection.find_one({"_id": "test_file_name.txt"})

Możesz też upewnić się, że file_name właściwość, jak pokazano powyżej, jest indeksowana i wykonaj:

text_file_doc = collection.find_one({"file_name": "test_file_name.txt"})

Inną opcją jest użycie GridFS, chociaż często nie jest to zalecane w przypadku małych plików.

Jest starter tutaj dla Pythona i GridFS.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB:Pobierasz tylko dokumenty utworzone w ciągu ostatnich 24 godzin?

  2. Filtruj elementy tablicy za pomocą $regex

  3. Emoji nie zostały poprawnie zapisane w mongodb

  4. MongoDB/PHP:usuń element z tablicy

  5. W Flask konwertuj obiekt POST na reprezentację odpowiednią dla mongodb