Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
doujutun3207
flink
提交
5030bec4
F
flink
项目概览
doujutun3207
/
flink
与 Fork 源项目一致
从无法访问的项目Fork
通知
24
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
F
flink
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
5030bec4
编写于
7月 14, 2014
作者:
M
Márton Balassi
提交者:
Stephan Ewen
8月 18, 2014
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[streaming] TupleTest removed
上级
63346f7e
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
28 addition
and
111 deletion
+28
-111
flink-addons/flink-streaming/README.md
flink-addons/flink-streaming/README.md
+28
-4
flink-addons/flink-streaming/src/test/java/eu/stratosphere/streaming/api/streamrecord/TupleTest.java
...eu/stratosphere/streaming/api/streamrecord/TupleTest.java
+0
-107
未找到文件。
flink-addons/flink-streaming/README.md
浏览文件 @
5030bec4
...
...
@@ -19,12 +19,36 @@ This tutorial shows how to build Stratosphere Streaming on your own system. Plea
```
git clone https://github.com/stratosphere/stratosphere-streaming.git
cd stratosphere
mvn clean
package
mvn clean
assembly:assembly
```
### Run an example
To run an example counting the frequencies of unique words in the text of Shakespeare's
[
Hamlet
](
http://www.gutenberg.org/cache/epub/1787/pg1787.txt
)
```
git clone https://github.com/stratosphere/stratosphere-streaming.git
cd stratosphere
mvn clean package
java -cp target/stratosphere-streaming-0.5-SNAPSHOT-jar-with-dependencies.jar eu.stratosphere.streaming.examples.wordcount.WordCountLocal
```
## Support
Don’t hesitate to ask!
[
Open an issue
](
https://github.com/stratosphere/stratosphere-streaming/issues/new
)
on Github, if you found a bug or need any help.
The main project also has a
[
mailing list
](
https://groups.google.com/d/forum/stratosphere-dev
)
for both users and developers.
## Fork and Contribute
This is an active open-source project. We are always open to people who want to use the system or contribute to it.
Contact us if you are looking for implementation tasks that fit your skills.
The main project a list of
[
starter jobs
](
https://github.com/stratosphere/stratosphere/wiki/Starter-Jobs
)
in our wiki.
We use the GitHub Pull Request system for the development of Stratosphere. Just open a request if you want to contribute.
### What to contribute
*
Bug reports
*
Bug fixes
*
Documentation
*
Tools that ease the use and development of Stratosphere
*
Well-written Stratosphere jobs
Let us know if you have created a system that uses Stratosphere, so that we can link to you.
flink-addons/flink-streaming/src/test/java/eu/stratosphere/streaming/api/streamrecord/TupleTest.java
已删除
100644 → 0
浏览文件 @
63346f7e
package
eu.stratosphere.streaming.api.streamrecord
;
import
static
org
.
junit
.
Assert
.*;
import
java.io.ByteArrayInputStream
;
import
java.io.ByteArrayOutputStream
;
import
java.io.DataInput
;
import
java.io.DataInputStream
;
import
java.io.DataOutput
;
import
java.io.DataOutputStream
;
import
java.io.IOException
;
import
org.junit.Test
;
import
eu.stratosphere.api.java.tuple.Tuple
;
import
eu.stratosphere.api.java.tuple.Tuple2
;
import
eu.stratosphere.api.java.typeutils.TupleTypeInfo
;
import
eu.stratosphere.api.java.typeutils.TypeInformation
;
import
eu.stratosphere.api.java.typeutils.runtime.TupleSerializer
;
import
eu.stratosphere.pact.runtime.plugable.DeserializationDelegate
;
import
eu.stratosphere.pact.runtime.plugable.SerializationDelegate
;
import
eu.stratosphere.types.StringValue
;
public
class
TupleTest
{
public
Tuple
readTuple
(
DataInput
in
)
throws
IOException
{
StringValue
typeVal
=
new
StringValue
();
typeVal
.
read
(
in
);
// TODO: use Tokenizer
String
[]
types
=
typeVal
.
getValue
().
split
(
","
);
Class
[]
basicTypes
=
new
Class
[
types
.
length
];
for
(
int
i
=
0
;
i
<
types
.
length
;
i
++)
{
try
{
basicTypes
[
i
]
=
Class
.
forName
(
types
[
i
]);
}
catch
(
ClassNotFoundException
e
)
{
// TODO Auto-generated catch block
e
.
printStackTrace
();
}
}
TypeInformation
<?
extends
Tuple
>
typeInfo
=
TupleTypeInfo
.
getBasicTupleTypeInfo
(
basicTypes
);
TupleSerializer
<
Tuple
>
tupleSerializer
=
(
TupleSerializer
<
Tuple
>)
typeInfo
.
createSerializer
();
DeserializationDelegate
<
Tuple
>
dd
=
new
DeserializationDelegate
<
Tuple
>(
tupleSerializer
);
dd
.
setInstance
(
tupleSerializer
.
createInstance
());
dd
.
read
(
in
);
return
dd
.
getInstance
();
}
private
void
writeTuple
(
Tuple
tuple
,
DataOutput
out
)
{
Class
[]
basicTypes
=
new
Class
[
tuple
.
getArity
()];
StringBuilder
basicTypeNames
=
new
StringBuilder
();
for
(
int
i
=
0
;
i
<
basicTypes
.
length
;
i
++)
{
basicTypes
[
i
]
=
tuple
.
getField
(
i
).
getClass
();
basicTypeNames
.
append
(
basicTypes
[
i
].
getName
()
+
","
);
}
TypeInformation
<?
extends
Tuple
>
typeInfo
=
TupleTypeInfo
.
getBasicTupleTypeInfo
(
basicTypes
);
StringValue
typeVal
=
new
StringValue
(
basicTypeNames
.
toString
());
@SuppressWarnings
(
"unchecked"
)
TupleSerializer
<
Tuple
>
tupleSerializer
=
(
TupleSerializer
<
Tuple
>)
typeInfo
.
createSerializer
();
SerializationDelegate
<
Tuple
>
serializationDelegate
=
new
SerializationDelegate
<
Tuple
>(
tupleSerializer
);
serializationDelegate
.
setInstance
(
tuple
);
try
{
typeVal
.
write
(
out
);
serializationDelegate
.
write
(
out
);
}
catch
(
IOException
e
)
{
// TODO Auto-generated catch block
e
.
printStackTrace
();
}
}
@Test
public
void
test
()
{
ByteArrayOutputStream
buff
=
new
ByteArrayOutputStream
();
DataOutputStream
out
=
new
DataOutputStream
(
buff
);
int
num
=
42
;
String
str
=
"above clouds"
;
Tuple2
<
Integer
,
String
>
tuple
=
new
Tuple2
<
Integer
,
String
>(
num
,
str
);
try
{
writeTuple
(
tuple
,
out
);
DataInputStream
in
=
new
DataInputStream
(
new
ByteArrayInputStream
(
buff
.
toByteArray
()));
Tuple2
<
Integer
,
String
>
tupleOut
=
(
Tuple2
<
Integer
,
String
>)
readTuple
(
in
);
assertEquals
(
tupleOut
.
getField
(
0
),
42
);
}
catch
(
IOException
e
)
{
fail
();
e
.
printStackTrace
();
}
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录