mapreduce的运行模式?
本地操作模式
该程序被提交给LocalJobRunner,并作为单个进程在本地运行。
2.处理后的数据和输出结果可以在本地文件系统或hdfs上。
3.如何实现本地操作?程序不应该有群集配置文件。
实质是程序中是否有参数conf。
4.本地模式对于调试业务逻辑非常方便,只要你在eclipse/idea中破点。
集群运行模式
1.把mapreduce程序交给yarncluster,分发给很多节点并发执行。
2.处理后的数据和输出结果应该位于hdfs文件系统中。
3.提交集群的实施步骤
把程序做成JAR包,然后在集群的任意一个节点上用hadoop命令启动。
HadoopjarHDFSCli
is怎么查看log日志?
查看方法:
和C语言的输出日志:
1)Java代码使用android.util.Log类的以下五个方法输出程序中的日志:
Log.v()、Log.d()、Log.i()、Log.w()、Log.::函数名#34,#34日期_时间_源文件名_行号_日志信息内容#34)。
2)C代码在程序中输出日志,并使用日志的API函数:
__android_log_write(日志类型宏、日志标记字符串、日志令牌内容字符串)
需要:1。添加local_ldlibs:-l$(sysroot)/usr/lib-llog。
2.*.cadd#includ:。
//Android日志优先级值,按优先级升序排列。
typedef枚举android_LogPriority{
ANDROID_LOG_UNKNOWN0
//仅用于SetMinPriority()
ANDROID_LOG_默认,
安卓_日志_详细,
ANDROID_LOG_DEBUG,
安卓_日志_信息,
ANDROID_LOG_WARN,
安卓_日志_错误,
ANDROID_LOG_FATAL,
//仅适用于SetMinPriority()必须是最后一个
ANDROID_LOG_SILENT,
}android_LogPriority
二、logcat:的使用
Usag:日志目录[选项][过滤器规格]
用法:logcat[选项][筛选器描述]
includ:选项
选项包括:
-s将默认筛选器设置为静默。
比如指定filterspec#39*:s#39
将默认过滤器设置为静音。
例如,将过滤器描述指定为*:,有关详细信息,请参见下面的过滤器描述部分。
-fltfilenamegt记录到文件。
默认为标准输出
将日志输出到文件。
默认为stdout。
-r[ltkbytesgt]每千字节轮换一次日志。
(16如果未指明)。
需要-f
设置环形日志缓冲区的千字节数。
默认值为16。
需要与-f选项一起使用。
-nltcountgt将循环日志的最大数量设置为ltcountgt,默认值为4
设置循环日志缓冲区的最大数量。默认值为4,需要与-r选项一起使用。
-vltformatgt设置日志打印格式,其中ltformatgt是一个of:
设置日志的打印格式。有以下七种主要格式::(不能组合使用)。
简短的
过程
标签
线
生的
时间
线程时间
长的
-c清除(冲洗)the整个日志并退出
清除所有日志并退出。
-d转储日志,然后退出(不要阻塞)
获取所有日志并无阻塞地退出。
-tltcountgt仅打印最近的ltcountgt行(暗示-d)
只打印参数count(必须包括-d)指示的最新行数。
-g获取log#39s环形缓冲区的大小并退出
获取环形缓冲区的大小并退出。
-bltbuffergt请求备用环形缓冲器,#39main#39,#39system#39,#39radio#39或#39events#39。
允许多个b参数,并且结果是交错的。
默认为-bmain-b系统。
请求备用环形缓冲区,例如:main、system、radio、events。
允许多个-b参数,并且结果是交错的。
-bmain-b系统是缺省的。
-B以二进制输出日志
将日志输出到二进制文件。
filterspecs是一系列lttaggt[:pority]
滤镜描述是一系列lttaggt[:优先]。
其中,lttaggt是日志组件标记(或*代表全部)和优先级is:
Tag是eclipse中logcat图形界面中tag的内容(或*表示全部),后面是冒号(:),后面是优先级:
日志类型标识符按优先级降序排列():
1.v-详细详细lt-最低优先级
2.d-d:d#39,lttaggt本身表示lttaggt:v
*表示*:d,孤标签表示标签:v
如果没有在命令行中指定,filterspec将从ANDROID_LOG_TAGS中设置。
如果没有在命令行中详细指定,过滤器规范就是ANDROID_LOG_TAGS结果集。
如果没有找到filterspec,过滤器默认为#39*:I#39
如果没有过滤指令,过滤规范默认为*:I
如果没有用-v指定,格式从ANDROID_PRINTF_LOG设置或默认为#34brief#34
如果没有指定-v格式,将会是ANDROID_PRINTF_LOG或brief格式集。
1)仅输出具有指定标签和类型的日志。
格式:
Adblogcatlt日志标签gt:lt日志类型标识符gtlt日志标签gt:lt日志类型标识符gt...*:。
注:1。可以写多个lt日志标签-gt:lt日志类型标识符gt用空格隔开;
2.最后,它必须是*:,这意味着不应该显示任何其他内容。
例如:
$ADBlogcatdalvikvm:dcheckin:w*:
注:ADBlogcatcheckin*:相当于gtadblogcatcheckin:v*:。
注意:以上命令都没有用-v标记来表示日志格式,即默认为。:Android_printf_log或简要格式集。
2)输出带有指定标签和类型的格式化日志。
注意:以下测试日志内容为:测试日志格式,
也就是eclipse中logcat图形界面中文本中的内容!
1.简要-日志类型/日志标签(流程ID):日志内容
例如:$adblogcat-v简要检查in*:。
I/Checkin(24713):测试日志格式
2.进程日志类型(进程ID)日志内容(日志标签)
例如:$ADBlogcat-vprocesscheckin*:。
I(24713)测试日志格式(签入)
3.标记-日志类型/日志标签:日志内容
例如:$ADBlogcat-vtagcheckin*:。
I/Checkin:测试日志格式
4.线程日志类型(进程ID:线程ID)
比如:$ADBlogcat-vthreadcheckin*:。
我(24713:0x6089)测试日志格式
5.原始日志内容
例如:$ADBlogcat-vrawcheckin*:。
测试日志格式
6.时间-日期呼叫时间日志类型/日志标签(处理ID):日志内容
比如:$ADBlogcat-vtimecheckin*:。
05-2711:25:33.854I/Checkin(24713):测试日志格式
7.线程时间-日期调用时间进程ID线程ID日志类型日志标签:日志内容
例如:$ADBlogcat-vtimecheckin*:。
05-2711:25:33.8542471324713ICheckin:测试日志格式
注意:只有在这种格式下,线程ID才是十进制数。
8.长-[日期调用时间进程ID:线程ID日志类型/日志标签]开关显示日志内容。
比如:$ADBlogcat-vlongcheckin*:。
[05-2711:25:33.85424713:0x6089I/checkin]
测试日志格式