class_docstr: Base class for database framework wrappers.
  
  Attributes
  ----------
  host: str
     It can be either:
        1. Known hostname or IP address in which database server resides.
        2. URI: A database framework specific connection string.
  name: str
     Name of database containing experiments.
  port: int
     Port that database server listens to for requests.
  username: str
      Name of user with write/read permissions to database with name `name`.
  password: str
      Secret phrase of user, `username`.
docstr: Read a collection and return a value according to the query.
  
  Parameters
  ----------
  collection_name: str
     A collection inside database, a table.
  query: dict, optional
     Filter entries in collection.
  selection: dict, optional
     Elements of matched entries to return, the projection.
  
  Returns
  -------
  list
      List of matched document[s]
docstr_tok: ["Read","a","collection","and","return","a","value","according","to","the","query",".","Parameters","--","--","--","--","--","collection_name",":","str","A","collection","inside","database",",","a","table",".","query",":","dict",",","optional","Filter","entries","in","collection",".","selection",":","dict",",","optional","Elements","of","matched","entries","to","return",",","the","projection",".","Returns","--","--","--","-","list","List","of","matched","document","[","s","]"]
code: def read(self, collection_name, query=None, selection=None):
      """Read a collection and return a value according to the query.
  
      Parameters
      ----------
      collection_name: str
         A collection inside database, a table.
      query: dict, optional
         Filter entries in collection.
      selection: dict, optional
         Elements of matched entries to return, the projection.
  
      Returns
      -------
      list
          List of matched document[s]
  
      """
  
imports: import logging
  from abc import abstractmethod, abstractproperty
  from orion.core.utils import Factory, GenericFactory
label_desc: Use image node_id 10 for calling the Database obj's underlying member method code with example usage: obj.read(collection_name, query, selection) without return types