- Apache Flink 文档
- 概念
- 数据流编程模型
- 分布式运行时环境
- 教程
- API 教程
- DataStream API 教程
- Setup 教程
- 本地安装教程
- 在 Windows 上运行 Flink
- 例子
- 批处理示例
- 应用开发
- 项目构建设置
- Java 项目模板
- Scala 的项目模板
- 配置依赖关系,连接器,库
- 基础 API 概念
- Scala API 扩展
- Java Lambda 表达式
- Flink DataStream API 编程指南
- 活动时间
- 事件时间/处理时间/摄取时间
- 活动时间和水印
- 状态与容错
- 算子
- DataStream 转换
- 物理分区
- 任务链和资源组
- 流连接器
- 旁路输出
- Python 编程指南(流)Beta
- 测试
- 实验特点
- Flink DataSet API 编程指南
- 数据集转换
- 容错
- 在数据集中压缩数据元
- 迭代
- Python 编程指南 Beta
- 连接器
- Hadoop 兼容性测试版
- 本地执行
- 群集执行
- Table API 和 SQL
- 概念和通用 API
- 流处理概念
- 连接到外部系统
- Table API
- SQL
- 内置函数
- 用户定义的源和接收器
- 用户定义的函数
- SQL 客户端测试版
- 数据类型和序列化
- 为 Flink 程序注册自定义序列化程序
- 管理执行
- 执行配置
- 程序打包和分布式执行
- 并行执行
- 执行计划
- 重启策略
- 类库
- FlinkCEP - Flink 的复杂事件处理
- 风暴兼容性 Beta
- 项目配置
- 执行 Storm 拓扑
- 在 Flink 流程序中嵌入 Storm 算子
- Flink Extensions
- Storm 兼容性示例
- Gelly:Flink Graph API
- 图 API
- FlinkML - Flink 的机器学习
- 最佳实践
- API 迁移指南
- 部署和运营
- 集群和部署
- 独立群集
- YARN 设置
- Mesos 设置
- Kubernetes 设置
- Docker 设置
- 亚马逊网络服务(AWS)
- Google Compute Engine 设置
- 先决条件
- 在 Google Compute Engine 上部署 Flink
- MapR 设置
- Hadoop 集成
- JobManager 高可用性(HA)
- 状态和容错
- 检查点
- 保存点
- 状态后台
- 调整检查点和大状态
- 配置
- 生产准备清单
- 命令行界面
- Scala REPL
- Kerberos 身份验证设置和配置
- SSL 设置
- 文件系统
- 升级应用程序和 Flink 版本
- 调试和监控
- 度量
- 如何使用日志记录
- 历史服务器
- 监控检查点
- 监测背压
- 监控 REST API
- 调试 Windows 和事件时间
- 调试类加载
- 应用程序分析
- 使用 Java Flight Recorder 进行性能分析
- 使用 JITWatch 进行分析
- Flink Development
- 将 Flink 导入 IDE
- 从 Source 建立 Flink
- 内幕
- 组件堆栈
- 数据流容错
- 工作和调度
- 任务生命周期
- 文件系统
- 实现
- 坚持保证
- 更新文件内容
- 覆盖文件
- 线程安全
Gelly:Flink Graph API
Gelly 是 Flink 的 Graph API。它包含一组方法和实用程序,旨在简化 Flink 中图形分析应用程序的开发。在 Gelly 中,可以使用与批处理 API 提供的类似的高级函数来转换和修改图形。Gelly 提供了创建,转换和修改图形的方法,以及图形算法库。
使用 Gelly
冻膜是目前的部分 库 Maven 项目。所有相关的类都位于 org.apache.flink.graph 包中。
将以下依赖项添加到您 pom.xml 使用 Gelly。
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-gelly_2.11</artifactId>
<version>1.7-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-gelly-scala_2.11</artifactId>
<version>1.7-SNAPSHOT</version>
</dependency>
请注意,Gelly 不是二进制发行版的一部分。有关 将 Gelly 库打包到 Flink 用户程序的说明,请参阅 链接 。
其余部分提供了可用方法的说明,并提供了如何使用 Gelly 以及如何将其与 Flink DataSet API 混合的几个示例。
运行 Gelly 示例
Gelly 库 jar 在 opt 目录中的 Flink 发行版 中提供(对于早于 Flink 1.2 的版本,这些可以从 Maven Central 手动下载 )。要运行 Gelly 示例,必须将 flink-gelly (对于 Java)或 flink-gelly-scala (对于 Scala)jar 复制到 Flink 的 lib 目录中。
cp opt/flink-gelly_*.jar lib/
cp opt/flink-gelly-scala_*.jar lib/
Gelly 的示例 jar 包含每个库方法的驱动程序,并在 示例 目录中提供。配置并启动集群后,列出可用的算法类:
./bin/start-cluster.sh
./bin/flink run examples/gelly/flink-gelly-examples_*.jar
Gelly 驱动程序可以生成图形数据或从 CSV 文件读取边缘列表(群集中的每个节点都必须能够访问输入文件)。选择算法时,将显示算法描述,可用输入和输出以及配置。 JaccardIndex 打印用法:
./bin/flink run examples/gelly/flink-gelly-examples_*.jar --algorithm JaccardIndex
显示一百万个顶点图的 图表指标 :
./bin/flink run examples/gelly/flink-gelly-examples_*.jar \
--algorithm GraphMetrics --order directed \
--input RMatGraph --type integer --scale 20 --simplify directed \
--output print
图形的大小由 --scale 和 --edge_factor 参数调整。该 库生成 提供了访问其他配置调整幂律偏移和随机噪声。
示例社交网络数据由 斯坦福网络分析项目提供 。在 COM-LJ 数据集是一个很好的入门尺寸。运行一些算法并在 Flink 的 Web UI 中监控作业进度:
wget -O - http://snap.stanford.edu/data/bigdata/communities/com-lj.ungraph.txt.gz | gunzip -c > com-lj.ungraph.txt
./bin/flink run -q examples/gelly/flink-gelly-examples_*.jar \
--algorithm GraphMetrics --order undirected \
--input CSV --type integer --simplify undirected --input_filename com-lj.ungraph.txt --input_field_delimiter /figure>\t' \
--output print
./bin/flink run -q examples/gelly/flink-gelly-examples_*.jar \
--algorithm ClusteringCoefficient --order undirected \
--input CSV --type integer --simplify undirected --input_filename com-lj.ungraph.txt --input_field_delimiter /figure>\t' \
--output hash
./bin/flink run -q examples/gelly/flink-gelly-examples_*.jar \
--algorithm JaccardIndex \
--input CSV --type integer --simplify undirected --input_filename com-lj.ungraph.txt --input_field_delimiter /figure>\t' \
--output hash
请在用户 邮件列表 或 Flink Jira 上提交函数请求和报告问题。我们欢迎有关新算法和函数以及 代码贡献的建议 。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论