正文
Peewee 是 Python 生态中简单的,富有表现力的 ORM ,它支持 SQLite,MySQL 和 PostgreSQL。数据库经常需要为应用去使用扩展的数据。不过,通过 ad hoc 连接串去 get 和 set 数据库中的数据是一项非常有挑战的任务。这种情况下,Peewee 就可以帮很大的忙了。这个库对于开发者和数据库工程师都是安全的,使用它可以以程序化的 Python 类来直观地使用数据库资源。
开发者们以前用 SQLAlchemy 已经创建了一个数据库,应该会觉得使用 Peewee 创建数据库是更容易的。另外,Peewee 一直以来都适用于 Flask web 框架。
Sanic 是一个与 Flask 类似,基于 uvloop 的 web 框架,它能让 Python 更快速。Sanik,是基于 Python 3.5 设计的,它允许开发者在 async/await 语法上建立定义异步函数。在 Sanic 之前,Python 没有办法做到如此之快。uvloop 服务作为一个极其快速的库,顺其自然地替代了异步默认事件的循环。
Sanik 使得开发者能够在 Python 中编写异步应用,在这种方式下非常类似于 Node.js。但是通过 Sanic 作者的基准测试,uvloop 在处理超过每秒33k次请求时,依然表现良好,这超过了 Node.js 的性能。由于 Sanic 还很新,因此在不久的将来会有更多的改进和变更。你也可以到它的 开源库中 做出贡献。
你可能知道 Python 在数据可视化方面的一些类库,比如 matplotlib 和 seaborn。然而,Bokeh 是一个专门设计可视化交互并用于现代的 Web 浏览器的展示。开发者可以利用 Bokeh 以类似于 D3.js 的方式创建一流的可视媒体。除此之外,你可以利用非常大的或者流式的数据集来扩展更强的表现交互的能力。
你可以通过 Bokeh 创建可视化端点,仪表盘和数据应用。开发者也可以利用 Bokeh 处理通过其他类库,比如 Matplotlib, Seaborn 和 ggplot 创建的可视化图形。Bokeh 也可以和 Jupyter Notebooks 很好的结合来用于研究领域。
Blaze 用于处理数据库和分析查询的阵列技术。当对一个大到我们的电脑内存不能存储的数据集进行分析时,NumPy 和 Pandas 往往不能派上用场。这时开发者经常求助于 PostgreSQL,MongoDB,Hadoop,Spark 和磁盘外存储系统(PyTables and BColz)等等。
然而,理解每一个系统如何工作以及如何将数据整理成合适的形式是一个非常有挑战性的工作。由于缺乏对于如何在新技术之间混合和迁移数据的认识,从数据分析中攫取有效的结论将是非常困难的。Blaze 通过提供一个对不同种类数据库技术统一的接口以及迁移数据抽象化处理来解决这个难题。Blaze 对于表达计算是一个好的选择。
尽管存在一些其他的不太知名但是有效的 Python 类库,如 Gym + Universe,Boto3,Hug,Scrapy,Beautiful Soup等等。我只能选择这几个以便这篇博客有一个结尾。Python 开发者可以研究这些类库看看是否符合他们的需要,再合理的选择合适的类库。