text: Title: [BUG] NameError: name 'pq' is not defined if pyarrow is not installed
  Body: <!--
  Thank you for your contribution!
  
  Please review https://github.com/mars-project/mars/blob/master/CONTRIBUTING.rst before opening an issue.
  -->
  
  **Describe the bug**
  ```python
  mars/services/lifecycle/api/oscar.py:19: in <module>
      from ..supervisor.tracker import LifecycleTrackerActor
  mars/services/lifecycle/supervisor/__init__.py:15: in <module>
      from .service import LifecycleSupervisorService
  mars/services/lifecycle/supervisor/service.py:17: in <module>
      from .tracker import LifecycleTrackerActor
  mars/services/lifecycle/supervisor/tracker.py:21: in <module>
      from ...meta.api import MetaAPI
  mars/services/meta/__init__.py:15: in <module>
      from .api import AbstractMetaAPI, MetaAPI, MockMetaAPI, WebMetaAPI
  mars/services/meta/api/__init__.py:16: in <module>
      from .oscar import MetaAPI, MockMetaAPI
  mars/services/meta/api/oscar.py:21: in <module>
      from ....dataframe.core import (
  mars/dataframe/__init__.py:33: in <module>
      from .datasource.read_parquet import read_parquet
  mars/dataframe/datasource/read_parquet.py:98: in <module>
      class ParquetEngine:
  mars/dataframe/datasource/read_parquet.py:122: in ParquetEngine
      use_arrow_dtype=None,
  E   NameError: name 'pq' is not defined
  ```
  
  **To Reproduce**
  To help us reproducing this bug, please provide information below:
  1. Your Python version 3.7.7
  2. The version of Mars you use latest master
  3. Versions of crucial packages, such as numpy, scipy and pandas
  4. Full stack of the error.
  5. Minimized code to reproduce the error.
  
  **Expected behavior**
  A clear and concise description of what you expected to happen.
  
  **Additional context**
  Add any other context about the problem here.
  