2021/06 4

setting k8s using rke + aws ec2

예전에 https://qkqhxla1.tistory.com/1026 에서 rke(rancher kubernetes engine)환경에서 aws cluster를 추가하는 글을 썼었는데 처음부터 만드는 글이 아니라 단순하게 클러스터 추가와 aws 설정에 초점이 맞추어져있었다. 이번에는 처음에 구성하는 글을 적으려고 한다. 근데 aws를 사용하는데 eks가 아니라 단순히 여러대 있는 서버에 설치하듯이 ec2 ubuntu에 세팅할 예정이다. eks로 세팅하는건 아직 잘 몰라서 익숙한 방법인 이 방법으로 세팅한다. 아마 나중에 eks로 세팅할 일이 있으면 다시 글을 적을것 같다. 왠만해서는 처음부터 다시 다 세팅할 일이 없는데.... 인증서 관련 장애로 rancher ui가 다 날라가버렸다. 어떻게든 살리려 노력..

data engineering 2021.06.23

leetcode 617(트리) 1351(구현), 1104(트리), 1472(구현)

617 https://leetcode.com/problems/merge-two-binary-trees/ 재귀 연습하기 좋은 기초문제다. 이런 비슷한 문제를 앞에서 여러번 풀어봤지만 그래도 좋다고 생각해서 가져온다.. class Solution(object): def mergeTrees(self, t1, t2): if not t1 or not t2: # 둘중 하나가 없으면 있는 노드 리턴 return t1 or t2 node = TreeNode(t1.val + t2.val) node.left = self.mergeTrees(t1.left, t2.left) node.right = self.mergeTrees(t1.right, t2.right) return node 1351 https://leetcode.co..

python create parquet format for hive, map type column.

1. make parquet file spark를 사용하는 경우 dataframe.write.parquet처럼 간편하게 하면 되니 패스하고, raw python의 경우는 아래처럼 pandas를 사용해서 pandas dataframe으로 만든다음 parquet로 쓴다. https://www.mikulskibartosz.name/how-to-write-parquet-file-in-python/를 참고한다. pandas + pyarrow조합으로 아래처럼 리스트로 잘 구성해준다. import pandas as pd import pyarrow as pa import pyarrow.parquet as pq column_name = ['title', 'age', 'name', 'score'] datalist = [[..

data engineering 2021.06.09

leetcode 1261(트리), 1395(구현), 1829(bit 비트연산)

1261 https://leetcode.com/problems/find-elements-in-a-contaminated-binary-tree/ 이진 트리가 오염되었다고 하고 복구를 먼저 한다음 풀라고 한다. 복구 조건은 루트값은 0부터 시작해서 왼쪽 자식은 2*부모+1, 오른쪽 자식은 2*부모+2이다. init에서 복구하면서 존재하는 값들을 set에 넣어준 후 계산하면된다. class FindElements(object): def __init__(self, root): self.val_set = set() queue = [[root, 0]] while queue: n, n_value = queue.pop(0) n.val = n_value self.val_set.add(n_value) if n.left: ..