Skip to content

Instantly share code, notes, and snippets.

View darrenfu's full-sized avatar
🏠
Working from home

Darren Fu darrenfu

🏠
Working from home
View GitHub Profile
{"lastUpload":"2020-04-11T04:02:35.858Z","extensionVersion":"v3.4.3"}
@darrenfu
darrenfu / apple_store_checker.py
Created April 10, 2020 17:21
iPhone stock detector
#!/usr/bin/python
import sys
import os
class IParser:
def __init__():
pass
def parse(self, doc, out_file):
// Instead of adding argument --files /apache/hbase/conf/hbase-site.xml, just copy `hbase-site.xml` to /apache/spark/conf/
//spark-shell --executor-memory 20g --executor-cores 1 --num-executors 10 --driver-memory 8g --queue $HADOOP_QUEUE --jars $(for x in `ls -1 /apache/hbase/lib/*.jar`; do readlink -f $x; done | paste -s | sed -e 's/\t/,/g')
import java.io.{DataOutputStream, ByteArrayOutputStream}
import org.apache.hadoop.hbase.client.Scan
import org.apache.hadoop.hbase.HBaseConfiguration
import org.apache.hadoop.hbase.io.ImmutableBytesWritable
import org.apache.hadoop.hbase.client.Result
import org.apache.hadoop.hbase.mapreduce.TableInputFormat
import org.apache.hadoop.hbase.util.Base64
set mapred.job.queue.name=hddq-commrce-mktmisc;
set hive.auto.convert.sortmerge.join=true;
set hive.optimize.bucketmapjoin=true;
set hive.optimize.bucketmapjoin.sortedmerge=true;
set hive.auto.convert.sortmerge.join.noconditionaltask=true;
set hive.enforce.bucketing=true;
set hive.enforce.sorting=true;
drop table IF EXISTS pla_bucket_superset;
@darrenfu
darrenfu / codility_CountDiv.java
Created August 21, 2016 08:59
Compute number of integers divisible by k in range [a..b].
class Solution {
public int solution(int A, int B, int K) {
return B == 0 ? 1 : (B / K - (A == 0 ? -1 : (A-1) / K ));
}
}
@darrenfu
darrenfu / codility_MissingInteger.java
Created August 21, 2016 08:36
Find the minimal positive integer not occurring in a given sequence.
// you can also use imports, for example:
import java.util.*;
class Solution {
public int solution(int[] A) {
// search for max integer
int max = 0;
for (int a : A) {
// skip negative integers
if (a <= 0) { continue; }
@darrenfu
darrenfu / SocketConnection.as
Last active July 19, 2016 14:23
To resolve packet fragmentation and reassembly
package {
import flash.errors.IOError;
import flash.events.ErrorEvent;
import flash.events.Event;
import flash.events.IOErrorEvent;
import flash.events.ProgressEvent;
import flash.events.SecurityErrorEvent;
import flash.net.Socket;
import flash.system.Security;
@darrenfu
darrenfu / KafkaFeed.scala
Last active June 26, 2016 01:55 — forked from stefanobaghino/KafkaFeed.scala
Pipe a Kafka consumer to a WebSocket on Play! Framework.
package controllers
import java.util.Properties
import com.typesafe.config.ConfigFactory
import kafka.consumer.{Consumer, ConsumerConfig, ConsumerConnector, Whitelist}
import kafka.serializer.StringDecoder
import play.api.libs.iteratee.{Enumerator, Iteratee}
import play.api.mvc.{Controller, WebSocket}
@darrenfu
darrenfu / install-parallel-centos-6.sh
Created February 17, 2016 05:54 — forked from bzz/install-parallel-centos-6.sh
Install GNU Parallel on CentOS 6
#!/bin/bash
# Install parallel on CentOS 6.
# Assumes you are root. Prefix w/ sudo if not.
cd /etc/yum.repos.d/
#wget http://download.opensuse.org/repositories/home:tange/CentOS_CentOS-5/home:tange.repo
wget http://download.opensuse.org/repositories/home:/tange/CentOS_CentOS-6/home:tange.repo
yum install parallel
// insert
void minHeapUp(int[] arr, int i) {
int j = (i - 1) / 2; // parent index
int tmp = arr[i];
while (j >= 0 && i != 0) {
if (arr[j] <= arr[i]) {
break;
}
arr[i] = arr[j];
i = j;