Tác giả: N.C.M

Xử lý file text với AWK

Xử lý file text với AWK

Gần đây khi phải xử lý dữ liệu là các file text lớn, AWK đã giúp mình rất nhiều. Vì vậy, mình muốn viết 1 chút về nó, để note lại tham khảo sau này. Vậy, AWK là gì? AWK là một ngôn ngữ lập trình thông dịch (interpreted programming language). Là một công cụ mạnh mẽ và được thiết kế đặc biệt cho việc xử lý dữ liệu text. AWK được đặt tên dựa theo 3 chữ cái đầu tiên của những tác giả, Alfred V. Aho, Peter J. Weinberger, và Brian W. Kernighan. Phiên bản đầu tiên của ... »

Tìm hiểu Hive Complex Types

Tìm hiểu Hive Complex Types

Mở đầu Apache Hive là một kho lưu trữ dữ liệu (data warehouse) giúp xử lý các tập dữ liệu lớn lưu trữ phân tán trên nền tảng Hadoop. Hive dùng SQL nên dễ tiếp cận với đa số mọi người (đã quá quen thuộc với SQL). Trong quá trình làm việc với Hive, chủ yếu mình thường dùng các kiểu dữ liệu cơ bản như Numeric Types Date/Time Types String Types Boolean Types Nhưng, trong dự án gần đây thì mình có dùng đến Complex Types của Hive. Sau đây là 1 vài tóm tắt về nó. I. ... »

Giới thiệu Gradle Build Tool

Giới thiệu Gradle Build Tool

Gradle là gì? Trong quá trình phát triển phần mềm, việc tự động hóa quá trình build và quản lý các thư viện rất quan trọng, nhằm tối ưu hóa công đoạn biên dịch, đóng gói; thuận tiện hơn cho việc phát triển phần mềm. Và Gradle (release version 1.0 năm 2012) là 1 trong những công cụ được nhiều người lựa chọn. Năm 2000, Apache Ant ra đời như là một trong những tool đóng gói hiện đại và nhanh chóng được sử dụng trong các dự án sử dụng ngôn ngữ Java. Ant cho phép nhà phát ... »

Giới thiệu Apache Knox

Giới thiệu Apache Knox

1. Apache Knox Apache Knox Gateway là REST API Getway để tương tác với Apache Hadoop. Nó cung cấp 1 điểm truy cập duy nhất cho tất cả các REST tương tác với các Apache Hadoop cluster. Knox tích hợp với các hệ thống: Identity Management, SSO. 1.1 Luồng bảo mật Knox có thể sử dụng cho cả với Hadoop clusters không thiết lập bảo mật và có thiết lập bảo mật. Hình trên là luồng bảo mật khi ứng dụng Knox vào các cluster thiết lập bảo mật với Kerberos: Knox tích hợp tốt với các giải pháp ... »

Giới thiệu Spark MLLib Association Rules

Giới thiệu Spark MLLib Association Rules

1. MLLib Là một thư viện hữu ích của Apache Spark về Machine Learning. Một số ưu điểm của Spark Nhanh hơn Hadoop MapReduce: dùng memory là 100x lần, dùng disk là 10x lần Dễ dàng sử dụng với Java (7+), Scala (Spark 1.6.1 dùng Scala 2.10), Python (2.6+), R (3.1+) Cung cấp nhiều thư viện: Spark SQL, Spark Streaming, MLLib, GraphX Có thể chạy Spark Standalone mode (https://spark.apache.org/docs/latest/spark-standalone.html) Trên EC2 (Amazon Elastic Compute Cloud – Môi trường điện toán đám mây do Amazon cung cấp) Trên Hadoop (là ... »

Một vài best practice khi tunning Spark

Một vài best practice khi tunning Spark

1. Lựa chọn RDD Operation thích hợp RDD hỗ trợ 2 loại operation: transformation và action. Khi kết hợp các transformation và action khác nhau, có thể cho cùng một kết quả. Tuy nhiên hiệu năng của chúng lại khác nhau, nên việc lựa chọn operation một cách thích hợp có thể cải thiện hiệu năng của chương trình. Sử dụng reduceByKey hoặc aggregateByKey sẽ cho hiệu năng tốt hơn groupByKey Ví dụ với bài toán đếm từ, sau đây là 2 cách dùng groupByKey và reduceByKey val words = Array("one", "two", "two", " ... »

Chương 12: Chuyển các suy nghĩ vào code (Turning Thoughts into Code)

Chương 12: Chuyển các suy nghĩ vào code (Turning Thoughts into Code)

“Bạn chưa thật sự hiểu rõ 1 vấn đề trừ khi bạn có thể giải thích được nó cho bà của mình” — Albert Einstein Khi giải thích một ý tưởng phức tạp cho ai đó, rất dễ dàng gây ra sự nhầm lẫn cho họ với những chi tiết nhỏ nhặt. Có thể giải thích một ý tưởng “bằng Tiếng Anh” cho người hiểu biết ít hơn có thể hiểu là một kỹ năng vô cùng giá trị. Nó đòi hỏi bạn phải chắt lọc những nội dung quan trọng nhất của ý tưởng. Việc này không chỉ giúp người ... »

Wildcard SSL Certificates