Monthly Archive: 十月 2015

使用rpm升级系统软件

参考链接(鸟哥):http://linux.vbird.org/linux_basic/0520rpm_and_srpm.php#rpmmanager_update

使用 RPM 來升級真是太簡單了!就以 -Uvh 或 -Fvh 來升級即可,而 -Uvh 與 -Fvh 可以用的選項與參數,跟 install 是一樣的。不過, -U 與 -F 的意義還是不太一樣的,基本的差別是這樣的:

-Uvh 後面接的軟體即使沒有安裝過,則系統將予以直接安裝; 若後面接的軟體有安裝過舊版,則系統自動更新至新版;
-Fvh 如果後面接的軟體並未安裝到你的 Linux 系統上,則該軟體不會被安裝;亦即只有已安裝至你 Linux 系統內的軟體會被『升級』!

 

删除软件:rpm -e

遇到有依赖无法删除,建议不要强行删除。检查yum为上策。

 

 

Java并发编程:线程池的使用 executor.shutdown() executor.awaitTermination(7, TimeUnit.DAYS)

参考链接:http://www.cnblogs.com/dolphin0520/p/3932921.html

几个理解的key

  1. 线程池执行实现了Runnable的类,其实是反射调用该类实现的run()函数
  2. 线程池加载所有任务后,可以关闭(不能再添加新的线程任务),等待所有线程执行完后退出。使用以下代码实现

ulimit配置修改

修改配置文件:/etc/security/limits.conf

星号代表全局,针对某个用户的话就把星号改为某用户

全部说明:

 

 

使用spark加载并读取parquet格式的文件——之使用scala版

前言

It has been a long time.

最近有需求读取并测试parquet格式的文件。目前hive、impala、spark等框架均支持parquet。

本文是采用scala接口的spark进行简单的hello world。

进入spark-shell环境

注意:

  1. 输出可以看到这里用的是spark1.3.1
  2. spark-shell自动为你注册了Spark context,该对象名字为:sc。后面直接使用sc对象进行设置。
  3. 看到scala提示符,就意味着可以进行编程测试了。

注册SQLContext并进行配置

步骤:

  1. 使用sc(Spark context)对象注册SQLContext
  2. 使用setConf对SQLContext进行配置
  3. 可配置的参数见:http://spark.apache.org/docs/1.3.1/sql-programming-guide.html#parquet-files
  4. 可配置的参数在1.5.1的最新版本中增加了很多

导入parquet文件

导入文件:

打印parquet文件的schema:

注意:如果sqlContext.setConf(“spark.sql.parquet.binaryAsString”,”false”),则列数据类型将为原始的binary。这里自动进行了转换。

将parquet文件注册为临时表

parquet表的DML操作

执行sql:

遍历结果: