数据工程
文章平均质量分 92
数据工程与机器学习
这个作者很懒,什么都没留下…
展开
-
SQL从优秀走向卓越(第二部分)
SQL中的日期和时间无论您有多少SQL经验,处理日期和时间都不是一项简单的任务,它们令人惊讶地棘手,有时候甚至要花费好几个小时才能解决问题。本文将介绍一些对新手和专家都有益的日期/时间处理技巧。操作卡在深入代码之前,先对高级工具进行评估。就像玩棋盘游戏Pandemic,让您角色的操作卡始终可见,这就能在每个回合中知道要采取什么操作。下面是我们的SQL日期/时间操作卡,包括可以对日期/时间执行哪些操作。每个操作都有一系列单独的函数和语法。假设您有一些带有字符串日期列的销售数据,而老板想要查看季度总原创 2021-06-16 10:23:54 · 331 阅读 · 0 评论 -
SQL从优秀走向卓越(第一部分)
使用CTE(公共表表达式),您可以走得更远。什么是CTE?公共表表达式(CTE)是在单个查询中可用的临时表。它们使用以下语法:WITH cte_name AS (SELECT ... FROM ... ) SELECT * FROM cte_name; 为什么CTE很重要?为了说明这种查询构造为何如此有用,让我们看一个示例。假设有两张表:比赛(matches):网球比赛统计数据球员(players):网球球员元数据网球比赛表:网球运动员表:我想知道每个球员在赢得原创 2021-06-11 10:17:55 · 327 阅读 · 1 评论 -
5个提升技能的数据工程项目
所有迹象都表明数据工程将蓬勃发展。Dice发布的2020年科技工作报告将数据工程列为2020年增长最快的领域,增长幅度达到惊人的50%,而数据科学职位仅增长了10%。您可以放心,数据工程的发展势头不会很快消退。为支持这一假设,国际数据集团 (IDG) 预测,从2021年到2024年,数据使用量的五年复合增长率 (CAGR) 将超过过去 30 年的数据创建总量。如果您仍然不相信数据工程的前景,那么让我们来看看收入潜力。截至2021年5月9日,Indeed数据表明数据工程师的年薪比数据科学家多10000美原创 2021-06-10 10:17:12 · 545 阅读 · 0 评论 -
2021年数据工程现状
让我们从显而易见的问题开始:lakeFS项目不是孤立存在的,它属于一个更大的数据工程技术生态系统,与我们正在解决的问题互补。更重要的是,我认为了解LakeFS所处的位置对于确定我们可以通过解决当今实践中的痛点为用户带来额外价值至关重要。话虽如此,我很高兴与数据工程社区分享我们创建和维护的内容!最后我总结了一些关于未来的想法和预测。数据黑客:开源金融数据仓库,专注数据工程和机器学习。2021年数据工程现状:数据生态系统lakeFS所在的部分可以描述为开放、灵活的分析平台,能够支持现代数据团队的原创 2021-06-08 10:21:21 · 351 阅读 · 0 评论 -
如何用Python在3分钟内创建一个金融网页应用
数据驱动项目的重要组成部分是其易于解释和可视化的能力,即使事先对数据一无所知的其他人也是如此。Streamlit是一个非常易于使用和直观的工具,用于在Python中构建高度交互、数据驱动的网页应用(Web App)。使用此工具,您可以只关注数据层面,而不必担心使用Flask或Django进行繁琐的部署。该过程非常简单,阅读完本文后,您也能在几分钟内部署Web应用,并且只需几行代码!配置项目要使用Streamlit构建网页应用,首先使用PyPi(Python包管理器)下载和安装它。在终端中使用以下命令原创 2021-06-02 10:13:26 · 472 阅读 · 1 评论 -
可视化Kafka
Kafka是开源流处理软件,用于构建事件驱动系统。尽管还有其他指南,但我想着重于可视化Kafka背后的主要概念。这样,当您阅读其他指南时,会感到更加自信。让我们开始吧!基础概念在开始之前,让我们先了解什么是Kafka,它是事件流软件,允许后端服务(通常在微服务体系结构中)彼此通信。生产者和消费者生产者(Producer)和消费者(Consumer)是负责发送/监听消息的服务,这些服务一般是后端程序。服务既可以是消费者,也可以是生产者。主题(Topic)主题是生产者可以向其发送消息的地址原创 2021-06-01 10:25:23 · 824 阅读 · 0 评论 -
如何用Python从IEX下载日内K线数据
您是否正在寻找一种免费获取股票日内K线的方法?使用这些数据,可以在本地回测交易策略和训练机器学习模型。本文将向您展示如何从IEX交易所下载免费的日内数据。IEX是美国的证券交易所,交易股票的数量超过8000个。为什么选择IEX?免费。 IEX是唯一能够免费定期下载大量日内OHCL(高开低收)数据的平台。出色的API。IEX API的文档齐全,易于理解,最重要的是它完美支持异步请求。在Alpaca上进行模拟交易。个人认为Alpaca是算法交易的最佳API,允许在IEX进行所有股票的模拟交易。因此,原创 2021-05-27 16:06:23 · 523 阅读 · 0 评论 -
2021年最好用的5个股票API
无论您是为对冲基金构建算法交易应用程序,还是为Robinhood构建应用程序,股市API都不可或缺。以下是目前市场上最好的股票API:FinnhubIEX CloudIntrinioTiingoMarketStack每个数据提供商都有不同的产品,您应该根据需求和预算选择最合适的产品。1. Finnhub简介: Finnhub是一家总部位于纽约的金融科技公司,向机构投资者和零售交易员提供金融数据。数据: 全球基本面数据(财务报表,股票分红,分析师预测等),全球市场报价,财报电话会议原创 2021-05-17 10:29:40 · 3283 阅读 · 1 评论 -
数据工程师应该掌握的7个数据库概念
如果您准备面试数据工程师,则必须了解数据库的所有主要概念。这不是夸大其词,几个月前,我进行了几次相关的面试,所有面试都涉及我在本文中提到的主题问题。这些概念不仅对数据工程师有用,对使用数据库的专业人员也很有用:数据科学家,机器学习工程师,软件开发人员等等。这些主要概念是:关系模型数据归一化主键和外键索引数据库事务复制分片让我们开始吧!关系模型关系模型(Relational model)是一种结构化和管理数据的方法。在此模型中,数据被组织到表中。每个表都有自己的架构,这意味着它原创 2021-05-15 08:47:33 · 275 阅读 · 2 评论 -
Docker多阶段构建指南
将映像推入生产环境时,使用Dockerfile创建高效的Docker映像非常重要。我们需要生产中使用尽可能小的映像,以实现更快的下载速度和更少的安全漏洞。在本文中,我们将了解如何使用Docker多阶段构建(multi-stage builds)有效地构建映像,并且还将探索在多阶段构建之前的选项。以下我们在本文中讨论的主题:示例项目使用Dockerfile构建映像常规构建的问题什么是生成器模式(Builder Pattern)生成器模式的问题什么是多阶段构建(Multi-stage Buil原创 2021-05-14 10:55:01 · 595 阅读 · 1 评论 -
编写Dockerfile的最佳实践
自从Docker面世以来,它彻底改变了我们使用容器的方式。这主要归功于Docker带来的简便性。它允许任何人,而无需处理与容器相关的任何高级主题。如果您不熟悉Docker,请考虑一下它,因为您可以选择一个模板(基础映像)并定义指令(Docker文件命令)以将代码放入其中并运行程序。尽管Docker的简单性可以帮助您完成工作,但是对其进行优化需要经验,用户需要花时间学习。我使用Docker已经有很长一段时间了,因此我决定与您分享一些最佳实践的经验,以便从第一天开始就开发更好的容器。1. 识别可缓存单元原创 2021-05-13 10:00:27 · 193 阅读 · 0 评论 -
如何用Python Faust构建流数据管道(下篇)
本文是如何用Python和Faust创建流处理管道系列文章的第二部分。如果您还不熟悉Faust的一般概念,建议先阅读系列文章的第一部分。今天,我们将建立一个简单的流处理管道,包含多个任务。这是Kafka streams的常见用例,也是探索Faust的一种有趣方式。好的,现在让我们动起来!项目布局在开始新项目和学习新技术时,最令人沮丧的事情之一就是设置项目结构。在单个Python模块中启动Faust项目是完全可行的,但是如果您打算创建多个流处理任务,则最好从设置项目结构开始。Faust为大中型项目提原创 2021-05-10 09:39:59 · 706 阅读 · 0 评论 -
如何用Python Faust构建流数据管道(上篇)
Faust是一个将Kafka Streams的概念移植到Python的三方库。如果您不熟悉Kafka,那么在阅读该系列之前,最好先阅读Kafka文档和Kafka Streams。我们先介绍Faust的基础知识,包括核心概念和通用API。Kafka Streams在Apache Kafka之上为客户端库提供了一些抽象。因为Faust在很大程度上重用了完全相同的概念,所以学习Faust的过程就是学习Kafka Streams的过程。好的,让我们开始吧!应用(Application)应用程序(Appli原创 2021-05-10 09:39:03 · 518 阅读 · 0 评论 -
大数据流处理引擎和框架大全
大数据流处理框架,应用程序和其他资源的精选列表。目录流处理引擎流处理库流处理应用物联网DSL(特定领域语言)数据管道在线机器学习流式SQL工具包性能基准闭源软件流处理引擎Apache Apex [Java] - 用于大数据流处理和批处理的统一平台。Apache Ballista [Rust]-Apache Arrow支持的分布式计算平台。Apache Flink [Java]-用于高吞吐量,低延迟的数据流处理的系统,支持状态计算,数据驱动的窗口语义和迭代流处理。Apa原创 2021-05-07 10:57:22 · 1455 阅读 · 1 评论 -
Apache Kafka的3个核心Python客户端库
数据赋予了世界力量。我们每秒获取大量信息,我们对其进行清理,分析并创建更有价值的输出,无论是日志文件,用户活动,聊天消息还是其他内容。我们提供的速度越快,便会为客户带来更多的价值。我们正处于一个快节奏且瞬息万变的环境时代。Apache Kafka是一个分布式流平台,可以实时发布,订阅,存储和处理消息。其拉取式的体系结构减轻了繁重负载对服务的压力,并使其易于扩展。它以低延迟将大量数据从源移动到目的地。Kafka是基于JVM的平台,因此客户端的主流编程语言是Java。但是,随着社区的蓬勃发展,高质量的开源P原创 2021-05-05 08:50:21 · 766 阅读 · 4 评论 -
Apache Airflow实用技巧和最佳实践
当我第一次使用Airflow构建ETL数据管道时,在弄清为什么管道无法运行之后,我经历了许多令人难忘的“啊哈”时刻。由于技术文档无法涵盖所有内容,因此我倾向于通过试错和阅读优秀的源代码来学习新工具。在本文中,我将分享Airflow的许多实用技巧和最佳实践,以帮助您建立更可靠和可扩展的数据管道。DAG Schedule在Airflow中,Airflow调度程序会根据DAG文件中指定的start_date和schedule_interval来运行DAG,对于初学者来说,很容易被Airflow的工作计划机制弄原创 2021-04-30 10:21:19 · 1140 阅读 · 0 评论 -
Apache Airflow 2.0能否满足当前数据工程需求?
目录与以前的版本相比,Airflow 2.0的优势新UI看起来更现代调度程序不再是瓶颈有了完善的REST API更智能的传感器(sensors)整个项目已经进行了重组无法令我信服的新功能TaskGroup功能通过TaskFlow API在任务之间共享数据新版本中尚未解决的Airflow弱点混乱的调度逻辑仍然没有数据管道的版本控制配置过载本地开发结论与旧版本相比,Airflow 2.0的优势新UI看起来更现代安装Airflow 2.0之后,您将能够访问与以前原创 2021-04-28 09:53:35 · 321 阅读 · 1 评论 -
BigQuery:如何查询数据
在之前的BigQuery教程中,我们介绍了BigQuery体系结构,存储管理,以及将数据提取到BigQuery中。在本文中,我们将介绍使用SQL在BigQuery中查询数据,保存和共享查询,创建视图和实例化视图。标准SQLBigQuery支持两种SQL方言:标准SQL和旧式SQL。标准SQL是查询BigQuery中存储的数据的首选,因为它符合ANSI SQL 2011标准。与旧版SQL相比,它还有其他优点,例如JOIN操作的自动谓词下推以及对相关子查询的支持。有关更多信息,请参见标准SQL优点。在Bi原创 2021-04-21 10:00:21 · 1758 阅读 · 0 评论 -
了解足够有用的docker知识(第二部分)
在本系列的第1部分中,我们探讨了Docker容器的概念。我们讨论了Docker容器重要的原因以及理解它们的几种方法。在本文中,我将分享您需要了解的Docker生态系统中的其他核心术语。为了更容易理解,我将Docker术语分为两类:Essentials(基础)和Scaling(高级)。基础术语Docker Platform:Docker软件,可以在任何Linux服务器上用容器打包和运行应用程序。Docker平台捆绑了代码文件和依赖项。它通过实现可移植性和可重现性来促进轻松扩展。Docker Engi原创 2021-01-07 07:54:44 · 178 阅读 · 1 评论 -
了解足够有用的Docker知识(第一部分)
容器(Docker)对于改善软件开发和数据科学中的安全性,可重复性和可伸缩性非常有用。它们的崛起是当今技术最重要的趋势之一。Docker是一个用于在容器内开发,部署和运行应用程序的平台。Docker本质上是容器化的代名词。如果您是现任或有抱负的软件开发人员或数据科学家,那么Docker就是您的未来。如果您还不了解最新技术,请不要担心,本文将帮助您了解基础性概念。在本系列的五篇文章中,我们将介绍Docker术语,Dockerfiles,Docker映像,Docker命令和数据存储。本文来自《数据黑客》原创 2021-01-07 07:52:21 · 147 阅读 · 0 评论 -
数据工程:将Jupyter Notebook作为数据管道
本文介绍了python kf-notebook-component项目,该项目允许Jupyter Notebook作为Kubeflow管道单独执行。我相信每个人都同意Jupyter Notebook是处理数据的好工具。Kubeflow具有内置的“ Jupyter Notebook Server”模块,可让你直接在Notebook中进行研究。当你完成实验阶段并希望将其投入生产时,你可以将代码包装在管道步骤(pipeline steps)中,并直接从Notebook的“Kubeflow Pipelines”模原创 2020-12-30 08:38:55 · 351 阅读 · 0 评论 -
数据工程:如何用Apache Airflow构建数据管道
数据管道(Data Pipelines)难以构建和管理,因此最好使用特定的工具来帮助我们完成任务。Apache Airflow是一个非常流行的开源管理工作流平台,在本文中,您将学习如何使用它来自动化第一个工作流。本文假设您已经知道如何创建和运行Bash和Python脚本。本教程使用Ubuntu 20.04,并安装了ImageMagick,tesseract和Python3。如何准备工作流一个重要的概念是,您将仅使用Airflow来自动化和管理任务,因此必须设计工作流并将其分解为Bash或Python脚原创 2020-12-25 09:40:15 · 548 阅读 · 0 评论 -
数据工程:建立可靠数据管道的15个原则
我作为数据工程师学习到很重要的经验是,任何数据管道(data pipelines)在某个时刻都会失败。连接断开,依赖关系断开,数据到达时间太晚,或者外部API无法访问等。发生故障的原因很多,但是无论如何,我们都可以采取措施来减轻数据管道故障的影响。本文来自《数据黑客》,登录官网可阅读更多精彩资讯和文章。1. 区分初始数据摄取和常规数据摄取每当我们集成新的数据源时,通常都需要将整个历史记录加载到集中式存储库中。然后,对于日常业务,我们将创建仅吸收新数据的管道,并且有可能会丢弃初始摄入的代码。想象一下,原创 2020-12-15 10:15:11 · 268 阅读 · 0 评论 -
免费的数据准备工具:talend
我喜欢寻找可以帮助我创建见解的新数据产品。为了方便使用和提高速度,我混合使用了代码和无代码工具。当我从事个人项目或自由合同时,我专注于低成本的工具。过去一周,我正在审查“数据质量解决方案”的2020 Gartner魔力象限,我发现talend提供了免费的开源无代码数据准备工具。大多数公司专注于其企业产品,这些产品通常价格昂贵,超出了自由数据分析师和数据科学家的预算。我对找到免费的工具感到兴奋不已,并下载了该版本进行测试。现在我想与您分享这个“隐藏”的宝石。本文来自《数据黑客》,登录官网可阅读更多精彩资讯和原创 2020-12-03 08:59:11 · 1118 阅读 · 1 评论 -
最好的任务编排工具:Airflow vs Luigi vs Argo vs MLFlow vs KubeFlow
任务编排工具和工作流程最近,用于编排任务和数据工作流的新工具激增(有时称为“MLOps”)。这些工具的数量众多,使得选择正确的工具成为一个难题,因此我们决定将一些最受欢迎的工具进行对比。总体而言,Apache Airflow既是最受欢迎的工具,也是功能最广泛的工具,但是Luigi等类似的工具,上手起来比较简单。Argo是团队已经在使用Kubernetes时经常使用的一种,而Kubeflow和MLFlow满足了与部署机器学习模型和跟踪实验有关的更多利基需求。在进行详细比较之前,先了解一些涉及到任务编排原创 2020-11-30 08:58:06 · 8199 阅读 · 0 评论 -
数据库入门:如何选择SQL和NoSQL数据库
数据是数据科学所有子领域的基础。无论您要建造的产品用途如何,都需要获取和分析数据。通常,您需要的这些数据存储在DBMS(数据库管理系统)中。本文来自《数据黑客》,登录官网可阅读更多精彩资讯和文章。要与DBMS进行交互和通信,您需要使用其语言或它可以理解的语言。与DBMS进行交互的语言是SQL(结构化查询语言)。近年来,在数据库领域出现了另一个术语,即NoSQL数据库。如果您刚开始学习数据科学,则可能听说过SQL和NoSQL数据库。但是,它们之间有什么区别以及何时使用它们?让我们从最简单的知识开始,原创 2020-11-25 07:05:02 · 353 阅读 · 0 评论 -
数据科学家要掌握的高级SQL
本文介绍了一些技巧,这些技巧一旦掌握,就可以为用户提供处理各种数据类型的工具。本文不涉及及与数据库管理有关的任何内容,例如表创建或架构。如果您想继续,可以[在此处](https://adam-shafi.medium.com/easiest-local-sql-server-a8e9b067c01b)使用SQLite设置本地SQL Server。本文来自《数据黑客》,登录官网可阅读更多精彩资讯和文章。内容导航:探索示例数据JOIN充当过滤器Self JoinsCASE WHEN子查询公原创 2020-11-23 08:39:11 · 154 阅读 · 0 评论 -
数据工程指南高级技能:存储
在之前的文章中,我们探讨了数据工程的入门知识和基础技能,接下来继续探讨高级技能。数据工程指南系列:《数据工程指南:初学者入门》《数据工程指南:基础技能》《数据工程指南高级技能:如何选择数据平台》《数据工程指南高级技能:Hadoop平台》《数据工程指南高级技能:连接和缓存》《数据工程指南高级技能:处理框架》原文来源于Github开源项目《The Data Engineering Cookback》作者:Andreas Kretz感兴趣可以查看:Data Engineering Coo原创 2020-11-13 10:05:31 · 173 阅读 · 0 评论 -
数据工程指南高级技能:处理框架
在之前的文章中,我们探讨了数据工程的入门知识和基础技能,接下来继续探讨高级技能。数据工程指南系列:《数据工程指南:初学者入门》《数据工程指南:基础技能》《数据工程指南高级技能:如何选择数据平台》《数据工程指南高级技能:Hadoop平台》《数据工程指南高级技能:连接和缓存》原文来源于Github开源项目《The Data Engineering Cookback》作者:Andreas Kretz感兴趣可以查看:Data Engineering CookbookLambda和Kappa架原创 2020-11-12 09:56:36 · 217 阅读 · 0 评论 -
数据工程指南高级技能:连接和缓冲器
在之前的文章中,我们介绍了数据工程的入门知识和基础技能,接下来继续探讨高级技能。数据工程指南系列:《数据工程指南:初学者入门》《数据工程指南:基础技能》《数据工程指南高级技能:如何选择数据平台》《数据工程指南高级技能:Hadoop平台》原文来源于Github开源项目《The Data Engineering Cookback》作者:Andreas Kretz感兴趣可以查看:Data Engineering Cookbook连接REST APIAPI:即应用程序接口(Applicat原创 2020-10-30 10:07:23 · 150 阅读 · 0 评论 -
数据工程指南高级技能:Hadoop平台
当人们谈论大数据时,首先想到的是Hadoop。如果你用谷歌搜索Hadoop,大约会返回2800万个结果。今天我要告诉大家为什么Hadoop如此流行。Hadoop已经从一个平台发展成一个生态系统,它的设计允许很多Apache项目和第三方工具从Hadoop中受益。在之前的文章中,我们探讨了入门知识和基础技能,接下来继续探讨高级技能。系列文章:《数据工程指南:初学者入门》《数据工程指南:基础技能》《数据工程指南高级技能:如何选择数据平台》原文来源于Github开源项目《The Data Engi原创 2020-10-28 09:54:17 · 218 阅读 · 0 评论 -
数据工程指南高级技能:如何选择数据平台
数据工程指南:教大家如何成为优秀的数据工程师。在之前的文章中,我们探讨了入门知识和基础技能,接下来深入介绍高级技能。系列文章:《数据工程指南:初学者入门》《数据工程指南:基础技能》原文来源于Github开源项目《The Data Engineering Cookback》作者:Andreas Kretz感兴趣可以查看:Data Engineering Cookbook为什么需要一个好的数据平台?我在这个视频教程中谈到了数据平台的重要性:从数据工程师的角度看数据科学项目大数据 vs 数原创 2020-10-27 09:57:30 · 194 阅读 · 0 评论 -
数据工程指南:基础技能
在上一篇文章中,我们探讨了数据工程的入门知识,包括数据科学家和数据工程师的区别,以及完整的数据工程蓝图,接下来我们介绍数据工程师应该具备哪些基础技能。原文来源于Github开源项目《The Data Engineering Cookback》作者:Andreas Kretz感兴趣可以查看:Data Engineering Cookbook学会编程为什么这很重要:没有代码,你无法完成数据工程的任务。可能性是无穷的:从SQL数据库中写入和读取数据将消息写入Kafka主题了解Java We原创 2020-10-26 09:59:41 · 477 阅读 · 1 评论 -
数据工程指南:初学者入门
别人经常问我,如何成为一名优秀的数据工程师?你会在这份指南中找到答案。如果你正在寻找人工智能算法或类似的学习资料,这些内容不适合你。如何使用这份指南:这本书是你的起点,而不是训练!我想帮助您确定要研究的主题,并在此过程中成为一名出色的数据工程师。我会介绍数据科学平台每个关键领域的工具(连接、缓冲区、处理框架、存储、可视化),选择一些你感兴趣的工具,研究并使用它们。原文来源于Github开源项目《The Data Engineering Cookback》作者:Andreas Kretz感兴趣原创 2020-10-24 08:53:23 · 1500 阅读 · 1 评论 -
新手入门指南:如何构建数据仓库和管道
构建数据仓库(data warehouse)和数据管道(data pipelines)是非常复杂的事情,如果你进入数据工程的世界,很快就会发现没有完全正确或错误的方法,如何创建取决于项目需求。然而在构建数据管道时,应该遵循一些基本流程,这样可以提高数据管道的可操作性和性能。在这篇文章中,我向大家分享一个路线图,作为构建数据仓库和管道的指南。基本概念DataSchool的《Cloud Data Management》是学习构建数据仓库的很好的教程。在这本书中,他们介绍了处理数据的4个阶段,这些阶段是数原创 2020-10-22 09:50:54 · 713 阅读 · 0 评论 -
数据工程师的终极指南
这个年代每个人都想成为数据科学家。但数据工程呢?从本质上讲,它是数据分析师和数据科学家之间的混合体。数据工程师负责管理数据工作流,管道和ETL流程。鉴于这样的功能,市场对数据工程师的需求其实十分巨大,如果您想成为这样的英雄,那么开始学习永远不会太晚。在这篇文章中,我整理了所有必要的信息,以帮助您迈出第一步。什么是数据工程?没有比这更好的解释了:科学家可以发现一颗新星,但他无法制造一颗。他不得不请工程师为他做 - 戈登·林赛·格莱格数据工程与数据相关联,包括数据获取,存储...原创 2020-07-30 13:54:45 · 2295 阅读 · 0 评论