加载中…
  
博文
标签:

pyspark

dataframe

window

groupby

分类: 【python与Anaconda科学计算】
  最近钻研较为繁琐的按时间合并问题,接着先前的经验(【总结】PySpark的DataFrame处理方法:增删改差),对于按某几列加按周groupby的需求,pyspark的dataframe可以这么实现:
(合法的时间间隔可以是这样‘1 second’, ‘1 day 12 hours’, ‘2 minutes’。支持的时间类型如下:‘week’, ‘day’, ‘hour’, ‘minute’, ‘second’, ‘millisecond’, ‘microsecond’. 

from pyspark.sql.functions import window

win_monday = window('col1', '1 week', startTime='4 day')
grouped_data = df.groupBy([df.col2, df.col3, df.col4, win_monday])
标签:

springmvc

spring

中文乱码

post

get

分类: 【C、Java与网络编程】
在使用SpringMVC框架的时候,在java程序里面直接用中文字符串返回String类型,会出现中文乱码。而出现乱码还分2种情况,一种是POST请求页面的乱码情况,一种是GET请求页面的乱码情况。

POST情况要想全局处理非常简单,只需要在Spring框架的配置xml文件中添加或修改以下代码即可:
    <mvc:annotation-driven >
        <!-- 消息转换器,添加对文字编码的全局处理,解决中文返回问号的毛病 --> 
        <mvc:message-converters register-defaults="true">
            <bean class="org.springframework.http.converter.StringHttpMessageConverter">
   
标签:

mysql

mysqldump

导出

数据库

分类: 技巧和技术
注意,加-d并不是指定数据库,而是只导出结构不导出数据

1.导出结构不导出数据

mysqldump -d 数据库名 -uroot -p > xxx.sql

2.导出数据不导出结构

mysqldump -t 数据库名 -uroot -p > xxx.sql

3.导出数据和表结构

mysqldump 数据库名 -uroot -p > xxx.sql

4.导出特定表的结构

mysqldump -uroot -p -B数据库名 --table 表名 > xxx.sql
#mysqldump [OPTIONS] database [tables]

——————————————————————————
导入数据:
mysql -u username -ppassword schema_name < somefile.sql

清空某表数据
TRUNCATE TABLE tablename;

更新表:
UPDATE sometable SET some_col='somevalue1' WH
标签:

dbutils

mysqldb

分类: 【python与Anaconda科学计算】
cmd下面先用命令:

pip install mysql-python
如果报错,直接安装编译后的版本吧:



DBUtils的安装,直接使用命令:

pip install DBUtils

—————————————————————————————————————————————

  当在python代码中使用MySQLdb的时候可能会出现“明明执行了插入,但是查看数据库的时候,却发现没有记录”的问题。这就需要我们在python语句之间多加一些代码:

  &n
标签:

peer

connection

mysql

reset

分类: 【环境安装与Linux、win系统】
$ sudo systemctl status mysql.service
● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2017-05-22 23:09:47 PDT; 12s ago
  Process: 5967 ExecStartPost=/usr/share/mysql/mysql-systemd-start post (code=exited, status=0/SUCCESS)
  Process: 5958 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
 Main PID: 5966 (mysqld)
   CGroup: /system.slice/mysql.service
           └─5966 /u
标签:

resample

pandas

版本

分类: 【python与Anaconda科学计算】
  起因是写好的一程序,放到服务器上跑就失败了。搜索网上半天没找着原因。
  pandas有个库可以让一时间序列按周(月或年等)汇总,如进行数据分析的时候,需要将不均匀的时间戳数据按照月来汇总排列,那么就需要用到resample函数。使用resample有个要求,就是dataframe的index要为时间序列类型的。一般的index不是从0到n,就是字符串,那样的话没办法resample。所以我们要这么转换,随便取一列,或者从别的地方给它安插一列时间类型的index,构成时间序列:
time_series = data[['DATE', 'QUANTITY']]
time_list = pd.to_datetime(time_series['DATE'])  # 转换序列为时间序列
time_series = time_series.set_index(time_list)  # 设置时间序列作为行标签
if pd.__version__ >= '0.18.0':
    time_series = time_series.resample('W-SUN').sum()
else:
    time_series = time_series.resample('W-SUN', how='sum')
time_series = tim
标签:

java

jtextpane

图片插入

分类: 【C、Java与网络编程】
其实不需要JEditorPane,Java提供的JTextPane本身就可以实现文字、图片同时插入,并发送。这里界面设计与功能实现分成2个文件来写。界面是用Netbeans画的,里面有2个JTextPane和2个JButton,文件为ImageTextPaneForm.java。功能实现的类为ImageTextPaneController.java:

ImageTextPaneController.java
import java.awt.event.ActionEvent;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JTextPane;
import javax.swing.text.BadLocationException;
标签:

hadoop

java

netbeans

spark

杂谈

分类: 【C、Java与网络编程】
【问题】Spark在windows能跑集群模式吗?
我认为是可以的,但是需要详细了解cmd命令行的写法。目前win下跑spark的单机模式是没有问题的。

【关键点】spark启动机制容易被windows的命令行cmd坑
  1、带空格、奇怪字符的安装路径,cmd不能识别。最典型的坑就是安装在Program Files文件夹下的程序,因为Program和Files之间有个空格,所以cmd竟不能识别。之前就把JDK安装在了Program Files下面,然后启动spark的时候,总是提示我找不到JDK。我明明配置了环境变量了啊?这就是所谓了《已经配置环境变量,spark 仍然找不到Java》的错误问题。至于奇怪的字符,如感叹号!,我经常喜欢用来将重要的文件夹排在最前面,但cmd命令提示符不能识别。

  2、是否需要配置hadoop的路径的问题——答案是需要用HDFS或者yarn就配,不需要用则不需配置。目前大多数的应用场景里面,Spark大规模集群基本安装在Linux服务器上,而自己用windows跑spark的情景,则大多基于学习或者实验性质,如果我们所要读取的数据文件从本地win
标签:

spark

hadoop

pycharm

pyspark

py4j

分类: 【C、Java与网络编程】
'D:\Program files\Anaconda2\python.exe' C:/Users/PycharmProjects/helloworld/spark1.py SPARK_HOME not in os.environ SPARK_JARS_DIR already set== D:\!spark-1.6.2\jars 'set PYTHONHASHSEED=0' 'run spark-class2.cmd' ϵͳ�Ҳ���ָ����·���� Failed to find Spark assembly JAR. You need to build Spark before running this program. Traceback (most recent call last): File 'C:/Users/PycharmProjects/helloworld/spark1.py', line 70, in conf = SparkConf().setAppName(APP_NAME) # .setMaster('spark://10.120.21.80:8032') File 'D:\Program files\Anaconda2\lib\site-packages\pyspark\conf.py', line 104, in __init__ SparkContext._ensure_initialized() File 'D:\Program files\Anaconda2\lib\site-packages\pyspark\context.py', line 245, in _ensure_initialized SparkContext._gateway = gateway or launch_gateway() File 'D:\Pr
标签:

hadoop

java

putty

ssh

分类: 【C、Java与网络编程】
有可能是namenode配置问题,用停止命令发觉如下情况
$ sbin/stop-dfs.sh
Stopping namenodes on [localhost]
localhost: no namenode to stop
localhost: stopping datanode
Stopping secondary namenodes [0.0.0.0]
0.0.0.0: stopping secondarynamenode
最简单的解决办法是重新格式化hdfs:
master2@ubuntu:~/hadoop-2.7.3$ bin/hdfs namenode -format


        执行start-all.sh的时候发现JPS一下namenode没有启动
        每次开机都得重新格式化一下namenode才可以
        其实问题就出在tmp文件,默认的tmp文件每次重新开机会被清空,与此同时namenode的格式化信息就会丢失
        于是我们得重新配置一个tmp文件目录
        首先在home目录下建立一个hadoop_tmp目录
                sudo mkdir ~/ha
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有